diff options
author | Brian Cully <bjc@kublai.com> | 2011-03-15 22:03:11 -0400 |
---|---|---|
committer | Brian Cully <github.20.shmit@spamgourmet.com> | 2011-03-15 22:03:11 -0400 |
commit | 9992988f581532a7db50b57594fc3e346398f9fa (patch) | |
tree | 1cd36a71bc2d42ba091467e8cf014e1dbec0f635 /PreferencesController.m | |
parent | e78a860d2ef8f9995d07868fcfe60ceb15b6b40b (diff) | |
download | moxie-9992988f581532a7db50b57594fc3e346398f9fa.tar.gz moxie-9992988f581532a7db50b57594fc3e346398f9fa.zip |
Update for 10.7
Also set stream type to latin-1 in SBCL. This should become a setting.
Diffstat (limited to 'PreferencesController.m')
-rw-r--r-- | PreferencesController.m | 47 |
1 files changed, 20 insertions, 27 deletions
diff --git a/PreferencesController.m b/PreferencesController.m index cba6241..2be2f8a 100644 --- a/PreferencesController.m +++ b/PreferencesController.m @@ -23,34 +23,27 @@ NSOpenPanel *openPanel; openPanel = [NSOpenPanel openPanel]; - [openPanel setAllowsMultipleSelection: YES]; - [openPanel beginSheetForDirectory: nil - file: nil - types: [NSArray arrayWithObject: @"moxie"] - modalForWindow: [self window] - modalDelegate: self - didEndSelector: @selector(openPanelDidEnd:returnCode:contextInfo:) - contextInfo: NULL]; -} - -- (void)openPanelDidEnd: (NSOpenPanel *)sheet - returnCode: (int)returnCode - contextInfo: (void *)contextInfo -{ - if (returnCode == NSOKButton) { - NSEnumerator *pathEnum; - NSMutableArray *newContents; - NSString *path; - - newContents = [NSMutableArray arrayWithArray: [[NSUserDefaults standardUserDefaults] startupWorlds]]; - pathEnum = [[sheet filenames] objectEnumerator]; - while ((path = [pathEnum nextObject]) != nil) { - [newContents addObject: path]; + + void (^openHandler)(NSInteger) = ^(NSInteger result) + { + if (result == NSFileHandlingPanelOKButton) { + NSEnumerator *pathEnum; + NSMutableArray *newContents; + NSString *path; + + newContents = [NSMutableArray arrayWithArray: [[NSUserDefaults standardUserDefaults] startupWorlds]]; + pathEnum = [[openPanel URLs] objectEnumerator]; + while ((path = [pathEnum nextObject]) != nil) { + [newContents addObject: path]; + } + + [[NSUserDefaults standardUserDefaults] setStartupWorlds: newContents]; + [self refreshStartupTableView]; } - - [[NSUserDefaults standardUserDefaults] setStartupWorlds: newContents]; - [self refreshStartupTableView]; - } + }; + + [openPanel setAllowsMultipleSelection: YES]; + [openPanel beginSheetModalForWindow:[self window] completionHandler: openHandler]; } - (IBAction)removeStartupWorld: (id)sender |