35#import <Quartz/Quartz.h>
38#define MINIMUM_GAME_TICK 0.25
41#define MINIMUM_ANIMATION_TICK 0.0041667
49#define OO_USE_FULLSCREEN_CONTROLLER OOLITE_MAC_OS_X
88#if OO_USE_FULLSCREEN_CONTROLLER
96 unsigned int width, height;
99 NSDictionary *originalDisplayMode;
100 NSDictionary *fullscreenDisplayMode;
102 BOOL stayInFullScreenMode;
103 BOOL _finishedLaunching;
109- (void) applicationDidFinishLaunching:(NSNotification *)notification;
110- (BOOL) finishedLaunching;
112- (BOOL) isGamePaused;
113- (void) setGamePaused:(BOOL)value;
124- (void) setEcoQoS: (BOOL)efficiencyModeRequested;
128- (void) setMouseInteractionModeForFlight;
129- (void) setMouseInteractionModeForUIWithMouseInteraction:(BOOL)interaction;
131- (void) performGameTick:(
id)sender;
134- (IBAction) showLogAction:(
id)sender;
135- (IBAction) showLogFolderAction:(
id)sender;
136- (IBAction) showSnapshotsAction:(
id)sender;
137- (IBAction) showAddOnsAction:(
id)sender;
138- (void) recenterVirtualJoystick;
141- (void) exitAppWithContext:(NSString *)context;
142- (void) exitAppCommandQ;
144- (NSString *) playerFileToLoad;
145- (void) setPlayerFileToLoad:(NSString *)filename;
147- (NSString *) playerFileDirectory;
148- (void) setPlayerFileDirectory:(NSString *)filename;
150- (void) loadPlayerIfRequired;
152- (void) beginSplashScreen;
153- (void) logProgress:(NSString *)message;
155- (void) debugLogProgress:(NSString *)format, ... OO_TAKES_FORMAT_STRING(1, 2);
156- (void) debugLogProgress:(NSString *)format arguments:(va_list)arguments OO_TAKES_FORMAT_STRING(1, 0);
157- (void) debugPushProgressMessage:(NSString *)format, ... OO_TAKES_FORMAT_STRING(1, 2);
158- (void) debugPopProgressMessage;
160- (void) endSplashScreen;
162- (void) startAnimationTimer;
163- (void) stopAnimationTimer;
168- (void)windowDidResize:(NSNotification *)aNotification;
170- (void)setUpBasicOpenGLStateWithSize:(NSSize)viewSize;
172- (NSURL *) snapshotsURLCreatingIfNeeded:(BOOL)create;
177@interface GameController (FullScreen)
179#if OO_USE_FULLSCREEN_CONTROLLER
181- (IBAction) toggleFullScreenAction:(
id)sender;
184- (void) setFullScreenMode:(BOOL)value;
190- (BOOL) setDisplayWidth:(
unsigned int) d_width Height:(
unsigned int)d_height Refresh:(
unsigned int) d_refresh;
191- (NSDictionary *) findDisplayModeForWidth:(
unsigned int)d_width Height:(
unsigned int) d_height Refresh:(
unsigned int) d_refresh;
195- (void) pauseFullScreenModeToPerform:(
SEL) selector onTarget:(
id) target;
205#define OO_DEBUG_PROGRESS(...) [[GameController sharedController] debugLogProgress:__VA_ARGS__]
206#define OO_DEBUG_PUSH_PROGRESS(...) [[GameController sharedController] debugPushProgressMessage:__VA_ARGS__]
207#define OO_DEBUG_POP_PROGRESS() [[GameController sharedController] debugPopProgressMessage]
209#define OO_DEBUG_PROGRESS(...) do {} while (0)
210#define OO_DEBUG_PUSH_PROGRESS(...) do {} while (0)
211#define OO_DEBUG_POP_PROGRESS() do {} while (0)
void exitFullScreenMode()
NSUInteger indexOfCurrentDisplayMode()
IBOutlet NSTextField * splashProgressTextField
IBOutlet NSWindow * gameWindow
NSString * playerFileToLoad
NSMutableArray * expansionPathsToInclude
OOMouseInteractionMode _resumeMode
NSTimeInterval last_timeInterval
NSString * playerFileDirectory
NSTimeInterval _animationTimerInterval
OOMouseInteractionMode _mouseMode
IBOutlet MyOpenGLView * gameView
IBOutlet PDFView * helpView
IBOutlet NSView * splashView
OOFullScreenController * _fullScreenController
IBOutlet NSMenu * dockMenu