From 8408fed8718c5aafc89a7e22c3791904d505a425 Mon Sep 17 00:00:00 2001 From: Johan Paulsson Date: Tue, 26 Feb 2013 21:13:20 +0000 Subject: osx gui initial preferences panel with defaults support --- tikzit/src/osx/AppDelegate.m | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'tikzit/src/osx/AppDelegate.m') diff --git a/tikzit/src/osx/AppDelegate.m b/tikzit/src/osx/AppDelegate.m index bb1b5d6..ad1d407 100644 --- a/tikzit/src/osx/AppDelegate.m +++ b/tikzit/src/osx/AppDelegate.m @@ -31,6 +31,9 @@ @synthesize stylePaletteController, toolPaletteController; ++(void)initialize{ + [self setDefaults]; +} - (void)awakeFromNib { [TikzGraphAssembler setup]; // initialise lex/yacc parser globals @@ -66,11 +69,44 @@ [[PreviewController alloc] initWithWindowNibName:@"Preview" preambleController:preambleController tempDir:tempDir]; + + preferenceController = [[PreferenceController alloc] initWithWindowNibName:@"Preferences"]; // each application has one global preview controller [PreviewController setDefaultPreviewController:previewController]; } ++ (void)setDefaults{ + NSLog(@"Setting defaults..."); + + NSString *userDefaultsValuesPath; + NSDictionary *userDefaultsValuesDict; + NSDictionary *initialValuesDict; + NSArray *resettableUserDefaultsKeys; + + // load the default values for the user defaults + userDefaultsValuesPath=[[NSBundle mainBundle] pathForResource:@"UserDefaults" + ofType:@"plist"]; + userDefaultsValuesDict=[NSDictionary dictionaryWithContentsOfFile:userDefaultsValuesPath]; + + NSLog(@"Defaults dict: %@",userDefaultsValuesDict); + + // set them in the standard user defaults + [[NSUserDefaults standardUserDefaults] registerDefaults:userDefaultsValuesDict]; + + // if your application supports resetting a subset of the defaults to + // factory values, you should set those values + // in the shared user defaults controller + //resettableUserDefaultsKeys=[NSArray arrayWithObjects:@"Value1",@"Value2",@"Value3",nil]; + //initialValuesDict=[userDefaultsValuesDict dictionaryWithValuesForKeys:resettableUserDefaultsKeys]; + + // Set the initial values in the shared user defaults controller + //[[NSUserDefaultsController sharedUserDefaultsController] setInitialValues:initialValuesDict]; + + + NSLog(@"Done with defaults..."); +} + - (void)applicationWillTerminate:(NSNotification *)notification { NSString *supportDir = [SupportDir userSupportDir]; [stylePaletteController saveStyles:supportDir]; @@ -100,6 +136,10 @@ [self toggleController:preambleController]; } +- (IBAction)togglePreferences:(id)sender { + [self toggleController:preferenceController]; +} + - (IBAction)refreshShapes:(id)sender { [Shape refreshShapeDictionary]; } -- cgit v1.2.3