From http://www.jwz.org/xscreensaver/xscreensaver-5.24.tar.gz
[xscreensaver] / OSX / PrefsReader.h
index 9905aeb017ad584d991045487985e4cf52a6369b..492d4eaf439443c2855e23cfc14df57525ce85ae 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 2006 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright (c) 2006-2013 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 UI (XScreenSaverConfigSheet).
  */
 
-#import <Cocoa/Cocoa.h>
+#ifdef USE_IPHONE
+# import <Foundation/Foundation.h>
+# import <UIKit/UIKit.h>
+# define NSUserDefaultsController NSUserDefaults
+#else
+# import <Cocoa/Cocoa.h>
+#endif
+
+
 #import "jwxyz.h"
 
 @interface PrefsReader : NSObject
 {
+  NSString *saver_name;
+
+  NSUserDefaults *userDefaults;   // this is actually a 'ScreenSaverDefaults'
   NSUserDefaultsController *userDefaultsController;
-  NSUserDefaults *userDefaults;  // this is actually a 'ScreenSaverDefaults'
+
+  NSUserDefaults *globalDefaults; // for prefs shared by all xscreensavers.
+  NSUserDefaultsController *globalDefaultsController;
+
+  NSDictionary *defaultOptions;   // Hardcoded defaults before any changes.
 }
 
 - (id) initWithName: (NSString *) name
@@ -30,6 +45,8 @@
            defaults: (const char * const *) defs;
 
 - (NSUserDefaultsController *) userDefaultsController;
+- (NSUserDefaultsController *) globalDefaultsController;
+- (NSDictionary *) defaultOptions;
 
 - (char *) getStringResource:  (const char *) name;
 - (double) getFloatResource:   (const char *) name;