diff options
author | Simon Rettberg | 2018-10-16 10:08:48 +0200 |
---|---|---|
committer | Simon Rettberg | 2018-10-16 10:08:48 +0200 |
commit | d3a98cf6cbc3bd0b9efc570f58e8812c03931c18 (patch) | |
tree | cbddf8e50f35a9c6e878a5bfe3c6d625d99e12ba /OSX/SaverRunner.h | |
download | xscreensaver-d3a98cf6cbc3bd0b9efc570f58e8812c03931c18.tar.gz xscreensaver-d3a98cf6cbc3bd0b9efc570f58e8812c03931c18.tar.xz xscreensaver-d3a98cf6cbc3bd0b9efc570f58e8812c03931c18.zip |
Original 5.40
Diffstat (limited to 'OSX/SaverRunner.h')
-rw-r--r-- | OSX/SaverRunner.h | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/OSX/SaverRunner.h b/OSX/SaverRunner.h new file mode 100644 index 0000000..073a87e --- /dev/null +++ b/OSX/SaverRunner.h @@ -0,0 +1,111 @@ +/* xscreensaver, Copyright (c) 2006-2016 Jamie Zawinski <jwz@jwz.org> + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation. No representations are made about the suitability of this + * software for any purpose. It is provided "as is" without express or + * implied warranty. + */ + +#ifdef USE_IPHONE +# import <Foundation/Foundation.h> +# import <UIKit/UIKit.h> +# import <OpenGLES/EAGL.h> +# import <OpenGLES/ES1/gl.h> +# import <OpenGLES/ES1/glext.h> +# import <QuartzCore/QuartzCore.h> +# 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 <Cocoa/Cocoa.h> +# import <ScreenSaver/ScreenSaver.h> +#endif + +#import <XScreenSaverView.h> + +#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 + <XScreenSaverViewDelegate> +# else + <NSWindowDelegate> +# endif +{ + 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 +} + +- (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 +- (UIImage *) screenshot; +- (NSString *) makeDesc:(NSString *)saver + yearOnly:(BOOL) yearp; +#endif // USE_IPHONE + +@end |