Chameleon Applications

Chameleon Applications Svn Source Tree

Root/trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.h

1//
2// PreferencesControllerBase.h
3// ChameleonPrefPane
4//
5// Created by Rekursor on 1/22/10.
6//
7
8#import <Cocoa/Cocoa.h>
9#import "ChameleonPrefPane.h"
10#import "ChameleonPropertyList.h"
11#import "ShellProcess.h"
12#import "string_util.h"
13#import "GroupControllerProtocol.h"
14
15
16//--------------------------------------------------------------------------
17const char * const kKernelFlags = "Kernel Flags";
18
19//--------------------------------------------------------------------------
20typedef enum GroupAction
21{
22SetDefaultValues,
23RefreshLockStates,
24LoadPreferencesOptions,
25LoadBootConfigOptions,
26AddOptionsDesc,
27SaveBootConfigOptions
28};
29
30
31
32// ENHANCE ME: remove this globals and integrate them in ChameleonPrefPane or at least
33// add function accessor entry points
34extern PartitionExtractor * partExtractor;
35
36// Define common expected behavior for all derived controllers
37@interface PreferencesControllerBase : NSObject
38{
39}
40
41// Register the Group panel for further automatic iteration matters
42+ (void) registerPreferencesGroup:(id) myGroup;
43
44// Iterate and execute action for each register group
45+ (void) doForEachGroup: (GroupAction) action withOption:(id) option;
46
47// Set refresh state {enabled | disabled} depending on the authorizations state
48+ (void) refreshLockState: (id) item;
49
50// Unitary Method for Load One option of any type
51+ (void) loadOptionsFromBootFile;
52
53// Method for loading all registred options components in the interface
54+ (void) loadOptionFromBootFile:(id) optionID;
55
56// Get the resource in the pref pane, needed because the bundle get resource api wont work
57// as it would return the SystemPreferences application resource
58- (id) getResourcePath: (NSString *) str ofType: (NSString*) sType;
59
60- (void) loadPreferences;
61- (bool) savePreferences;
62
63- (bool) handleSender: (id) sender;
64
65-(NSMutableDictionary*) preferencesFile;
66-(NSMutableDictionary*) preferencesParts;
67
68-(ChameleonPrefPane*) chameleon;
69
70@end
71

Archive Download this file

Revision: 65