SDL  2.0
SDL_DirectFB_window.h
Go to the documentation of this file.
1 /*
2  Simple DirectMedia Layer
3  Copyright (C) 1997-2019 Sam Lantinga <slouken@libsdl.org>
4 
5  This software is provided 'as-is', without any express or implied
6  warranty. In no event will the authors be held liable for any damages
7  arising from the use of this software.
8 
9  Permission is granted to anyone to use this software for any purpose,
10  including commercial applications, and to alter it and redistribute it
11  freely, subject to the following restrictions:
12 
13  1. The origin of this software must not be misrepresented; you must not
14  claim that you wrote the original software. If you use this software
15  in a product, an acknowledgment in the product documentation would be
16  appreciated but is not required.
17  2. Altered source versions must be plainly marked as such, and must not be
18  misrepresented as being the original software.
19  3. This notice may not be removed or altered from any source distribution.
20 */
21 
22 #ifndef SDL_directfb_window_h_
23 #define SDL_directfb_window_h_
24 
25 #include "SDL_DirectFB_video.h"
26 #include "SDL_DirectFB_WM.h"
27 
28 #define SDL_DFB_WINDOWDATA(win) DFB_WindowData *windata = ((win) ? (DFB_WindowData *) ((win)->driverdata) : NULL)
29 
30 typedef struct _DFB_WindowData DFB_WindowData;
32 {
33  IDirectFBSurface *window_surface; /* window surface */
34  IDirectFBSurface *surface; /* client drawing surface */
35  IDirectFBWindow *dfbwin;
36  IDirectFBEventBuffer *eventbuffer;
37  /* SDL_Window *sdlwin; */
40  DFBRectangle client;
41  DFBDimension size;
42  DFBRectangle restore;
43 
44  /* WM extras */
47  IDirectFBSurface *icon;
48  IDirectFBFont *font;
49  DFB_Theme theme;
50 
51  /* WM moving and sizing */
52  int wm_grab;
53  int wm_lastx;
54  int wm_lasty;
55 };
56 
59  const void *data);
62  SDL_Surface * icon);
63 
72 extern void DirectFB_SetWindowGrab(_THIS, SDL_Window * window, SDL_bool grabbed);
75  struct SDL_SysWMinfo *info);
76 
78 extern int DirectFB_SetWindowOpacity(_THIS, SDL_Window * window, float opacity);
79 
80 #endif /* SDL_directfb_window_h_ */
81 
82 /* vi: set ts=4 sw=4 expandtab: */
_DFB_WindowData::restore
DFBRectangle restore
Definition: SDL_DirectFB_window.h:42
_DFB_WindowData::size
DFBDimension size
Definition: SDL_DirectFB_window.h:41
DirectFB_SetWindowPosition
void DirectFB_SetWindowPosition(_THIS, SDL_Window *window)
SDL_Surface
A collection of pixels used in software blitting.
Definition: SDL_surface.h:70
_DFB_WindowData::is_managed
int is_managed
Definition: SDL_DirectFB_window.h:45
DirectFB_SetWindowGrab
void DirectFB_SetWindowGrab(_THIS, SDL_Window *window, SDL_bool grabbed)
_DFB_WindowData::surface
IDirectFBSurface * surface
Definition: SDL_DirectFB_window.h:34
_DFB_WindowData::next
SDL_Window * next
Definition: SDL_DirectFB_window.h:38
_DFB_WindowData::window_surface
IDirectFBSurface * window_surface
Definition: SDL_DirectFB_window.h:33
SDL_SysWMinfo
Definition: SDL_syswm.h:197
DirectFB_SetWindowOpacity
int DirectFB_SetWindowOpacity(_THIS, SDL_Window *window, float opacity)
_DFB_WindowData::wm_needs_redraw
int wm_needs_redraw
Definition: SDL_DirectFB_window.h:46
DirectFB_CreateWindow
int DirectFB_CreateWindow(_THIS, SDL_Window *window)
DirectFB_SetWindowSize
void DirectFB_SetWindowSize(_THIS, SDL_Window *window)
DirectFB_RaiseWindow
void DirectFB_RaiseWindow(_THIS, SDL_Window *window)
_DFB_WindowData::wm_grab
int wm_grab
Definition: SDL_DirectFB_window.h:52
_DFB_WindowData
Definition: SDL_DirectFB_window.h:31
data
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974
SDL_Window
The type used to identify a window.
Definition: SDL_sysvideo.h:73
_DFB_WindowData::font
IDirectFBFont * font
Definition: SDL_DirectFB_window.h:48
window
EGLSurface EGLNativeWindowType * window
Definition: eglext.h:1025
DirectFB_DestroyWindow
void DirectFB_DestroyWindow(_THIS, SDL_Window *window)
DirectFB_GetWindowWMInfo
SDL_bool DirectFB_GetWindowWMInfo(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
_THIS
#define _THIS
Definition: SDL_alsa_audio.h:31
_DFB_WindowData::theme
DFB_Theme theme
Definition: SDL_DirectFB_window.h:49
_DFB_WindowData::dfbwin
IDirectFBWindow * dfbwin
Definition: SDL_DirectFB_window.h:35
DirectFB_RestoreWindow
void DirectFB_RestoreWindow(_THIS, SDL_Window *window)
_DFB_WindowData::opacity
Uint8 opacity
Definition: SDL_DirectFB_window.h:39
_DFB_WindowData::wm_lastx
int wm_lastx
Definition: SDL_DirectFB_window.h:53
DirectFB_CreateWindowFrom
int DirectFB_CreateWindowFrom(_THIS, SDL_Window *window, const void *data)
_DFB_WindowData::eventbuffer
IDirectFBEventBuffer * eventbuffer
Definition: SDL_DirectFB_window.h:36
_DFB_WindowData::client
DFBRectangle client
Definition: SDL_DirectFB_window.h:40
DirectFB_SetWindowTitle
void DirectFB_SetWindowTitle(_THIS, SDL_Window *window)
_DFB_WindowData::icon
IDirectFBSurface * icon
Definition: SDL_DirectFB_window.h:47
_DFB_WindowData::wm_lasty
int wm_lasty
Definition: SDL_DirectFB_window.h:54
DirectFB_ShowWindow
void DirectFB_ShowWindow(_THIS, SDL_Window *window)
DirectFB_HideWindow
void DirectFB_HideWindow(_THIS, SDL_Window *window)
DirectFB_AdjustWindowSurface
void DirectFB_AdjustWindowSurface(SDL_Window *window)
DirectFB_SetWindowIcon
void DirectFB_SetWindowIcon(_THIS, SDL_Window *window, SDL_Surface *icon)
DirectFB_MaximizeWindow
void DirectFB_MaximizeWindow(_THIS, SDL_Window *window)
DirectFB_MinimizeWindow
void DirectFB_MinimizeWindow(_THIS, SDL_Window *window)
SDL_DirectFB_WM.h
SDL_DirectFB_video.h
SDL_bool
SDL_bool
Definition: SDL_stdinc.h:161
Uint8
uint8_t Uint8
Definition: SDL_stdinc.h:179