SDL_video.h
Enumerado SDL_WindowFlags
typedef enum { SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */ SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */ SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */ SDL_WINDOW_HIDDEN = 0x00000008, /**< window is not visible */ SDL_WINDOW_BORDERLESS = 0x00000010, /**< no window decoration */ SDL_WINDOW_RESIZABLE = 0x00000020, /**< window can be resized */ SDL_WINDOW_MINIMIZED = 0x00000040, /**< window is minimized */ SDL_WINDOW_MAXIMIZED = 0x00000080, /**< window is maximized */ SDL_WINDOW_MOUSE_GRABBED = 0x00000100, /**< window has grabbed mouse input */ SDL_WINDOW_INPUT_FOCUS = 0x00000200, /**< window has input focus */ SDL_WINDOW_MOUSE_FOCUS = 0x00000400, /**< window has mouse focus */ SDL_WINDOW_FULLSCREEN_DESKTOP = ( SDL_WINDOW_FULLSCREEN | 0x00001000 ), SDL_WINDOW_FOREIGN = 0x00000800, /**< window not created by SDL */ SDL_WINDOW_ALLOW_HIGHDPI = 0x00002000, /**< window should be created in high-DPI mode if supported. On macOS NSHighResolutionCapable must be set true in the application's Info.plist for this to have any effect. */ SDL_WINDOW_MOUSE_CAPTURE = 0x00004000, /**< window has mouse captured (unrelated to MOUSE_GRABBED) */ SDL_WINDOW_ALWAYS_ON_TOP = 0x00008000, /**< window should always be above others */ SDL_WINDOW_SKIP_TASKBAR = 0x00010000, /**< window should not be added to the taskbar */ SDL_WINDOW_UTILITY = 0x00020000, /**< window should be treated as a utility window */ SDL_WINDOW_TOOLTIP = 0x00040000, /**< window should be treated as a tooltip */ SDL_WINDOW_POPUP_MENU = 0x00080000, /**< window should be treated as a popup menu */ SDL_WINDOW_KEYBOARD_GRABBED = 0x00100000, /**< window has grabbed keyboard input */ SDL_WINDOW_VULKAN = 0x10000000, /**< window usable for Vulkan surface */ SDL_WINDOW_METAL = 0x20000000, /**< window usable for Metal view */ SDL_WINDOW_INPUT_GRABBED = SDL_WINDOW_MOUSE_GRABBED /**< equivalent to SDL_WINDOW_MOUSE_GRABBED for compatibility */ } SDL_WindowFlags;
Valores
Bandera | Significado |
---|---|
SDL_WINDOW_FULLSCREEN | Ventana de pantalla completa. |
SDL_WINDOW_FULLSCREEN_DESKTOP | Ventana de pantalla completa con la resolución de escritorio actual. |
SDL_WINDOW_OPENGL | Ventana usable con el contexto OpenGL |
SDL_WINDOW_VULKAN | Ventana usable con una instancia Vulkan. |
SDL_WINDOW_SHOWN | La ventana es visible |
SDL_WINDOW_HIDDEN | La ventana no es visible. |
SDL_WINDOW_BORDERLESS | Ventana si decoración. |
SDL_WINDOW_RESIZABLE | La ventana puede cambiarse de tamaño. |
SDL_WINDOW_MINIMIZED | La ventana está minimizada. |
SDL_WINDOW_MAXIMIZED | La ventana está maximizada. |
SDL_WINDOW_INPUT_GRABBED | La ventana ha obtenido el foco de entrada. |
SDL_WINDOW_INPUT_FOCUS | La ventana tiene el foco de entrada. |
SDL_WINDOW_MOUSE_FOCUS | La ventana tiene el foco del ratón. |
SDL_WINDOW_FOREIGN | La ventana no fue creada por SLD. |
SDL_WINDOW_ALLOW_HIGHDPI | La ventana debe ser creada en modo high-DPI si está soportado (>= SDL 2.0.1) |
SDL_WINDOW_MOUSE_CAPTURE | La ventana tiene capturado el ratón (sin relación con INPUT_GRABBED, >= SDL 2.0.4) |
SDL_WINDOW_ALWAYS_ON_TOP | La ventana se muestra siempre sobre cualquier otra (solo X11, >= SDL 2.0.5) |
SDL_WINDOW_SKIP_TASKBAR | La ventana no debe ser añadida a la barra de tareas (solo X11, >= SDL 2.0.5) |
SDL_WINDOW_UTILITY | La ventana debe ser tratada como ventana de utilidad (solo X11, >= SDL 2.0.5) |
SDL_WINDOW_TOOLTIP | La ventana debe ser tratada como una tooltip (solo X11, >= SDL 2.0.5) |
SDL_WINDOW_POPUP_MENU | La ventana debe ser tratada como un menú popup (solo X11, >= SDL 2.0.5) |
Ejemplo
Uint32 flags = SDL_WINDOW_OPENGL | SDL_WINDOW_FULLSCREEN; SDL_Window * window = SDL_CreateWindow( /* ... */ flags );
Observaciones
La bandera SDL_WINDOW_OPENGL prepara la ventana para ser usada con OpenGL, pero aún necesitará crear un contexto OpenGL usando SDL_GL_CreateContext() después de la creación de la ventana, antes de llamar a cualquier función OpenGL.
En OS X de Apple se debe establecer la propiedad NSHighResolutionCapable Info.plist a YES, de lo contrario no recibirá un lienzo OpenGL de alta resolución (High DPI).