Index: trunk/ChameleonPrefPane/EfiInjectController.h =================================================================== --- trunk/ChameleonPrefPane/EfiInjectController.h (revision 66) +++ trunk/ChameleonPrefPane/EfiInjectController.h (revision 67) @@ -1,28 +0,0 @@ -// -// EfiInject.h -// ChameleonPrefPane -// -// Created by Rekursor on 1/26/10. -// - -#import -#import - - - - -// TabView subpane controller definitions -@interface EfiInjectController : PreferencesControllerBase -{ - IBOutlet NSButton* mEfiInject; - IBOutlet NSTextField* mEfiInjectText; - IBOutlet NSButton* mCurrentGfxInjection; -} - -- (IBAction) onCheckButtonChange: (NSButton*) sender; -- (IBAction) onTextFiedChange: (NSTextField*) sender; -- (void) setDefaultsValues: (NSMutableDictionary*) dict; - -+ (EfiInjectController *)instance; - -@end Index: trunk/ChameleonPrefPane/EfiInjectController.mm =================================================================== --- trunk/ChameleonPrefPane/EfiInjectController.mm (revision 66) +++ trunk/ChameleonPrefPane/EfiInjectController.mm (revision 67) @@ -1,80 +0,0 @@ -// -// EfiInject.mm -// ChameleonPrefPane -// -// Created by Rekursor on 1/26/10. -// - -#import "EfiInjectController.h" - - -static EfiInjectController *gInstance = NULL; - -@implementation EfiInjectController -//-------------------------------------------------------------------------- -- (id) init -{ - self = [super init]; - return (gInstance = self); -} - -//-------------------------------------------------------------------------- -- (void) addOptionsDesc -{ - BootProp::instance().addOptionDesc(mEfiInject, mEfiInjectText, OptionString, "device-properties", ""); -} - -//-------------------------------------------------------------------------- --(void) setDefaultsValues: (NSMutableDictionary*) dict -{ -} - -//-------------------------------------------------------------------------- -- (void) refreshLockStates -{ - // automatic, nothing to do -} - -//-------------------------------------------------------------------------- --(void) loadOptionsFromPreferencesFile: (NSMutableDictionary*) dict -{ - -} - -//-------------------------------------------------------------------------- --(IBAction) onCheckButtonChange: (NSButton*) sender -{ - if(sender == mCurrentGfxInjection) - { - NSTask *gfxutil = [[NSTask alloc] init]; - NSString * pathTask = [self getResourcePath:@"getDevProp" ofType:@"sh"]; - [gfxutil setLaunchPath:pathTask]; - [gfxutil launch]; - - //[progressIndicator startAnimation: self]; //lancement de l'anim - [gfxutil waitUntilExit]; //surveille le script et bloque le bouton - int status = [gfxutil terminationStatus]; - - if (status == 0) { //script terminé avec succès - //[progressIndicator stopAnimation: self]; - NSLog(@"dev-props checked."); - } - else { - //[progressIndicator stopAnimation: self]; //problème avec le script - NSLog(@"no dev-props."); - } - - } - else - [self handleSender: sender]; -} - -//-------------------------------------------------------------------------- --(IBAction) onTextFiedChange: (NSTextField*) sender -{ - [self handleSender: sender]; -} - -+ (EfiInjectController *)instance { return(gInstance);} - -@end Index: trunk/ChameleonPrefPane/Sources/SmbiosController.h =================================================================== --- trunk/ChameleonPrefPane/Sources/SmbiosController.h (revision 0) +++ trunk/ChameleonPrefPane/Sources/SmbiosController.h (revision 67) @@ -0,0 +1,26 @@ +// +// EfiInject.h +// ChameleonPrefPane +// +// Created by Rekursor on 1/26/10. +// + +#import +#import + + + + +// TabView subpane controller definitions +@interface SmbiosController : PreferencesControllerBase +{ + IBOutlet NSButton* mEditSmbios; +} + +- (IBAction) onCheckButtonChange: (NSButton*) sender; +- (IBAction) onTextFiedChange: (NSTextField*) sender; +- (void) setDefaultsValues: (NSMutableDictionary*) dict; + ++ (SmbiosController *)instance; + +@end Index: trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.h =================================================================== --- trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.h (revision 66) +++ trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.h (revision 67) @@ -57,6 +57,9 @@ // as it would return the SystemPreferences application resource - (id) getResourcePath: (NSString *) str ofType: (NSString*) sType; +// Execute a task and wait for the process to terminate +- (bool) executeTaskAndWaitForTermination: (NSString*)taskPath; + - (void) loadPreferences; - (bool) savePreferences; Index: trunk/ChameleonPrefPane/Sources/EfiInjectController.h =================================================================== --- trunk/ChameleonPrefPane/Sources/EfiInjectController.h (revision 0) +++ trunk/ChameleonPrefPane/Sources/EfiInjectController.h (revision 67) @@ -0,0 +1,28 @@ +// +// EfiInject.h +// ChameleonPrefPane +// +// Created by Rekursor on 1/26/10. +// + +#import +#import + + + + +// TabView subpane controller definitions +@interface EfiInjectController : PreferencesControllerBase +{ + IBOutlet NSButton* mEfiInject; + IBOutlet NSTextField* mEfiInjectText; + IBOutlet NSButton* mCurrentGfxInjection; +} + +- (IBAction) onCheckButtonChange: (NSButton*) sender; +- (IBAction) onTextFiedChange: (NSTextField*) sender; +- (void) setDefaultsValues: (NSMutableDictionary*) dict; + ++ (EfiInjectController *)instance; + +@end Index: trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.h =================================================================== --- trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.h (revision 66) +++ trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.h (revision 67) @@ -75,5 +75,6 @@ - (bool)isUnlocked; - (void) refreshLockStates; - (void)tableViewSelectionDidChange:(NSNotification *)notification; +- ( AuthorizationRef) auth; @end Index: trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.mm (revision 66) +++ trunk/ChameleonPrefPane/Sources/PreferencesControllerBase.mm (revision 67) @@ -40,7 +40,6 @@ //-------------------------------------------------------------------------- - (id) getResourcePath: (NSString *) str ofType: (NSString*) sType { - NSImage * img=nil; if(!str) return nil; NSBundle * b = [NSBundle bundleForClass:[self class]]; id sRes = [b pathForResource: str ofType:sType ]; @@ -344,4 +343,15 @@ return true; } +- (bool) executeTaskAndWaitForTermination: (NSString*)taskPath +{ + NSTask *task = [[NSTask alloc] init]; + [task setLaunchPath:taskPath]; + [task launch]; + + [task waitUntilExit]; // wait for process termination + int status = [task terminationStatus]; + + return (status == 0) ? true : false; +} @end Index: trunk/ChameleonPrefPane/Sources/SmbiosController.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/SmbiosController.mm (revision 0) +++ trunk/ChameleonPrefPane/Sources/SmbiosController.mm (revision 67) @@ -0,0 +1,90 @@ +// +// EfiInject.mm +// ChameleonPrefPane +// +// Created by Rekursor on 1/26/10. +// + +#import "SmbiosController.h" + + +static SmbiosController *gInstance = NULL; + +@implementation SmbiosController +//-------------------------------------------------------------------------- +- (id) init +{ + self = [super init]; + return (gInstance = self); +} + +//-------------------------------------------------------------------------- +- (void) addOptionsDesc +{ + // Add future smbios options here + // BootProp::instance().addOptionDesc(mEfiInject, mEfiInjectText, OptionString, "device-properties", ""); +} + +//-------------------------------------------------------------------------- +-(void) setDefaultsValues: (NSMutableDictionary*) dict +{ +} + +//-------------------------------------------------------------------------- +- (void) refreshLockStates +{ + [PreferencesControllerBase refreshLockState: mEditSmbios]; +} + +//-------------------------------------------------------------------------- +-(void) loadOptionsFromPreferencesFile: (NSMutableDictionary*) dict +{ + +} +- (const char *) getSmbiosFilePath +{ + static std::string path; + if (fileExists("/Extra/smbios.plist")) + return "/Extra/smbios.plist"; + else if (fileExists("/smbios.plist")) + return "/smbios.plist"; + + return ""; //not found +} +//-------------------------------------------------------------------------- +-(IBAction) onCheckButtonChange: (NSButton*) sender +{ + if(sender == mEditSmbios) + { + // IMPROVE ME find the associated editor path and call it then wait for its termination + std::string smbiosPath = [self getSmbiosFilePath ]; + AuthorizationRef auth = [[self chameleon] auth ]; + if (smbiosPath.length()==0 || auth==nil) return; + + // give write temporary write rights to the file +// std::string args = " 0777 "+ smbiosPath; +// if(!executePrivilegedCmd(auth, "/bin/chmod", args.c_str())) return; + + // edit the file + std::string cmd = "/usr/bin/open " + smbiosPath; + system(cmd.c_str()); + + // [ self executeTaskAndWaitForTermination: [[NSString alloc] initWithUTF8String:cmd.c_str()] ]; + + // Remove temporary write +// args = " 0644 "+ smbiosPath; +// if(!executePrivilegedCmd(auth, "/bin/chmod", args.c_str())) return; + } + else + [self handleSender: sender]; +} + +//-------------------------------------------------------------------------- +-(IBAction) onTextFiedChange: (NSTextField*) sender +{ + [self handleSender: sender]; +} + ++ (SmbiosController *)instance { return(gInstance);} + +@end Index: trunk/ChameleonPrefPane/Sources/EfiInjectController.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/EfiInjectController.mm (revision 0) +++ trunk/ChameleonPrefPane/Sources/EfiInjectController.mm (revision 67) @@ -0,0 +1,64 @@ +// +// EfiInject.mm +// ChameleonPrefPane +// +// Created by Rekursor on 1/26/10. +// + +#import "EfiInjectController.h" + + +static EfiInjectController *gInstance = NULL; + +@implementation EfiInjectController +//-------------------------------------------------------------------------- +- (id) init +{ + self = [super init]; + return (gInstance = self); +} + +//-------------------------------------------------------------------------- +- (void) addOptionsDesc +{ + BootProp::instance().addOptionDesc(mEfiInject, mEfiInjectText, OptionString, "device-properties", ""); +} + +//-------------------------------------------------------------------------- +-(void) setDefaultsValues: (NSMutableDictionary*) dict +{ +} + +//-------------------------------------------------------------------------- +- (void) refreshLockStates +{ + // automatic, nothing to do +} + +//-------------------------------------------------------------------------- +-(void) loadOptionsFromPreferencesFile: (NSMutableDictionary*) dict +{ + +} + +//-------------------------------------------------------------------------- +-(IBAction) onCheckButtonChange: (NSButton*) sender +{ + if(sender == mCurrentGfxInjection) + { // using nohan script from Lizard here: + NSString* pathTask = [self getResourcePath:@"getDevProp" ofType:@"sh"]; + [self executeTaskAndWaitForTermination: pathTask]; + } + else + [self handleSender: sender]; +} + +//-------------------------------------------------------------------------- +-(IBAction) onTextFiedChange: (NSTextField*) sender +{ + [self handleSender: sender]; +} + ++ (EfiInjectController *)instance { return(gInstance);} + +@end Index: trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj =================================================================== --- trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj (revision 66) +++ trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj (revision 67) @@ -13,6 +13,10 @@ 013F671F110F7A7D0095EC8F /* cdBootCreator.sh in Resources */ = {isa = PBXBuildFile; fileRef = 013F671C110F7A7D0095EC8F /* cdBootCreator.sh */; }; 013F6720110F7A7D0095EC8F /* getDevProp.sh in Resources */ = {isa = PBXBuildFile; fileRef = 013F671D110F7A7D0095EC8F /* getDevProp.sh */; }; 013F6721110F7A7D0095EC8F /* gfxutil in Resources */ = {isa = PBXBuildFile; fileRef = 013F671E110F7A7D0095EC8F /* gfxutil */; }; + 013F67EE110F970D0095EC8F /* EfiInjectController.h in Headers */ = {isa = PBXBuildFile; fileRef = 013F67EC110F970D0095EC8F /* EfiInjectController.h */; }; + 013F67EF110F970D0095EC8F /* EfiInjectController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 013F67ED110F970D0095EC8F /* EfiInjectController.mm */; }; + 013F67F4110F97580095EC8F /* SmbiosController.h in Headers */ = {isa = PBXBuildFile; fileRef = 013F67F2110F97580095EC8F /* SmbiosController.h */; }; + 013F67F5110F97580095EC8F /* SmbiosController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 013F67F3110F97580095EC8F /* SmbiosController.mm */; }; 01466A931104062500088464 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01466A921104062500088464 /* Security.framework */; }; 01466C2A110408CC00088464 /* SecurityInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01466C29110408CC00088464 /* SecurityInterface.framework */; }; 01466C381104091400088464 /* SecurityFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01466C371104091400088464 /* SecurityFoundation.framework */; }; @@ -48,8 +52,6 @@ 01B0E8251108B87A00ACF21B /* Windows.png in Resources */ = {isa = PBXBuildFile; fileRef = 01B0E81F1108B87A00ACF21B /* Windows.png */; }; 01B0E8271108B89100ACF21B /* CREDITS in Resources */ = {isa = PBXBuildFile; fileRef = 01B0E8261108B89100ACF21B /* CREDITS */; }; 01B0E8291108B89D00ACF21B /* version in Resources */ = {isa = PBXBuildFile; fileRef = 01B0E8281108B89D00ACF21B /* version */; }; - 01C48DBD110F5B030089AD71 /* EfiInjectController.h in Headers */ = {isa = PBXBuildFile; fileRef = 01C48DBB110F5B030089AD71 /* EfiInjectController.h */; }; - 01C48DBE110F5B030089AD71 /* EfiInjectController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 01C48DBC110F5B030089AD71 /* EfiInjectController.mm */; }; 01D5D9C6110D723200AAE2C3 /* file_util.h in Headers */ = {isa = PBXBuildFile; fileRef = 01D5D9C5110D723200AAE2C3 /* file_util.h */; }; 01D5DBE0110DA3CD00AAE2C3 /* GroupControllerProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = 01D5DBDF110DA3CD00AAE2C3 /* GroupControllerProtocol.h */; }; 01E0E9511108F9ED004EF6E8 /* TODO in Resources */ = {isa = PBXBuildFile; fileRef = 01E0E9501108F9ED004EF6E8 /* TODO */; }; @@ -67,6 +69,10 @@ 013F671C110F7A7D0095EC8F /* cdBootCreator.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = cdBootCreator.sh; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Resources/cdBootCreator.sh; sourceTree = SOURCE_ROOT; }; 013F671D110F7A7D0095EC8F /* getDevProp.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = getDevProp.sh; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Resources/getDevProp.sh; sourceTree = SOURCE_ROOT; }; 013F671E110F7A7D0095EC8F /* gfxutil */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; name = gfxutil; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Resources/gfxutil; sourceTree = SOURCE_ROOT; }; + 013F67EC110F970D0095EC8F /* EfiInjectController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EfiInjectController.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/EfiInjectController.h; sourceTree = SOURCE_ROOT; }; + 013F67ED110F970D0095EC8F /* EfiInjectController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = EfiInjectController.mm; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/EfiInjectController.mm; sourceTree = SOURCE_ROOT; }; + 013F67F2110F97580095EC8F /* SmbiosController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SmbiosController.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/SmbiosController.h; sourceTree = SOURCE_ROOT; }; + 013F67F3110F97580095EC8F /* SmbiosController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SmbiosController.mm; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/SmbiosController.mm; sourceTree = SOURCE_ROOT; }; 01466A921104062500088464 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; 01466C29110408CC00088464 /* SecurityInterface.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SecurityInterface.framework; path = System/Library/Frameworks/SecurityInterface.framework; sourceTree = SDKROOT; }; 01466C371104091400088464 /* SecurityFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SecurityFoundation.framework; path = System/Library/Frameworks/SecurityFoundation.framework; sourceTree = SDKROOT; }; @@ -102,8 +108,6 @@ 01B0E81F1108B87A00ACF21B /* Windows.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Windows.png; path = Resources/Windows.png; sourceTree = ""; }; 01B0E8261108B89100ACF21B /* CREDITS */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CREDITS; sourceTree = ""; }; 01B0E8281108B89D00ACF21B /* version */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = version; path = bin/version; sourceTree = ""; }; - 01C48DBB110F5B030089AD71 /* EfiInjectController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EfiInjectController.h; sourceTree = ""; }; - 01C48DBC110F5B030089AD71 /* EfiInjectController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EfiInjectController.mm; sourceTree = ""; }; 01D5D9C5110D723200AAE2C3 /* file_util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = file_util.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/file_util.h; sourceTree = SOURCE_ROOT; }; 01D5DBDF110DA3CD00AAE2C3 /* GroupControllerProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GroupControllerProtocol.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/GroupControllerProtocol.h; sourceTree = SOURCE_ROOT; }; 01E0E9501108F9ED004EF6E8 /* TODO */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TODO; sourceTree = SOURCE_ROOT; }; @@ -191,8 +195,10 @@ 019930FD110A0E6F003B056E /* PeripheralsController.mm */, 01993113110A0EB9003B056E /* AdvancedSetupController.h */, 01993114110A0EB9003B056E /* AdvancedSetupController.mm */, - 01C48DBB110F5B030089AD71 /* EfiInjectController.h */, - 01C48DBC110F5B030089AD71 /* EfiInjectController.mm */, + 013F67EC110F970D0095EC8F /* EfiInjectController.h */, + 013F67ED110F970D0095EC8F /* EfiInjectController.mm */, + 013F67F2110F97580095EC8F /* SmbiosController.h */, + 013F67F3110F97580095EC8F /* SmbiosController.mm */, 01001001110EBB2A00221234 /* CustomTableView.h */, 01001002110EBB2A00221234 /* CustomTableView.mm */, 01D5D9C5110D723200AAE2C3 /* file_util.h */, @@ -274,7 +280,8 @@ 01D5D9C6110D723200AAE2C3 /* file_util.h in Headers */, 01D5DBE0110DA3CD00AAE2C3 /* GroupControllerProtocol.h in Headers */, 01001003110EBB2A00221234 /* CustomTableView.h in Headers */, - 01C48DBD110F5B030089AD71 /* EfiInjectController.h in Headers */, + 013F67EE110F970D0095EC8F /* EfiInjectController.h in Headers */, + 013F67F4110F97580095EC8F /* SmbiosController.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -373,7 +380,8 @@ 01AF5E69110C1C6800816AA8 /* string_util.cpp in Sources */, 01AF5E6C110C1C9C00816AA8 /* KernOptionsParser.cpp in Sources */, 01001004110EBB2A00221234 /* CustomTableView.mm in Sources */, - 01C48DBE110F5B030089AD71 /* EfiInjectController.mm in Sources */, + 013F67EF110F970D0095EC8F /* EfiInjectController.mm in Sources */, + 013F67F5110F97580095EC8F /* SmbiosController.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; Index: trunk/ChameleonPrefPane/English.lproj/Chameleon.xib =================================================================== --- trunk/ChameleonPrefPane/English.lproj/Chameleon.xib (revision 66) +++ trunk/ChameleonPrefPane/English.lproj/Chameleon.xib (revision 67) @@ -12,8 +12,7 @@ YES - - + YES @@ -73,7 +72,7 @@ 1 - + 292 YES @@ -86,7 +85,7 @@ 72482368 138544128 - Version 2.0 b7 + Version 2.0 b8 LucidaGrande 11 @@ -733,6 +732,7 @@ {{10, 33}, {640, 267}} + Boot From ... @@ -2600,7 +2600,7 @@ Item 5 - + 256 YES @@ -2636,18 +2636,18 @@ 25 - + 268 - {{414, 210}, {141, 27}} + {{422, 210}, {141, 27}} YES - + -2080244224 134217728 Current Gfx Injection - + -2033434369 162 @@ -2656,28 +2656,28 @@ 75 - + 268 YES - - + + 2304 YES - - + + 268 {536, 506} - + YES - + -1805517311 272629760 - + YES @@ -2685,40 +2685,40 @@ {{1, 1}, {536, 173}} - - - + + + 4 - - + + 256 {{537, 1}, {15, 173}} - + YES - + _doScroller: 0.34189723320158105 - - + + -2147483392 {{-100, -100}, {536, 15}} - + 1 - + _doScroller: 0.50602412223815918 {{10, 22}, {553, 175}} - + 82 - - - + + + {{1, 1}, {572, 246}} @@ -2747,21 +2747,70 @@ {{10, 33}, {640, 267}} - EFI Inject + + Item 6 + + + 256 + + YES + + + 268 + {{484, 9}, {145, 32}} + + YES + + 67239424 + 134217728 + Edit smbios.plist + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{145, 137}, {404, 17}} + + YES + + 68288064 + 272630784 + In construction. More options In Future Developments... + + + + + + + + {{10, 33}, {640, 267}} + + SMBIOS + + + - + 0 YES YES YES - + @@ -2819,6 +2868,7 @@ 268 {{245, 218}, {38, 17}} + YES 68288064 @@ -2838,6 +2888,7 @@ 268 {{182, 218}, {52, 17}} + YES 68288064 @@ -2854,6 +2905,7 @@ 268 {{46, 20}, {373, 183}} + YES -1805517311 @@ -2874,6 +2926,7 @@ {464, 255} + {{0, 0}, {1920, 1058}} {1.79769e+308, 1.79769e+308} @@ -2896,6 +2949,9 @@ EfiInjectController + + SmbiosController + @@ -4120,7 +4176,7 @@ mCurrentGfxInjection - + 796 @@ -4128,7 +4184,7 @@ onCheckButtonChange: - + 797 @@ -4136,7 +4192,7 @@ mEfiInjectText - + 824 @@ -4144,10 +4200,26 @@ onTextFiedChange: - + 825 + + + mEditSmbios + + + + 835 + + + + onCheckButtonChange: + + + + 836 + @@ -4219,6 +4291,7 @@ + @@ -5707,8 +5780,8 @@ YES - - + + @@ -5728,53 +5801,105 @@ 794 - + YES - + 795 - - + + 820 - + YES - - - + + + 821 - - + + 822 - - + + 818 - + YES - + - + 819 - - + + + + 828 + + + YES + + + + + + 829 + + + YES + + + + + + + 830 + + + YES + + + + + + 831 + + + + + 832 + + + YES + + + + + + 833 + + + + + 834 + + + @@ -6063,6 +6188,11 @@ 795.IBPluginDependency 818.IBPluginDependency 819.IBPluginDependency + 830.IBPluginDependency + 831.IBPluginDependency + 832.IBPluginDependency + 833.IBPluginDependency + 834.IBPluginDependency 99.IBAttributePlaceholdersKey 99.IBPluginDependency @@ -6088,9 +6218,9 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{65, 274}, {668, 368}} + {{413, 83}, {668, 368}} com.apple.InterfaceBuilder.CocoaPlugin - {{65, 274}, {668, 368}} + {{413, 83}, {668, 368}} {224.664, 10} @@ -6846,6 +6976,11 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin ToolTip @@ -6873,7 +7008,7 @@ - 825 + 836 @@ -7171,7 +7306,7 @@ IBProjectSource - EfiInjectController.h + ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/EfiInjectController.h @@ -7256,6 +7391,31 @@ Sources/PreferencesControllerBase.h + + SmbiosController + PreferencesControllerBase + + YES + + YES + onCheckButtonChange: + onTextFiedChange: + + + YES + NSButton + NSTextField + + + + mEditSmbios + NSButton + + + IBProjectSource + ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/SmbiosController.h + + YES