SDL  2.0
SDL_windowswindow.h
Go to the documentation of this file.
1 /*
2  Simple DirectMedia Layer
3  Copyright (C) 1997-2020 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 #include "../../SDL_internal.h"
22 
23 #ifndef SDL_windowswindow_h_
24 #define SDL_windowswindow_h_
25 
26 #if SDL_VIDEO_OPENGL_EGL
27 #include "../SDL_egl_c.h"
28 #endif
29 
30 typedef struct
31 {
33  HWND hwnd;
34  HWND parent;
35  HDC hdc;
36  HDC mdc;
37  HINSTANCE hinstance;
38  HBITMAP hbm;
39  WNDPROC wndproc;
40  SDL_bool created;
51  struct SDL_VideoData *videodata;
52 #if SDL_VIDEO_OPENGL_EGL
53  EGLSurface egl_surface;
54 #endif
56 
58 extern int WIN_CreateWindowFrom(_THIS, SDL_Window * window, const void *data);
60 extern void WIN_SetWindowIcon(_THIS, SDL_Window * window, SDL_Surface * icon);
63 extern int WIN_GetWindowBordersSize(_THIS, SDL_Window * window, int *top, int *left, int *bottom, int *right);
64 extern int WIN_SetWindowOpacity(_THIS, SDL_Window * window, float opacity);
65 extern void WIN_ShowWindow(_THIS, SDL_Window * window);
66 extern void WIN_HideWindow(_THIS, SDL_Window * window);
67 extern void WIN_RaiseWindow(_THIS, SDL_Window * window);
71 extern void WIN_SetWindowBordered(_THIS, SDL_Window * window, SDL_bool bordered);
72 extern void WIN_SetWindowResizable(_THIS, SDL_Window * window, SDL_bool resizable);
74 extern int WIN_SetWindowGammaRamp(_THIS, SDL_Window * window, const Uint16 * ramp);
75 extern int WIN_GetWindowGammaRamp(_THIS, SDL_Window * window, Uint16 * ramp);
76 extern void WIN_SetWindowGrab(_THIS, SDL_Window * window, SDL_bool grabbed);
79  struct SDL_SysWMinfo *info);
83 extern void WIN_AcceptDragAndDrop(SDL_Window * window, SDL_bool accept);
84 
85 #endif /* SDL_windowswindow_h_ */
86 
87 /* vi: set ts=4 sw=4 expandtab: */
WIN_CreateWindow
int WIN_CreateWindow(_THIS, SDL_Window *window)
WIN_DestroyWindow
void WIN_DestroyWindow(_THIS, SDL_Window *window)
SDL_WindowData::hinstance
HINSTANCE hinstance
Definition: SDL_windowswindow.h:37
right
GLdouble GLdouble right
Definition: SDL_opengl_glext.h:6106
WIN_HideWindow
void WIN_HideWindow(_THIS, SDL_Window *window)
SDL_Surface
A collection of pixels used in software blitting.
Definition: SDL_surface.h:70
WIN_RestoreWindow
void WIN_RestoreWindow(_THIS, SDL_Window *window)
SDL_WindowData::mdc
HDC mdc
Definition: SDL_windowswindow.h:36
WIN_UpdateClipCursor
void WIN_UpdateClipCursor(SDL_Window *window)
WIN_SetWindowResizable
void WIN_SetWindowResizable(_THIS, SDL_Window *window, SDL_bool resizable)
SDL_SysWMinfo
Definition: SDL_syswm.h:201
WIN_SetWindowFullscreen
void WIN_SetWindowFullscreen(_THIS, SDL_Window *window, SDL_VideoDisplay *display, SDL_bool fullscreen)
SDL_WindowData
Definition: SDL_androidwindow.h:38
SDL_WindowData::initializing
SDL_bool initializing
Definition: SDL_windowswindow.h:42
SDL_WindowData::in_border_change
SDL_bool in_border_change
Definition: SDL_windowswindow.h:44
top
GLdouble GLdouble GLdouble GLdouble top
Definition: SDL_opengl_glext.h:6106
SDL_WindowData::skip_update_clipcursor
SDL_bool skip_update_clipcursor
Definition: SDL_windowswindow.h:47
SDL_WindowData::in_title_click
SDL_bool in_title_click
Definition: SDL_windowswindow.h:45
SDL_WindowData::wndproc
WNDPROC wndproc
Definition: SDL_windowswindow.h:39
bottom
GLint GLint bottom
Definition: SDL_opengl_glext.h:1952
SDL_WindowData::parent
HWND parent
Definition: SDL_windowswindow.h:34
WIN_SetWindowGammaRamp
int WIN_SetWindowGammaRamp(_THIS, SDL_Window *window, const Uint16 *ramp)
WIN_GetWindowBordersSize
int WIN_GetWindowBordersSize(_THIS, SDL_Window *window, int *top, int *left, int *bottom, int *right)
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:74
WIN_SetWindowTitle
void WIN_SetWindowTitle(_THIS, SDL_Window *window)
WIN_SetWindowGrab
void WIN_SetWindowGrab(_THIS, SDL_Window *window, SDL_bool grabbed)
SDL_WindowData::hbm
HBITMAP hbm
Definition: SDL_windowswindow.h:38
window
EGLSurface EGLNativeWindowType * window
Definition: eglext.h:1025
SDL_WindowData::windowed_mode_was_maximized
SDL_bool windowed_mode_was_maximized
Definition: SDL_windowswindow.h:48
WIN_SetWindowBordered
void WIN_SetWindowBordered(_THIS, SDL_Window *window, SDL_bool bordered)
WIN_CreateWindowFrom
int WIN_CreateWindowFrom(_THIS, SDL_Window *window, const void *data)
WIN_SetWindowSize
void WIN_SetWindowSize(_THIS, SDL_Window *window)
Uint16
uint16_t Uint16
Definition: SDL_stdinc.h:191
WIN_GetWindowGammaRamp
int WIN_GetWindowGammaRamp(_THIS, SDL_Window *window, Uint16 *ramp)
WIN_SetWindowHitTest
int WIN_SetWindowHitTest(SDL_Window *window, SDL_bool enabled)
_THIS
#define _THIS
Definition: SDL_alsa_audio.h:31
WIN_MaximizeWindow
void WIN_MaximizeWindow(_THIS, SDL_Window *window)
WIN_GetWindowWMInfo
SDL_bool WIN_GetWindowWMInfo(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
SDL_WindowData::hdc
HDC hdc
Definition: SDL_windowswindow.h:35
SDL_WindowData::cursor_clipped_rect
RECT cursor_clipped_rect
Definition: SDL_windowswindow.h:50
WIN_MinimizeWindow
void WIN_MinimizeWindow(_THIS, SDL_Window *window)
WIN_SetWindowOpacity
int WIN_SetWindowOpacity(_THIS, SDL_Window *window, float opacity)
SDL_VideoData::display
struct wl_display * display
Definition: SDL_waylandvideo.h:50
WIN_SetWindowIcon
void WIN_SetWindowIcon(_THIS, SDL_Window *window, SDL_Surface *icon)
SDL_VideoDisplay
Definition: SDL_sysvideo.h:126
WIN_RaiseWindow
void WIN_RaiseWindow(_THIS, SDL_Window *window)
SDL_WindowData::in_window_deactivation
SDL_bool in_window_deactivation
Definition: SDL_windowswindow.h:49
left
GLint left
Definition: SDL_opengl_glext.h:1952
WIN_AcceptDragAndDrop
void WIN_AcceptDragAndDrop(SDL_Window *window, SDL_bool accept)
enabled
GLenum GLenum GLsizei const GLuint GLboolean enabled
Definition: SDL_opengl_glext.h:2482
SDL_WindowData::expected_resize
SDL_bool expected_resize
Definition: SDL_windowswindow.h:43
EGLSurface
void * EGLSurface
Definition: egl.h:59
SDL_WindowData::hwnd
HWND hwnd
Definition: SDL_windowswindow.h:33
SDL_WindowData::focus_click_pending
Uint8 focus_click_pending
Definition: SDL_windowswindow.h:46
WIN_SetWindowPosition
void WIN_SetWindowPosition(_THIS, SDL_Window *window)
WIN_ShowWindow
void WIN_ShowWindow(_THIS, SDL_Window *window)
WIN_OnWindowEnter
void WIN_OnWindowEnter(_THIS, SDL_Window *window)
SDL_VideoData
Definition: SDL_androidvideo.h:36
SDL_bool
SDL_bool
Definition: SDL_stdinc.h:161
SDL_WindowData::mouse_button_flags
WPARAM mouse_button_flags
Definition: SDL_windowswindow.h:41
Uint8
uint8_t Uint8
Definition: SDL_stdinc.h:179