Changeset 233
- Timestamp:
- 01/05/07 09:10:27 (2 years ago)
- Files:
-
- trunk/CPFPerianPrefPaneController.h (modified) (1 diff)
- trunk/CPFPerianPrefPaneController.m (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/CPFPerianPrefPaneController.h
r229 r233 30 30 NSURL *perianWebSiteURL; 31 31 32 CFStringRef perianAppID; 33 CFStringRef a52AppID; 34 32 35 } 33 36 //General Pane trunk/CPFPerianPrefPaneController.m
r229 r233 1 1 #import "CPFPerianPrefPaneController.h" 2 3 #define AC3DynamicRangeKey CFSTR("dynamicRange") 4 #define AC3StereoOverDolbyKey CFSTR("useStereoOverDolby") 2 5 3 6 @implementation CPFPerianPrefPaneController … … 9 12 perianDonateURL = [[NSURL alloc] initWithString:@"http://perian.org/donate.php"]; 10 13 perianWebSiteURL = [[NSURL alloc] initWithString:@"http://perian.org"]; 14 15 perianAppID = CFSTR("org.perian.perian"); 16 a52AppID = CFSTR("com.cod3r.a52codec"); 11 17 } 12 18 … … 14 20 } 15 21 22 - (void)setButton:(NSButton *)button fromKey:(CFStringRef)key forAppID:(CFStringRef)appID withDefault:(BOOL)defaultValue 23 { 24 CFPropertyListRef value; 25 value = CFPreferencesCopyAppValue(key, appID); 26 if(value && CFGetTypeID(value) == CFBooleanGetTypeID()) 27 [button setState:CFBooleanGetValue(value)]; 28 else 29 [button setState:defaultValue]; 30 31 if(value) 32 CFRelease(value); 33 } 34 35 - (void)setKey:(CFStringRef)key forAppID:(CFStringRef)appID fromButton:(NSButton *)button 36 { 37 if([button state]) 38 CFPreferencesSetAppValue(key, kCFBooleanTrue, appID); 39 else 40 CFPreferencesSetAppValue(key, kCFBooleanFalse, appID); 41 } 42 16 43 - (void)mainViewDidLoad 17 44 { 18 /* Read prefs here and display */ 45 /* A52 Prefs */ 46 [self setButton:button_ac3DynamicRange fromKey:AC3DynamicRangeKey forAppID:a52AppID withDefault:NO]; 47 [self setButton:button_ac3StereoOverDolby fromKey:AC3StereoOverDolbyKey forAppID:a52AppID withDefault:NO]; 19 48 } 20 49 21 50 - (void)didUnselect 22 51 { 23 /* Write prefs here */ 52 CFPreferencesAppSynchronize(perianAppID); 53 CFPreferencesAppSynchronize(a52AppID); 24 54 } 25 55 … … 38 68 #pragma mark Check Updates 39 69 - (IBAction)updateCheck:(id)sender 40 { 70 { 41 71 } 42 72 43 73 - (IBAction)setAutoUpdateCheck:(id)sender 44 { 74 { 45 75 } 46 76 … … 48 78 #pragma mark AC3 49 79 - (IBAction)setAC3DynamicRange:(id)sender 50 { 80 { 81 [self setKey:AC3DynamicRangeKey forAppID:a52AppID fromButton:button_ac3DynamicRange]; 51 82 } 52 83 53 84 - (IBAction)setAC3StereoOverDolby:(id)sender 54 { 85 { 86 [self setKey:AC3StereoOverDolbyKey forAppID:a52AppID fromButton:button_ac3StereoOverDolby]; 55 87 } 56 88 … … 62 94 63 95 - (IBAction)launchDonate:(id)sender 64 { 96 { 65 97 66 98 [[NSWorkspace sharedWorkspace] openURL:perianDonateURL]; … … 68 100 69 101 - (IBAction)launchForum:(id)sender 70 { 102 { 71 103 72 104 [[NSWorkspace sharedWorkspace] openURL:perianForumURL];
