Mercurial > sdl-ios-xcode
view src/video/maccommon/SDL_lowvideo.h @ 1635:92947e3a18db
Make sure code is only compiled if the appropriate subsystem is enabled
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Fri, 14 Apr 2006 04:46:47 +0000 |
parents | 0801c9fdbdd6 |
children | 782fd950bd46 a1b03ba2fcd0 |
line wrap: on
line source
/* SDL - Simple DirectMedia Layer Copyright (C) 1997-2006 Sam Lantinga This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Sam Lantinga slouken@libsdl.org */ #include "SDL_config.h" #ifndef _SDL_lowvideo_h #define _SDL_lowvideo_h #if defined(__APPLE__) && defined(__MACH__) #include <Carbon/Carbon.h> #elif TARGET_API_MAC_CARBON && (UNIVERSAL_INTERFACES_VERSION > 0x0335) #include <Carbon.h> #else #include <Quickdraw.h> #include <Palettes.h> #include <Menus.h> #include <DrawSprocket.h> #endif #if SDL_VIDEO_OPENGL typedef struct __AGLContextRec *AGLContext; #endif #include "SDL_video.h" #include "../SDL_sysvideo.h" /* Hidden "this" pointer for the video functions */ #define _THIS SDL_VideoDevice *this #if !TARGET_API_MAC_CARBON /* not available in OS X (or more accurately, Carbon) */ /* Global QuickDraw data */ extern QDGlobals *theQD; #endif /* Private display data */ struct SDL_PrivateVideoData { GDevice **SDL_Display; WindowRef SDL_Window; SDL_Rect **SDL_modelist; CTabHandle SDL_CTab; PaletteHandle SDL_CPal; #if TARGET_API_MAC_CARBON /* For entering and leaving fullscreen mode */ Ptr fullscreen_ctx; #endif /* The current window document style */ int current_style; /* Information about the last cursor position */ Point last_where; /* Information about the last keys down */ EventModifiers last_mods; KeyMap last_keys; /* A handle to the Apple Menu */ MenuRef apple_menu; /* Information used by DrawSprocket driver */ struct DSpInfo *dspinfo; #if SDL_VIDEO_OPENGL AGLContext appleGLContext; void *libraryHandle; #endif }; /* Old variable names */ #define SDL_Display (this->hidden->SDL_Display) #define SDL_Window (this->hidden->SDL_Window) #define SDL_modelist (this->hidden->SDL_modelist) #define SDL_CTab (this->hidden->SDL_CTab) #define SDL_CPal (this->hidden->SDL_CPal) #define fullscreen_ctx (this->hidden->fullscreen_ctx) #define current_style (this->hidden->current_style) #define last_where (this->hidden->last_where) #define last_mods (this->hidden->last_mods) #define last_keys (this->hidden->last_keys) #define apple_menu (this->hidden->apple_menu) #define glContext (this->hidden->appleGLContext) #endif /* _SDL_lowvideo_h */