SDL_windowswindow.h
Go to the documentation of this file.
/*
Simple DirectMedia Layer
Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
#include "../../SDL_internal.h"
#ifndef SDL_windowswindow_h_
#define SDL_windowswindow_h_
#if SDL_VIDEO_OPENGL_EGL
#include "../SDL_egl_c.h"
#endif
typedef struct
{
SDL_Window *window;
HWND hwnd;
HWND parent;
HDC hdc;
HDC mdc;
HINSTANCE hinstance;
HBITMAP hbm;
WNDPROC wndproc;
SDL_bool created;
WPARAM mouse_button_flags;
SDL_bool initializing;
SDL_bool expected_resize;
SDL_bool in_border_change;
SDL_bool in_title_click;
Uint8 focus_click_pending;
SDL_bool windowed_mode_was_maximized;
SDL_bool in_window_deactivation;
struct SDL_VideoData *videodata;
#if SDL_VIDEO_OPENGL_EGL
EGLSurface egl_surface;
#endif
} SDL_WindowData;
extern int WIN_CreateWindow(_THIS, SDL_Window * window);
extern int WIN_CreateWindowFrom(_THIS, SDL_Window * window, const void *data);
extern void WIN_SetWindowTitle(_THIS, SDL_Window * window);
extern void WIN_SetWindowIcon(_THIS, SDL_Window * window, SDL_Surface * icon);
extern void WIN_SetWindowPosition(_THIS, SDL_Window * window);
extern void WIN_SetWindowSize(_THIS, SDL_Window * window);
extern int WIN_GetWindowBordersSize(_THIS, SDL_Window * window, int *top, int *left, int *bottom, int *right);
extern int WIN_SetWindowOpacity(_THIS, SDL_Window * window, float opacity);
extern void WIN_ShowWindow(_THIS, SDL_Window * window);
extern void WIN_HideWindow(_THIS, SDL_Window * window);
extern void WIN_RaiseWindow(_THIS, SDL_Window * window);
extern void WIN_MaximizeWindow(_THIS, SDL_Window * window);
extern void WIN_MinimizeWindow(_THIS, SDL_Window * window);
extern void WIN_RestoreWindow(_THIS, SDL_Window * window);
extern void WIN_SetWindowBordered(_THIS, SDL_Window * window, SDL_bool bordered);
extern void WIN_SetWindowResizable(_THIS, SDL_Window * window, SDL_bool resizable);
extern void WIN_SetWindowFullscreen(_THIS, SDL_Window * window, SDL_VideoDisplay * display, SDL_bool fullscreen);
extern int WIN_SetWindowGammaRamp(_THIS, SDL_Window * window, const Uint16 * ramp);
extern int WIN_GetWindowGammaRamp(_THIS, SDL_Window * window, Uint16 * ramp);
extern void WIN_SetWindowGrab(_THIS, SDL_Window * window, SDL_bool grabbed);
extern void WIN_DestroyWindow(_THIS, SDL_Window * window);
extern SDL_bool WIN_GetWindowWMInfo(_THIS, SDL_Window * window,
struct SDL_SysWMinfo *info);
extern void WIN_OnWindowEnter(_THIS, SDL_Window * window);
extern void WIN_UpdateClipCursor(SDL_Window *window);
extern int WIN_SetWindowHitTest(SDL_Window *window, SDL_bool enabled);
#endif /* SDL_windowswindow_h_ */
/* vi: set ts=4 sw=4 expandtab: */
SDL_WindowData::hwnd
HWND hwnd
Definition: SDL_windowswindow.h:33
SDL_WindowData::parent
HWND parent
Definition: SDL_windowswindow.h:34
WIN_SetWindowSize
void WIN_SetWindowSize(_THIS, SDL_Window *window)
EGLSurface
void * EGLSurface
Definition: egl.h:59
right
GLdouble GLdouble right
Definition: SDL_opengl_glext.h:6103
SDL_WindowData::hbm
HBITMAP hbm
Definition: SDL_windowswindow.h:38
WIN_RaiseWindow
void WIN_RaiseWindow(_THIS, SDL_Window *window)
SDL_VideoData::display
struct wl_display * display
Definition: SDL_waylandvideo.h:40
WIN_GetWindowGammaRamp
int WIN_GetWindowGammaRamp(_THIS, SDL_Window *window, Uint16 *ramp)
WIN_DestroyWindow
void WIN_DestroyWindow(_THIS, SDL_Window *window)
WIN_GetWindowWMInfo
SDL_bool WIN_GetWindowWMInfo(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
SDL_Surface
A collection of pixels used in software blitting.
Definition: SDL_surface.h:69
WIN_MaximizeWindow
void WIN_MaximizeWindow(_THIS, SDL_Window *window)
SDL_WindowData::expected_resize
SDL_bool expected_resize
Definition: SDL_windowswindow.h:43
bottom
GLint GLint bottom
Definition: SDL_opengl_glext.h:1949
data
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974
SDL_WindowData::hdc
HDC hdc
Definition: SDL_windowswindow.h:35
top
GLdouble GLdouble GLdouble GLdouble top
Definition: SDL_opengl_glext.h:6103
WIN_OnWindowEnter
void WIN_OnWindowEnter(_THIS, SDL_Window *window)
SDL_WindowData::initializing
SDL_bool initializing
Definition: SDL_windowswindow.h:42
WIN_SetWindowPosition
void WIN_SetWindowPosition(_THIS, SDL_Window *window)
SDL_WindowData
Definition: SDL_androidwindow.h:35
WIN_SetWindowHitTest
int WIN_SetWindowHitTest(SDL_Window *window, SDL_bool enabled)
WIN_CreateWindow
int WIN_CreateWindow(_THIS, SDL_Window *window)
SDL_WindowData::windowed_mode_was_maximized
SDL_bool windowed_mode_was_maximized
Definition: SDL_windowswindow.h:47
SDL_WindowData::in_border_change
SDL_bool in_border_change
Definition: SDL_windowswindow.h:44
SDL_SysWMinfo
Definition: SDL_syswm.h:194
WIN_SetWindowResizable
void WIN_SetWindowResizable(_THIS, SDL_Window *window, SDL_bool resizable)
SDL_WindowData::wndproc
WNDPROC wndproc
Definition: SDL_windowswindow.h:39
WIN_MinimizeWindow
void WIN_MinimizeWindow(_THIS, SDL_Window *window)
_THIS
#define _THIS
Definition: SDL_alsa_audio.h:31
Uint8
uint8_t Uint8
Definition: SDL_stdinc.h:157
WIN_SetWindowOpacity
int WIN_SetWindowOpacity(_THIS, SDL_Window *window, float opacity)
WIN_SetWindowIcon
void WIN_SetWindowIcon(_THIS, SDL_Window *window, SDL_Surface *icon)
WIN_ShowWindow
void WIN_ShowWindow(_THIS, SDL_Window *window)
WIN_UpdateClipCursor
void WIN_UpdateClipCursor(SDL_Window *window)
WIN_RestoreWindow
void WIN_RestoreWindow(_THIS, SDL_Window *window)
enabled
GLenum GLenum GLsizei const GLuint GLboolean enabled
Definition: SDL_opengl_glext.h:2479
SDL_VideoDisplay
Definition: SDL_sysvideo.h:125
WIN_SetWindowGammaRamp
int WIN_SetWindowGammaRamp(_THIS, SDL_Window *window, const Uint16 *ramp)
SDL_bool
SDL_bool
Definition: SDL_stdinc.h:139
SDL_WindowData::mdc
HDC mdc
Definition: SDL_windowswindow.h:36
WIN_SetWindowTitle
void WIN_SetWindowTitle(_THIS, SDL_Window *window)
window
EGLSurface EGLNativeWindowType * window
Definition: eglext.h:1025
WIN_SetWindowGrab
void WIN_SetWindowGrab(_THIS, SDL_Window *window, SDL_bool grabbed)
SDL_Window
The type used to identify a window.
Definition: SDL_sysvideo.h:73
WIN_SetWindowFullscreen
void WIN_SetWindowFullscreen(_THIS, SDL_Window *window, SDL_VideoDisplay *display, SDL_bool fullscreen)
SDL_WindowData::hinstance
HINSTANCE hinstance
Definition: SDL_windowswindow.h:37
SDL_VideoData
Definition: SDL_androidvideo.h:35
Uint16
uint16_t Uint16
Definition: SDL_stdinc.h:169
SDL_WindowData::in_window_deactivation
SDL_bool in_window_deactivation
Definition: SDL_windowswindow.h:48
WIN_SetWindowBordered
void WIN_SetWindowBordered(_THIS, SDL_Window *window, SDL_bool bordered)
WIN_GetWindowBordersSize
int WIN_GetWindowBordersSize(_THIS, SDL_Window *window, int *top, int *left, int *bottom, int *right)
WIN_CreateWindowFrom
int WIN_CreateWindowFrom(_THIS, SDL_Window *window, const void *data)
WIN_HideWindow
void WIN_HideWindow(_THIS, SDL_Window *window)
SDL_WindowData::mouse_button_flags
WPARAM mouse_button_flags
Definition: SDL_windowswindow.h:41
SDL_WindowData::in_title_click
SDL_bool in_title_click
Definition: SDL_windowswindow.h:45
SDL_WindowData::focus_click_pending
Uint8 focus_click_pending
Definition: SDL_windowswindow.h:46
left
GLint left
Definition: SDL_opengl_glext.h:1949