X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=OSX%2FSaverRunner.h;h=bacfd3868a4e9aa53973668e1c12a9f5d09044f7;hb=aa75c7476aeaa84cf3abc192b376a8b03c325213;hp=3ddc6b87f82074ccd9e67c9a92d0de35b5694121;hpb=ec8d2b32b63649e6d32bdfb306eda062769af823;p=xscreensaver diff --git a/OSX/SaverRunner.h b/OSX/SaverRunner.h index 3ddc6b87..bacfd386 100644 --- a/OSX/SaverRunner.h +++ b/OSX/SaverRunner.h @@ -1,4 +1,4 @@ -/* xscreensaver, Copyright (c) 2006-2011 Jamie Zawinski +/* xscreensaver, Copyright (c) 2006-2015 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -9,19 +9,102 @@ * implied warranty. */ -#import -#import +#ifdef USE_IPHONE +# import +# import +# import +# import +# import +# import +# define NSView UIView +# define NSRect CGRect +# define NSSize CGSize +# define NSColor UIColor +# define NSImage UIImage +# define NSEvent UIEvent +# define NSWindow UIWindow +# define NSButton UIButton +# define NSApplication UIApplication +# define NSScreen UIScreen +#else +# import +# import +#endif + +#import + +#ifdef USE_IPHONE + +@class SaverRunner; + +@interface SaverViewController : UIViewController +{ + SaverRunner *_parent; + NSString *_saverName; + XScreenSaverView *_saverView; + + /* When a the SaverViewController is presented, iOS automatically changes + the status bar orientation. (And, by extension, the notification center + orientation.) But there's no willPresentAsModal: event for a + UIViewController so that it knows when this is going to happen, and the + other event handlers occur after the status bar is changed. So save the + orientation just before the view controller is modal-presented, and + restore the proper status bar orientation just before the saverView is + created so it can pick it up in didRotate:. */ + // UIInterfaceOrientation _storedOrientation; + + BOOL _showAboutBox; + UIView *aboutBox; + NSTimer *splashTimer; +} + +@property(nonatomic, retain) NSString *saverName; + +@end + +#endif @interface SaverRunner : NSObject +# ifdef USE_IPHONE + +# endif { - NSString *saverDir; - NSArray *saverNames; - NSArray *windows; + NSString *saverName; // the one currently loaded + NSArray *saverNames; // Names of available savers + NSString *saverDir; // Where we find saver bundles + +# ifndef USE_IPHONE + NSBundle *saverBundle; + NSArray *windows; IBOutlet NSMenu *menubar; + NSTimer *anim_timer; + +# else // USE_IPHONE + + UINavigationController *rotating_nav; // Hierarchy 1 (UI) + IBOutlet UIWindow *window; + IBOutlet UIView *view; + + SaverViewController *nonrotating_controller; // Hierarchy 2 (savers) + + UIImage *saved_screenshot; + +# endif // USE_IPHONE } -- (IBAction) openPreferences: (id)sender; -- (IBAction) aboutPanel: (id)sender; +- (XScreenSaverView *) newSaverView: (NSString *) module + withSize: (NSSize) size; +- (void) loadSaver: (NSString *)name; +- (void) selectedSaverDidChange:(NSDictionary *)change; + +#ifndef USE_IPHONE +- (void) openPreferences: (id)sender; +#else // USE_IPHONE +- (void) openPreferences: (NSString *)which; +- (UIImage *) screenshot; +- (NSString *) makeDesc:(NSString *)saver + yearOnly:(BOOL) yearp; +#endif // USE_IPHONE @end