Index: trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.mm (revision 60) +++ trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.mm (revision 61) @@ -67,6 +67,14 @@ // Retrieve the com.chameleon.prefPane.plist config return self; } +- (void)dealloc +{ + // release the colors + [mOptionsDict release]; + [mPartitionsDict release]; + + [super dealloc]; +} - (NSMutableDictionary*) preferencesFile { return mOptionsDict; } - (NSMutableDictionary*) preferencesParts { return mPartitionsDict; } @@ -88,7 +96,7 @@ } //-------------------------------------------------------------------------- -// SFAuthorization implementaion +// SFAuthorization implementation //-------------------------------------------------------------------------- // SFAuthorization delegates Index: trunk/ChameleonPrefPane/Sources/CustomTableView.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/CustomTableView.mm (revision 0) +++ trunk/ChameleonPrefPane/Sources/CustomTableView.mm (revision 61) @@ -0,0 +1,34 @@ +// +// CustomTableView.mm +// ChameleonPrefPane +// +// Created by Fabien on 1/25/10. +// Copyright 2010 __MyCompanyName__. All rights reserved. +// + +#import "CustomTableView.h" + + +@implementation CustomTableView + +- (void)awakeFromNib +{ + // highlight colors + mHighlightColorInFocusView = [[NSColor colorWithDeviceRed:.65 green:.75 blue:1.0 alpha:1.0] retain]; + mHighlightColorOutOfFocusView = [[NSColor colorWithDeviceRed:.50 green:.65 blue:.85 alpha:1.0] retain]; +} +- (id)_highlightColorForCell:(NSCell *)cell +{ + return [self isEnabled] ? mHighlightColorInFocusView : mHighlightColorOutOfFocusView; + +} + +- (void)dealloc +{ + // release the colors + [mHighlightColorInFocusView release]; + [mHighlightColorOutOfFocusView release]; + + [super dealloc]; +} +@end Index: trunk/ChameleonPrefPane/Sources/ShellProcess.cpp =================================================================== --- trunk/ChameleonPrefPane/Sources/ShellProcess.cpp (revision 60) +++ trunk/ChameleonPrefPane/Sources/ShellProcess.cpp (revision 61) @@ -86,7 +86,8 @@ } -// uncomment the following line for debug +// set to 1 the following line for debugging with a fake diskutil file named /diskutil.txt +// for the debug to be accurate you need to alias (ln -s ...) the user to debug with your real disks #define DEBUG_DISKUTIL 0 //---------------------------------------------------------------- @@ -151,9 +152,13 @@ partInfo.partition(part); partInfo.label(checkForRename(label, partInfo.toHdStr().c_str())); size_t len = partInfo.label().length(); + if(len==0){ + strncpy(label, "Untitled", sizeof(label)); + partInfo.label(label); + } + // filter useless partitions: - if ( len > 0 && - partInfo.clabel()[len-1] !='*' && + if (partInfo.clabel()[len-1] !='*' && partInfo.fsType()!="EFI" && partInfo.fsType()!="Apple_partition_scheme" && partInfo.fsType()!="Apple_partition_map" && @@ -162,7 +167,8 @@ { std::string diskLabel(trim(label)); bool found=false; - + if (strstr(fsType,"NTFS")) + disk=disk+10; // early bail out if we found what we need: DON't make any assumption // that Windows is the name of WIN32 bootable disk dir ... if ( Index: trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.h =================================================================== --- trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.h (revision 60) +++ trunk/ChameleonPrefPane/Sources/ChameleonPrefPane.h (revision 61) @@ -8,6 +8,7 @@ #import #import #import +#import "CustomTableView.h" // Constants static const NSString* const keyForceBootConfigPath = @"forceBootConfigPath"; @@ -28,7 +29,7 @@ @private // Objects corresponding to the interface mapping: - IBOutlet NSTableView * mPartitionsTable; + IBOutlet CustomTableView * mPartitionsTable; IBOutlet NSTableColumn * mPartitionImgColumn; IBOutlet NSTableColumn * mFileSystemColumn; IBOutlet NSTableColumn * mPartitionNameColumn; Index: trunk/ChameleonPrefPane/Sources/CustomTableView.h =================================================================== --- trunk/ChameleonPrefPane/Sources/CustomTableView.h (revision 0) +++ trunk/ChameleonPrefPane/Sources/CustomTableView.h (revision 61) @@ -0,0 +1,18 @@ +// +// CustomTableView.h +// ChameleonPrefPane +// +// Created by Fabien on 1/25/10. +// Copyright 2010 __MyCompanyName__. All rights reserved. +// + +#import + + +@interface CustomTableView : NSTableView { + NSColor * mHighlightColorInFocusView; + NSColor * mHighlightColorOutOfFocusView; + +} + +@end Index: trunk/ChameleonPrefPane/Info.plist =================================================================== --- trunk/ChameleonPrefPane/Info.plist (revision 60) +++ trunk/ChameleonPrefPane/Info.plist (revision 61) @@ -17,7 +17,7 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 2.0 b5 + 2.0 b6 CFBundleSignature ???? CFBundleVersion Index: trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj =================================================================== --- trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj (revision 60) +++ trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj (revision 61) @@ -7,6 +7,8 @@ objects = { /* Begin PBXBuildFile section */ + 01001003110EBB2A00221234 /* CustomTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 01001001110EBB2A00221234 /* CustomTableView.h */; }; + 01001004110EBB2A00221234 /* CustomTableView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 01001002110EBB2A00221234 /* CustomTableView.mm */; }; 010CC625110927A2006EFFE9 /* QuestionMark.png in Resources */ = {isa = PBXBuildFile; fileRef = 010CC624110927A2006EFFE9 /* QuestionMark.png */; }; 01466A931104062500088464 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01466A921104062500088464 /* Security.framework */; }; 01466C2A110408CC00088464 /* SecurityInterface.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01466C29110408CC00088464 /* SecurityInterface.framework */; }; @@ -54,6 +56,8 @@ /* End PBXBuildFile section */ /* Begin PBXFileReference section */ + 01001001110EBB2A00221234 /* CustomTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CustomTableView.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/CustomTableView.h; sourceTree = SOURCE_ROOT; }; + 01001002110EBB2A00221234 /* CustomTableView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CustomTableView.mm; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/CustomTableView.mm; sourceTree = SOURCE_ROOT; }; 010CC624110927A2006EFFE9 /* QuestionMark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = QuestionMark.png; path = Resources/QuestionMark.png; 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; }; @@ -174,6 +178,8 @@ 019930FD110A0E6F003B056E /* PeripheralsController.mm */, 01993113110A0EB9003B056E /* AdvancedSetupController.h */, 01993114110A0EB9003B056E /* AdvancedSetupController.mm */, + 01001001110EBB2A00221234 /* CustomTableView.h */, + 01001002110EBB2A00221234 /* CustomTableView.mm */, 01D5D9C5110D723200AAE2C3 /* file_util.h */, 01993198110A2C61003B056E /* string_util.h */, 01AF5E68110C1C6800816AA8 /* string_util.cpp */, @@ -252,6 +258,7 @@ 01AF5E6D110C1C9C00816AA8 /* KernOptionsParser.h in Headers */, 01D5D9C6110D723200AAE2C3 /* file_util.h in Headers */, 01D5DBE0110DA3CD00AAE2C3 /* GroupControllerProtocol.h in Headers */, + 01001003110EBB2A00221234 /* CustomTableView.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -346,6 +353,7 @@ 01993568110AA9FA003B056E /* ChameleonPropertyList.cpp in Sources */, 01AF5E69110C1C6800816AA8 /* string_util.cpp in Sources */, 01AF5E6C110C1C9C00816AA8 /* KernOptionsParser.cpp in Sources */, + 01001004110EBB2A00221234 /* CustomTableView.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; Index: trunk/ChameleonPrefPane/bin/OSX105/Chameleon.zip =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/ChameleonPrefPane/bin/OSX106/Chameleon.zip =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/ChameleonPrefPane/bin/version =================================================================== --- trunk/ChameleonPrefPane/bin/version (revision 60) +++ trunk/ChameleonPrefPane/bin/version (revision 61) @@ -1 +1 @@ -2.0.b5 +2.0.b6 Index: trunk/ChameleonPrefPane/English.lproj/Chameleon.xib =================================================================== --- trunk/ChameleonPrefPane/English.lproj/Chameleon.xib (revision 60) +++ trunk/ChameleonPrefPane/English.lproj/Chameleon.xib (revision 61) @@ -58,7 +58,7 @@ 268 - {{13, 13}, {610, 38}} + {{13, 5}, {610, 46}} SFAuthorizationView @@ -85,7 +85,7 @@ 72482368 138544128 - Version 2.0 b4 + Version 2.0 b6 LucidaGrande 11 @@ -679,7 +679,7 @@ - {{7, 2}, {467, 256}} + {{9, 2}, {467, 256}} 562 @@ -2550,7 +2550,7 @@ 268 - {{625, 6}, {39, 38}} + {{625, 7}, {39, 38}} YES @@ -2593,7 +2593,7 @@ {1.79769e+308, 1.79769e+308} - + 256 YES @@ -2602,6 +2602,7 @@ 268 {{245, 218}, {38, 17}} + YES 68288064 @@ -2621,6 +2622,7 @@ 268 {{182, 218}, {52, 17}} + YES 68288064 @@ -2637,6 +2639,7 @@ 268 {{46, 49}, {373, 154}} + YES -1805517311 @@ -2655,6 +2658,8 @@ {464, 255} + + {{0, 0}, {1920, 1058}} {1.79769e+308, 1.79769e+308} @@ -3868,8 +3873,8 @@ YES + - @@ -3917,12 +3922,12 @@ YES - + @@ -4251,10 +4256,10 @@ YES - + @@ -5323,6 +5328,7 @@ -3.IBPluginDependency 100.IBPluginDependency 101.IBPluginDependency + 102.CustomClassName 102.IBPluginDependency 103.IBPluginDependency 104.IBPluginDependency @@ -5590,6 +5596,7 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + CustomTableView com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -5763,12 +5770,10 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - ToolTip - - ToolTip - - U2V0IHRoZSBib290IHBhcnRpdGlvbnMgaGQoeCx5KSB0byBoaWRlICAgICAgICAgICAgICAgICAgd2hl -cmUgJ3gnIGlzIHRoZSBkaXNrIG51bWJlciwgJ3knIHRoZSBwYXJ0aXRpb24gbnVtYmVyCg + YES + + + YES com.apple.InterfaceBuilder.CocoaPlugin @@ -5784,11 +5789,10 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - ToolTip - - ToolTip - - Sets the boot partitions "hd(x,y) MyVolumeName " where 'x' is the disk number, 'y' the partition number and MyVolumeName is the alias you want to give to this partition. (i.e: useful for renaming System Reserved boot partition for Windows 7) + YES + + + YES com.apple.InterfaceBuilder.CocoaPlugin @@ -6303,11 +6307,10 @@ com.apple.InterfaceBuilder.CocoaPlugin - ToolTip - - ToolTip - - Sets the boot partitions "hd(x,y) MyVolumeName " where 'x' is the disk number, 'y' the partition number and MyVolumeName is the alias you want to give to this partition. (i.e: useful for renaming System Reserved boot partition for Windows 7) + YES + + + YES com.apple.InterfaceBuilder.CocoaPlugin @@ -6591,7 +6594,7 @@ NSTableColumn NSTableColumn NSTableColumn - NSTableView + CustomTableView NSButton NSButton NSButton @@ -6604,6 +6607,14 @@ + CustomTableView + NSTableView + + IBProjectSource + ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/CustomTableView.h + + + FirstResponder NSObject