patch from ciaran for #757 to add separate download locations for each group (when added)

This commit is contained in:
Mitchell Livingston 2008-11-30 19:23:15 +00:00
parent 1dde7e9557
commit 452c66d9d8
6 changed files with 521 additions and 68 deletions

View File

@ -257,22 +257,25 @@
[fController askOpenConfirmed: self add: YES]; //ensure last, since it releases this controller
}
- (void) setDestination: (NSString *) destination
{
[fDestination release];
fDestination = [destination retain];
[fLocationField setStringValue: [fDestination stringByAbbreviatingWithTildeInPath]];
[fLocationField setToolTip: fDestination];
ExpandedPathToIconTransformer * iconTransformer = [[ExpandedPathToIconTransformer alloc] init];
[fLocationImageView setImage: [iconTransformer transformedValue: fDestination]];
[iconTransformer release];
[fTorrent changeDownloadFolder: fDestination];
}
- (void) folderChoiceClosed: (NSOpenPanel *) openPanel returnCode: (NSInteger) code contextInfo: (void *) contextInfo
{
if (code == NSOKButton)
{
[fDestination release];
fDestination = [[[openPanel filenames] objectAtIndex: 0] retain];
[fLocationField setStringValue: [fDestination stringByAbbreviatingWithTildeInPath]];
[fLocationField setToolTip: fDestination];
ExpandedPathToIconTransformer * iconTransformer = [[ExpandedPathToIconTransformer alloc] init];
[fLocationImageView setImage: [iconTransformer transformedValue: fDestination]];
[iconTransformer release];
[fTorrent changeDownloadFolder: fDestination];
}
[self setDestination: [[openPanel filenames] objectAtIndex: 0]];
else
{
if (!fDestination)
@ -289,6 +292,9 @@
- (void) changeGroupValue: (id) sender
{
fGroupValue = [sender tag];
if ([[GroupsController groups] usesCustomDownloadLocationForIndex: fGroupValue] &&
[[GroupsController groups] customDownloadLocationForIndex: fGroupValue])
[self setDestination: [[GroupsController groups] customDownloadLocationForIndex: fGroupValue]];
}
- (void) sameNameAlertDidEnd: (NSAlert *) alert returnCode: (NSInteger) returnCode contextInfo: (void *) contextInfo

View File

@ -44,6 +44,12 @@
- (NSColor *) colorForIndex: (NSInteger) index;
- (void) setColor: (NSColor *) color forIndex: (NSInteger) index;
- (BOOL) usesCustomDownloadLocationForIndex: (NSInteger) index;
- (void) setUsesCustomDownloadLocation: (BOOL) useCustomLocation forIndex: (NSInteger) index;
- (NSString *) customDownloadLocationForIndex: (NSInteger) index;
- (void) setCustomDownloadLocation: (NSString *) location forIndex: (NSInteger) index;
- (void) addNewGroup;
- (void) removeGroupWithRowIndex: (NSInteger) row;

View File

@ -166,6 +166,41 @@ GroupsController * fGroupsInstance = nil;
[[NSNotificationCenter defaultCenter] postNotificationName: @"UpdateGroups" object: self];
}
- (BOOL) usesCustomDownloadLocationForIndex: (NSInteger) index
{
NSInteger orderIndex = [self rowValueForIndex: index];
return orderIndex != -1 ? [[[fGroups objectAtIndex: orderIndex] objectForKey: @"UsesCustomDownloadLocation"] boolValue] : NO;
}
- (void) setUsesCustomDownloadLocation: (BOOL) useCustomLocation forIndex: (NSInteger) index
{
NSMutableDictionary * dict = [fGroups objectAtIndex: [self rowValueForIndex: index]];
[dict setObject: [NSNumber numberWithBool:useCustomLocation] forKey: @"UsesCustomDownloadLocation"];
[[GroupsController groups] saveGroups];
[[NSNotificationCenter defaultCenter] postNotificationName: @"UpdateGroups" object: self];
}
- (NSString *) customDownloadLocationForIndex: (NSInteger) index
{
NSInteger orderIndex = [self rowValueForIndex: index];
return orderIndex != -1 ? [[fGroups objectAtIndex: orderIndex] objectForKey: @"CustomDownloadLocation"] : nil;
}
- (void) setCustomDownloadLocation: (NSString *) location forIndex: (NSInteger) index
{
NSMutableDictionary * dict = [fGroups objectAtIndex: [self rowValueForIndex: index]];
if (location)
[dict setObject: location forKey: @"CustomDownloadLocation"];
else
[dict removeObjectForKey: @"CustomDownloadLocation"];
[[GroupsController groups] saveGroups];
[[NSNotificationCenter defaultCenter] postNotificationName: @"UpdateGroups" object: self];
}
- (void) addNewGroup
{
//find the lowest index

View File

@ -33,8 +33,12 @@
IBOutlet NSColorWell * fSelectedColorView;
IBOutlet NSTextField * fSelectedColorNameField;
IBOutlet NSButton * fCustomLocationEnableCheck;
IBOutlet NSPopUpButton * fCustomLocationPopUp;
}
- (void) addRemoveGroup: (id) sender;
- (IBAction) toggleUseCustomDownloadLocation: (id) sender;
- (IBAction) customDownloadLocationSheetShow: (id) sender;
@end

View File

@ -25,6 +25,8 @@
#import "GroupsWindowController.h"
#import "GroupsController.h"
#import "NSApplicationAdditions.h"
#import "ExpandedPathToPathTransformer.h"
#import "ExpandedPathToIconTransformer.h"
#define GROUP_TABLE_VIEW_DATA_TYPE @"GroupTableViewDataType"
@ -175,6 +177,57 @@
}
}
- (void) customDownloadLocationSheetShow: (id) sender
{
NSOpenPanel * panel = [NSOpenPanel openPanel];
[panel setPrompt: NSLocalizedString(@"Select", "Preferences -> Open panel prompt")];
[panel setAllowsMultipleSelection: NO];
[panel setCanChooseFiles: NO];
[panel setCanChooseDirectories: YES];
[panel setCanCreateDirectories: YES];
[panel beginSheetForDirectory: nil file: nil types: nil
modalForWindow: [fCustomLocationPopUp window] modalDelegate: self didEndSelector:
@selector(customDownloadLocationSheetClosed:returnCode:contextInfo:) contextInfo: nil];
}
- (IBAction) toggleUseCustomDownloadLocation: (id) sender
{
NSInteger index = [[GroupsController groups] indexForRow: [fTableView selectedRow]];
if ([fCustomLocationEnableCheck state] == NSOnState)
{
if ([[GroupsController groups] customDownloadLocationForIndex: index])
[[GroupsController groups] setUsesCustomDownloadLocation: YES forIndex: index];
else
[self customDownloadLocationSheetShow: nil];
}
else
[[GroupsController groups] setUsesCustomDownloadLocation: NO forIndex: index];
[fCustomLocationPopUp setEnabled: ([fCustomLocationEnableCheck state] == NSOnState)];
}
- (void) customDownloadLocationSheetClosed: (NSOpenPanel *) openPanel returnCode: (int) code contextInfo: (void *) info
{
NSInteger index = [[GroupsController groups] indexForRow: [fTableView selectedRow]];
NSString * path = [[GroupsController groups] customDownloadLocationForIndex: index];
if (code == NSOKButton)
{
path = [[openPanel filenames] objectAtIndex: 0];
[[GroupsController groups] setCustomDownloadLocation: path forIndex: index];
[[GroupsController groups] setUsesCustomDownloadLocation: YES forIndex: index];
[self updateSelectedColor]; // Update the popup's icon/title
}
else if (!path)
{
[[GroupsController groups] setUsesCustomDownloadLocation: NO forIndex: index];
[fCustomLocationEnableCheck setState: NSOffState];
}
[fCustomLocationPopUp selectItemAtIndex: 0];
}
@end
@implementation GroupsWindowController (Private)
@ -189,6 +242,21 @@
[fSelectedColorView setEnabled: YES];
[fSelectedColorNameField setStringValue: [[GroupsController groups] nameForIndex: index]];
[fSelectedColorNameField setEnabled: YES];
[fCustomLocationEnableCheck setState: [[GroupsController groups] usesCustomDownloadLocationForIndex: index]];
[fCustomLocationPopUp setEnabled: ([fCustomLocationEnableCheck state] == NSOnState)];
if ([[GroupsController groups] customDownloadLocationForIndex: index])
{
NSString * location = [[GroupsController groups] customDownloadLocationForIndex: index];
ExpandedPathToPathTransformer * pathTransformer = [[[ExpandedPathToPathTransformer alloc] init] autorelease];
[[fCustomLocationPopUp itemAtIndex: 0] setTitle: [pathTransformer transformedValue: location]];
ExpandedPathToIconTransformer * iconTransformer = [[[ExpandedPathToIconTransformer alloc] init] autorelease];
[[fCustomLocationPopUp itemAtIndex: 0] setImage: [iconTransformer transformedValue: location]];
}
else
{
[[fCustomLocationPopUp itemAtIndex: 0] setTitle: @""];
[[fCustomLocationPopUp itemAtIndex: 0] setImage: nil];
}
}
else
{
@ -196,6 +264,8 @@
[fSelectedColorView setEnabled: NO];
[fSelectedColorNameField setStringValue: @""];
[fSelectedColorNameField setEnabled: NO];
[fCustomLocationEnableCheck setEnabled: NO];
[fCustomLocationPopUp setEnabled: NO];
}
}

View File

@ -1,27 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.03">
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.02">
<data>
<int key="IBDocument.SystemTarget">1050</int>
<string key="IBDocument.SystemVersion">9F33</string>
<string key="IBDocument.InterfaceBuilderVersion">677</string>
<string key="IBDocument.InterfaceBuilderVersion">672</string>
<string key="IBDocument.AppKitVersion">949.34</string>
<string key="IBDocument.HIToolboxVersion">352.00</string>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
<integer value="1760"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
</object>
<object class="NSMutableDictionary" key="IBDocument.Metadata">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
</object>
<object class="NSMutableArray" key="IBDocument.RootObjects" id="951209067">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSCustomObject" id="511492310">
@ -367,7 +359,7 @@
<string key="NSExtension">NSResponder</string>
</object>
<object class="NSCustomView" id="314557528">
<nil key="NSNextResponder"/>
<reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -376,6 +368,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{13, 10}, {509, 272}}</string>
<reference key="NSSuperview" ref="314557528"/>
<reference key="NSWindow"/>
<object class="NSMutableArray" key="NSTabViewItems">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSTabViewItem" id="73412354">
@ -389,6 +382,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{280, 192}, {182, 26}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="90676977">
<int key="NSCellFlags">-2076049856</int>
@ -492,6 +486,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{104, 198}, {174, 17}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="17039439">
<int key="NSCellFlags">67239424</int>
@ -508,6 +503,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{40, 198}, {62, 17}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="928268714">
<int key="NSCellFlags">67239424</int>
@ -524,6 +520,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{105, 129}, {188, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="617366714">
<int key="NSCellFlags">67239424</int>
@ -546,6 +543,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{105, 19}, {181, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="43391012">
<int key="NSCellFlags">67239424</int>
@ -568,6 +566,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{289, 14}, {182, 26}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="325815098">
<int key="NSCellFlags">-2076049856</int>
@ -640,6 +639,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{36, 20}, {66, 17}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="89538612">
<int key="NSCellFlags">67239424</int>
@ -656,6 +656,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{105, 172}, {178, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="631844593">
<int key="NSCellFlags">67239424</int>
@ -678,6 +679,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{286, 167}, {182, 26}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="706439761">
<int key="NSCellFlags">-2076049856</int>
@ -750,6 +752,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{105, 93}, {283, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="737399332">
<int key="NSCellFlags">67239424</int>
@ -772,6 +775,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{105, 149}, {192, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="698939556">
<int key="NSCellFlags">67239424</int>
@ -794,6 +798,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{124, 53}, {197, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="728696603">
<int key="NSCellFlags">67239424</int>
@ -816,6 +821,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{17, 94}, {86, 17}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="184279790">
<int key="NSCellFlags">67239424</int>
@ -832,6 +838,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{124, 73}, {235, 18}}</string>
<reference key="NSSuperview" ref="833882848"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="735010614">
<int key="NSCellFlags">67239424</int>
@ -852,6 +859,7 @@
</object>
<string key="NSFrame">{{10, 33}, {489, 226}}</string>
<reference key="NSSuperview" ref="463462813"/>
<reference key="NSWindow"/>
</object>
<string key="NSLabel">Adding</string>
<reference key="NSColor" ref="977951849"/>
@ -1521,11 +1529,13 @@
</object>
</object>
<string key="NSFrameSize">{535, 288}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<string key="NSClassName">NSView</string>
<string key="NSExtension">NSResponder</string>
</object>
<object class="NSCustomView" id="284666863">
<nil key="NSNextResponder"/>
<reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -1588,45 +1598,102 @@
<reference ref="8"/>
<object class="NSCachedImageRep">
<object class="NSData" key="NSTIFFRepresentation">
<bytes key="NS.bytes">TU0AKgAABIiAACBQOCQWDQeEQmDAuBv6BveFRGJROKD0VBRGO52vVlNV0vdVRSRRQDQMEwMEQIAhMJBc
MDhPmkbpBaLtotleusFshvNtqoMAP9/uqDyWBA8CAYDBkFgoFhkFAoGBgFgwFhUIhAJCAMhsOB4MhoMh
0KBYLBWWBIIgV/vcFFQFNAAON5ydbPkVgBCn46El9vp9LiCCUTCdAk4pFYxioUCUHhgMhkEBrIAQJSwA
VYFADAPoAA8HA+BAKBPV6PgAOlqKsABx4LUAPBzSdjBEqAA1m01Hd3ut0IqCBQKhc5pZNJtElUoE0BvX
nAB938AAQCAXMgwGABzOVygBnL5fAAbkolABvuBugAQPtYgAEvJpgB5N3PNsRnAAGM3ndQN5sGkMKCOo
AoeEEQpElgOA3jSCZ4nieQAAQA4DgAA8JAApUKHodB0AAaBYleAB8H2f4AAiF4JgAFwJGGAB+ndDp8HA
eIAHCDI1gAN5Fk6ZJiF2WojIHCCBBAM42jkXZHkSQwSKCfoAAKBDNgI0gAHmex8gAVZRFKAARhED6BHE
cQAA0DxtgADwNHO6B2RofZzHY7QFisABFFybx1FES5HhwgZvoGCIoiuLRbk4S5LBufp+n2AB1HWdoAH4
fNGnMcS5HKcRqgAd58gpEwDnsAAuiIelOG4bIAHodiHAqCVTHWfE/FIb4MH8QI8DgIiBH+X6BgGHohiM
V5SlEUYmgEAKHGEXT2giBQAwwfxqPcA0UnoezsgmCJ5xUFh6gAYBWzQf7LAAHIVQ6cxwAiABhgGJkct0
ObTHgRyCBcGAaE2VBUFSMgRBEDwAGKXxdQifxxgAfx4mK6AHCgAB7ny1AgBedIAAGfEyFqW8n0nboliB
Gh3GhbpqA3HAyjgOpPHKcBuDGggPBCEhCWMUo9h4HAaAAbJvHM7Rqk4AAHAOzYQhwNwAHYb5bgAE4P4U
dRnzQfAMjKAByGUVkVAsZzOHDSJtg8N4ADUQpMmKaBkGAI6CAiCQKjQS5Nk8S4rileJum/MhhFkSwAA+
FAfNaEISxMARjAACQFqIapjIgB4bjbThrV8EJ7FDSR2YwcoHiuABBFia50FaUpNiCgkLAWJZEkaSRZjY
NAwACcJvUAcBwHCAAWBgGbzGwYAABqFSiH2dk2HAbFTAgCgJIEeOFAMd5vbCdYAFobYGn+T5yAeeZjl+
W14oGAQBAGGI6j2QZikIPw7ATJ6BHpK4AGx/E0gKZgAAwCikR/D3UaP8fa4B+j0QgP4ekBh5GeH6g4AA
rRfDjHyG0Vg3wumAHyLkggAXzglCkFgMIxQYguBWBIckKR2jZG2NsdwNAUAbA6IUOIMQFj/H8uAf4+R+
HQHaqYdQ5h3naHQPAfY4RxDqHiNwbo4xzjPG6O4ZwtBqDpDmP0fw/1IkGAaAoBoDQiD4HsPgfI/lGJkI
EA4OYYAmCSBUBwBADxojSG6Odvo7R0jlHaPMcA5x4D1GuO8eg+xvj4KEnIgQ7iBvYIEZ4hS0VeERAQAM
gQJ35qNIEh0gS3SBQ9kiSMg5AQAADwEAAAMAAAABABIAAAEBAAMAAAABABIAAAECAAMAAAAEAAAFQgED
AAMAAAABAAUAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAESAAMAAAABAAEAAAEVAAMAAAABAAQAAAEW
AAMAAAABBxwAAAEXAAQAAAABAAAEfwEcAAMAAAABAAEAAAE9AAMAAAABAAIAAAFSAAMAAAABAAEAAAFT
AAMAAAAEAAAFSodzAAcAAAO4AAAFUgAAAAAACAAIAAgACAABAAEAAQABAAADuGFwcGwCAAAAbW50clJH
QiBYWVogB9gACAAPABYAAwAIYWNzcEFQUEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPbWAAEAAAAA
0y1hcHBslih+6N885awt0CqZyNtBlwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOclhZWgAA
ASwAAAAUZ1hZWgAAAUAAAAAUYlhZWgAAAVQAAAAUd3RwdAAAAWgAAAAUY2hhZAAAAXwAAAAsclRSQwAA
AagAAAAOZ1RSQwAAAbgAAAAOYlRSQwAAAcgAAAAOdmNndAAAAdgAAAAwbmRpbgAAAggAAAA4ZGVzYwAA
AkAAAABfZHNjbQAAAqAAAADMbW1vZAAAA2wAAAAoY3BydAAAA5QAAAAkWFlaIAAAAAAAAHCiAAA5jQAA
AxhYWVogAAAAAAAAXdMAALFuAAAXt1hZWiAAAAAAAAAoYQAAFTcAALhRWFlaIAAAAAAAAPNpAAEAAAAB
aBRzZjMyAAAAAAABGV8AAAsd///pZAAADooAAP0W///4P///++0AAAaUAACUN2N1cnYAAAAAAAAAAQHN
AABjdXJ2AAAAAAAAAAEBzQAAY3VydgAAAAAAAAABAc0AAHZjZ3QAAAAAAAAAAQAA2mMAAAAAAAEAAAAA
2mMAAAAAAAEAAAAA2mMAAAAAAAEAAG5kaW4AAAAAAAAAMAAAosAAAFPAAABHQAAAmYAAACZXAAASGwAA
SIAAAExAAAIcKQACHCkAAhwpZGVzYwAAAAAAAAAFZU1hYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWx1YwAA
AAAAAAAPAAAADG5iTk8AAAAIAAAAxHN2U0UAAAAIAAAAxGZpRkkAAAAIAAAAxGRhREsAAAAIAAAAxHpo
Q04AAAAIAAAAxGZyRlIAAAAIAAAAxGphSlAAAAAIAAAAxGVuVVMAAAAIAAAAxHB0QlIAAAAIAAAAxGVz
RVMAAAAIAAAAxHpoVFcAAAAIAAAAxGtvS1IAAAAIAAAAxGRlREUAAAAIAAAAxG5sTkwAAAAIAAAAxGl0
SVQAAAAIAAAAxABlAE0AYQBjbW1vZAAAAAAAAAYQAACdBwAAAAChuxOAAAAAAAAAAAAAAAAAAAAAAHRl
eHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJbmMuLCAyMDA4AA</bytes>
<bytes key="NS.bytes">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
AAAAAAAAAAEBzQAAY3VydgAAAAAAAAABAc0AAHZjZ3QAAAAAAAAAAAADAQAAAgAAASQBpgJ6A3wEfAV+
BoAHggiDCUQJxQqHC4gMiQ2MDrYQaBGREpETkhSUFZUWlReXGMUabxubHJsdnR7IIHUhoiKjI88leyam
J9EpfiqrK9Ytgi6tL9oxhzKyM981jDa2N+E5jjq6O+Y9kz6+P+pBlkLCQ+5FmkbGR/JJn0rKS/ZNok7O
T9BQ0FHRUvxUqlXVVtZX11jYWgRbsVzcXd1e3l/fYOBiDGO5ZORl5WbmZ+do6GnpaxVswW3tbu5v73Dw
cfFy8nP0dPR19Xb2d/d4+Hn5evp7/Hz8ff1/KYDVggGDAoQDhQSGBYcGiAeJCIoJiwqMC40Mjg2PDpAP
kRCSEZMSlBOVFJYVlxaYF5kYmhmbGpwbnRyeHZ8eoB+hIKIhoyKkI6UkpiWnJ6gnqSiqKasqq+usbK0s
ri2vL7AwsTGyMbMytDS1NbY2tva3drg3uTi6Ors7vDy9PL49vv6/f8A/wUDCQcNCxEPFBMWExkXHRshH
yUnKScsKy4vMS81Mzk7PDs+P0FDRUdJS0xLTktRT1VTWVdcW15fYV9lY2lrbGtub3FzdXN5d3x7fn+Bf
4WDiIeKi42LkY+Vk5iXmpudm6GfpaOop6qrrauxr7WzuLe6u727wb/Fw8jHysvNy9HP1dPY19rb3dvh4
+Xn6efs6+7v8e/18/j3+vv//AAABIwIOAvADywSrBZMGfAdnCFQJQwo0CycMJw0YDhcPGBAYERUSJhMo
FDgVTBZeF3MYjhmvGssb6R0THjYfZyCYIccjASQ9JXEmsSfvKSgqbCu7LQMuQS+RMOEyKTOGNNc2Kjdw
OMU6Fzt4PMw+Fj9vQMJCJEN7RNFGHkd4SL1J+UsxTGVNlU7RUA5RR1J4U6VU1FYKV0BYcVmdWsZb710f
Xk9femCiYcVi6WQVZT9mWGd+aKBpwGrda/ltE24rb0RwaHF8cpBzonS1dch223fqePZ6A3sRfCB9LH41
f0CAS4FPgluDYIRlhWyGdIdyiICJgIqDi4mMko2LjpqPmZCXkZGSnJOSlJaVmJaol6eYrpmomqubr5y8
nbyexZ/MoNGh06LTo9Ok26Xkpuen4qjlqe+q8avvrO6t8q7vr+uw7LHnsuGz4rTatdG2ybfAuLe5r7qc
u5K8gL1tvlu/S8A8wSrCEsL5w+DEysW0xpPHcshTyTbKG8r/y9rMtM2KzlrPI8/m0LPRfdJF0w7T3dSg
1WrWM9b9183Yk9ld2ina89u63ILdS94U3t7fqeBz4TviBOLK45TkXuUn5ezmuueB6ErpFend6qTrbOw1
7P7tye6S71vwJPDs8bPyfPNH9BL02PWl9m/3OfgD+Mf5kfpb+yP77fy2/YD+Sf8W//8AAACDAXgCegM7
A7oEfQU/Bb8GgQeFCEYIxQmGCocLigxKDMsNjQ6ND44QTxDPEZASkhOTFJMVVBXUFpYXlhiYGZoamxub
HJwdXB3dHp8foCChIaEioSOjJKQlpSamJ6coqCmpKmkq6iuqLKwtrS6uL68wsDGxMrIzszS0NbY2tje2
OHg4+Dm6Oro7uzy8Pb0+fj7+P79AwEHBQsJDw0SERQRFxUbGR8dIyEnJSspLi0wMTMxNzU7OT89QkFEQ
UdFS0lPTVNRV1laWVxZX11jYWdla2lubXBtc3F3dXt9f4GDgYaFiIWLiY+Nk5GXlZqZnJmfnaOhp6Wrq
a6tsLGzsbe1u7m/vcPBx8XLyc/N09HX1dvZ393i4eTh5+Xr6e/t8/H39fv5//4EAggKDAoQDhQSGBYcH
iAeJCInJikqLC4wMjQyODY8PkBCREZIRkxKUE5UUlhaXF5gYmRiaGZsanBydHJ4dnx6gH6EgoiGi4qNj
pCOlJKYmpyaoJ6koqimrKqwsrS2uLq8vsDCxMbIxszK0M7U0tjW3N7g3uTi6Obs7vDu9PL4+vz7AP8FA
wkHDQsRDxUXGRsdGyEfJSMpJy0vMds4iz07QUNFQ0lHTfdUq1lbXV9iC2i/bWtyG3jPfieE14ozkZOY7
55Hpaetq7Wzvb/GK9Fr2j/mL/VL//wAAbmRpbgAAAAAAAAY2AACWKwAAVpoAAFOiAACGKwAAJ18AABao
AABQDQAAVDkAAgUeAAI9cAABSj0AAwEAAAIAAAABABAAHQAuAEIAWQBzAJAAsAD4ASABSwF4AagBzgHn
Ag8CRwKBAr0C/AM9A4EDxgP8BCEEWQSmBPUFRgWFBa8F7wZHBqEG5gcVB1wHvQgHCDkIhAjrCToJbwnA
Ci0KgAq4Cw4LgQvZDBQMbgzoDUUNgw3hDmEOwg8DD2YP7BBREJYQ/RGJEfISOhKlEzcTpRPvFF8U9xVp
FbYWKxbHF2YYBxiqGSUZdxn0Gp0bRxvzHKAdJB18HgEetR9qICEg2iGUIiIigCMPI88kkSVVJhom4ier
KEMoqSlCKhEq4SuzLIctXC4zLwwv5zDEMaIygjNkNEc1LDYTNvw35jiXOQ45wDqwO6E8lD2IPn8/d0Bx
QWxCaUNoRGhFa0ZuR3RIe0mESo9Lm0ypTbhOyU/cUPFSB1MeVDhVU1ZwV45YrlnQWvNcGF0+XmZfkGC7
YehjF2RHZXlmrGkYalBrimzFbgJvQXCBccNzBnRLdZJ4JHlverx8Cn1afqx//4FUhAKFXIa3iBOJcYrR
jZWO+ZBfkcaTL5Sal3OY45pTm8WerqAloZ2jF6YQp46pDqqPrZevHbCksi21RLbRuGG58b0XvqzAQsN0
xQ/GrMhKy4rNLc7R0HbTxtVw1xvYyNwm3djfiuE/5KzmZOgf6drtVu8W8NfymvRf9+z5tft//xj//wAA
AAIACgAXACkAPwBYAHUAlQC4AN4BBwEwAV8BjgG/AfMCKgJfApoC1AMPA00DjAPNBA0ETwSVBNsFIAVp
BbAF+AZDBo8G2QclB3UHwwgSCGQIuAkLCVwJrgoECl4KtAsKC2MLvwwVDHAMzQ0qDY0N7A5MDq8PDQ9v
D9YQQBCkEQ4RdhHbEkYSsRMgE5IT/hRzFO0VahXqFmwW8hd0F/YYehkBGYwaGhqqGzkbxhxWHOkdgB4Z
HrYfUR/qIIYhJiHIIm4jFyO+JGMlDCXBJm4nHyfSKIkpQin9KrsrfCw9LPctvy6IL1QwITDvMb8ykTNq
NEQ1HjX7NtU3uTidOYE6ZztXPD09Lz4hPxJABEEDQfJC8UPvROtF5kbzR+tI9UoCSxRMF00xTj5PT1BS
UWtSeVObVLJVzFbbV/xZFFovW05ccV2ZXsVf52EJYjBjaGSaZb9m8GgpaWVql2vVbRtuVW+bcOhyKHN2
dMl2HXdzeMp6I3uOfOp+WX/IgTaCpYQShY6HEoiWihiLm401js6QZZH6k42VN5blmJ6aapxVnimgBaHs
o8KltaeZqYarY61cr0axOLM0tS63LbkouyW9KL8wwT/DSMVRx2zJccuRzaDPvNHe0//WH9g92mTci966
4OzjGeVC54DpqOvk7hrwZvKe9Ob3KPlu+7b+Af//AAAABgAQAB0AQgBZAJAAsADSASABSwF4AagCDwJH
AoECvQM9A4EDxgQPBFkE9QVGBZoF7wZHBqEG/gdcCB8IhAjrCVQJwAotCpwLDguBC/cMbgzoDWQOYQ7j
D2YP7BBzEP0RiRIWEqUTNxPKFF8U9xWQFscXZhgHGKoZThn0G0cb8xygHVAeAR61ICEg2iGUIlEjDyPP
JJEmGibiJ6sodilCKuErsyyHLVwuMy8MMMQxojKCM2Q0RzYTNvw35jjSOcA6sDyUPYg+fz93QHFCaUNo
RGhFa0ZuSHtJhEqPS5tMqU24TslP3FDxUgdTHlQ4VVNXjliuWdBa81wYXT5eZl+QYLth6GMXZEdleWas
Z+FpGGpQbMVuAm9BcIFxw3MGdEt1knbaeCR5b3q8fAp9Wn6sf/+BVIKqhAKFXIa3iBOJcYrRjDKO+ZBf
kcaTL5SalgaXc5jjmlObxZ05nq6gJaGdoxekk6YQp46pDqqPrBKtl68dsKSyLbO4tUS20bhhufG7g70X
vqzAQsHaw3TFD8asyErJ6cuKzMTNls7R0HbSHdPG1XDWsNeG2Mjadtwm3WveRN+K4T/ih+Ni5Kzl9ubT
6B/pa+pJ6yjsB+1W7qbvhvBn8UjyKvML8+700PWz9pb3VPfs+IT5Qvon+ub7f/wY/J79Ef2E/ff+pP+L
//8AAGRlc2MAAAAAAAAACkNvbG9yIExDRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtbHVjAAAAAAAAABIAAAAM
bmJOTwAAABIAAADocHRQVAAAABYAAAD6c3ZTRQAAABAAAAEQZmlGSQAAABAAAAEgZGFESwAAABwAAAEw
emhDTgAAAAwAAAFMZnJGUgAAABIAAAFYamFKUAAAAA4AAAFqZW5VUwAAABIAAAF4cGxQTAAAABIAAAGK
cHRCUgAAABgAAAGcZXNFUwAAABIAAAG0emhUVwAAAA4AAAHGcnVSVQAAACQAAAHUa29LUgAAAAwAAAH4
ZGVERQAAABAAAAIEbmxOTAAAABYAAAIUaXRJVAAAABQAAAIqAEYAYQByAGcAZQAtAEwAQwBEAEwAQwBE
ACAAYQAgAEMAbwByAGUAcwBGAOQAcgBnAC0ATABDAEQAVgDkAHIAaQAtAEwAQwBEAEwAQwBEAC0AZgBh
AHIAdgBlAHMAawDmAHIAbV9pgnIAIABMAEMARADJAGMAcgBhAG4AIABMAEMARDCrMOkw/AAgAEwAQwBE
AEMAbwBsAG8AcgAgAEwAQwBEAEsAbwBsAG8AcgAgAEwAQwBEAEwAQwBEACAAQwBvAGwAbwByAGkAZABv
AEwAQwBEACAAYwBvAGwAbwByX2mCcm2yZnaYb3k6VmgEJgQyBDUEQgQ9BD4EOQAgBBYEGgAtBDQEOARB
BD8EOwQ1BDnO7LfsACAATABDAEQARgBhAHIAYgAtAEwAQwBEAEsAbABlAHUAcgBlAG4ALQBMAEMARABM
AEMARAAgAGMAbwBsAG8AcgBpAABtbW9kAAAAAAAABhAAAJxXAAAAAL/4e4AAAAAAAAAAAAAAAAAAAAAA
dGV4dAAAAABDb3B5cmlnaHQgQXBwbGUsIEluYy4sIDIwMDgAA</bytes>
</object>
<string key="NSCacheWindowColorSpace">NSCalibratedRGBColorSpace</string>
<int key="NSCacheWindowBPS">8</int>
@ -1830,8 +1897,119 @@ eHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJbmMuLCAyMDA4AA</bytes>
<bytes key="NSRGB">MC4wNTgxMzA0OTkgMC4wNTU1NDE4OTkgMQA</bytes>
</object>
</object>
<object class="NSPopUpButton" id="119227485">
<reference key="NSNextResponder" ref="284666863"/>
<int key="NSvFlags">256</int>
<string key="NSFrame">{{336, 107}, {182, 26}}</string>
<reference key="NSSuperview" ref="284666863"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="1012387126">
<int key="NSCellFlags">-2076049856</int>
<int key="NSCellFlags2">2048</int>
<reference key="NSSupport" ref="86725571"/>
<reference key="NSControlView" ref="119227485"/>
<int key="NSButtonFlags">109199615</int>
<int key="NSButtonFlags2">1</int>
<reference key="NSAlternateImage" ref="86725571"/>
<string key="NSAlternateContents"/>
<object class="NSMutableString" key="NSKeyEquivalent">
<characters key="NS.bytes"/>
</object>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
<object class="NSMenuItem" key="NSMenuItem" id="338800676">
<reference key="NSMenu" ref="675067443"/>
<string key="NSTitle"/>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<int key="NSState">1</int>
<reference key="NSOnImage" ref="550412468"/>
<reference key="NSMixedImage" ref="32510707"/>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="1012387126"/>
</object>
<bool key="NSMenuItemRespectAlignment">YES</bool>
<object class="NSMenu" key="NSMenu" id="675067443">
<object class="NSMutableString" key="NSTitle">
<characters key="NS.bytes">OtherViews</characters>
</object>
<object class="NSMutableArray" key="NSMenuItems">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="338800676"/>
<object class="NSMenuItem" id="343209446">
<reference key="NSMenu" ref="675067443"/>
<bool key="NSIsDisabled">YES</bool>
<bool key="NSIsSeparator">YES</bool>
<string key="NSTitle"/>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="550412468"/>
<reference key="NSMixedImage" ref="32510707"/>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="1012387126"/>
</object>
<object class="NSMenuItem" id="896080470">
<reference key="NSMenu" ref="675067443"/>
<string type="base64-UTF8" key="NSTitle">T3RoZXLigKY</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="550412468"/>
<reference key="NSMixedImage" ref="32510707"/>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="1012387126"/>
</object>
</object>
</object>
<int key="NSPreferredEdge">3</int>
<bool key="NSUsesItemFromMenu">YES</bool>
<bool key="NSAltersState">YES</bool>
<int key="NSArrowPosition">1</int>
</object>
</object>
<object class="NSButton" id="340964805">
<reference key="NSNextResponder" ref="284666863"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{188, 141}, {314, 18}}</string>
<reference key="NSSuperview" ref="284666863"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="725735591">
<int key="NSCellFlags">67239424</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents">Use separate download location for this group</string>
<reference key="NSSupport" ref="86725571"/>
<reference key="NSControlView" ref="340964805"/>
<int key="NSButtonFlags">1211912703</int>
<int key="NSButtonFlags2">130</int>
<reference key="NSNormalImage" ref="1001726176"/>
<reference key="NSAlternateImage" ref="764913887"/>
<string key="NSAlternateContents"/>
<string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
</object>
<object class="NSTextField" id="357514262">
<reference key="NSNextResponder" ref="284666863"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{206, 113}, {126, 17}}</string>
<reference key="NSSuperview" ref="284666863"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="809094197">
<int key="NSCellFlags">68288064</int>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents">Download location:</string>
<reference key="NSSupport" ref="86725571"/>
<reference key="NSControlView" ref="357514262"/>
<reference key="NSBackgroundColor" ref="977951849"/>
<reference key="NSTextColor" ref="400627124"/>
</object>
</object>
</object>
<string key="NSFrameSize">{535, 240}</string>
<reference key="NSSuperview"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="352903881">
@ -6985,6 +7163,38 @@ AAABAAAAAQ</bytes>
</object>
<int key="connectionID">1807</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">fCustomLocationEnableCheck</string>
<reference key="source" ref="981493640"/>
<reference key="destination" ref="340964805"/>
</object>
<int key="connectionID">1818</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">toggleUseCustomDownloadLocation:</string>
<reference key="source" ref="981493640"/>
<reference key="destination" ref="340964805"/>
</object>
<int key="connectionID">1820</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">fCustomLocationPopUp</string>
<reference key="source" ref="981493640"/>
<reference key="destination" ref="119227485"/>
</object>
<int key="connectionID">1821</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">customDownloadLocationSheetShow:</string>
<reference key="source" ref="981493640"/>
<reference key="destination" ref="896080470"/>
</object>
<int key="connectionID">1822</int>
</object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
<object class="NSArray" key="orderedObjects">
@ -9332,6 +9542,9 @@ AAABAAAAAQ</bytes>
<reference ref="873906094"/>
<reference ref="415414007"/>
<reference ref="931871344"/>
<reference ref="340964805"/>
<reference ref="357514262"/>
<reference ref="119227485"/>
</object>
<reference key="parent" ref="37013934"/>
<string key="objectName">Groups</string>
@ -9447,6 +9660,78 @@ AAABAAAAAQ</bytes>
<reference key="object" ref="1066282417"/>
<reference key="parent" ref="284666863"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1808</int>
<reference key="object" ref="119227485"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="1012387126"/>
</object>
<reference key="parent" ref="284666863"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1809</int>
<reference key="object" ref="1012387126"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="675067443"/>
</object>
<reference key="parent" ref="119227485"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1810</int>
<reference key="object" ref="675067443"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="338800676"/>
<reference ref="343209446"/>
<reference ref="896080470"/>
</object>
<reference key="parent" ref="1012387126"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1811</int>
<reference key="object" ref="338800676"/>
<reference key="parent" ref="675067443"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1812</int>
<reference key="object" ref="343209446"/>
<reference key="parent" ref="675067443"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1813</int>
<reference key="object" ref="896080470"/>
<reference key="parent" ref="675067443"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1814</int>
<reference key="object" ref="340964805"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="725735591"/>
</object>
<reference key="parent" ref="284666863"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1815</int>
<reference key="object" ref="725735591"/>
<reference key="parent" ref="340964805"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1816</int>
<reference key="object" ref="357514262"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="809094197"/>
</object>
<reference key="parent" ref="284666863"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">1817</int>
<reference key="object" ref="809094197"/>
<reference key="parent" ref="357514262"/>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="flattenedProperties">
@ -9776,6 +10061,22 @@ AAABAAAAAQ</bytes>
<string>1795.IBPluginDependency</string>
<string>1796.IBPluginDependency</string>
<string>1800.IBPluginDependency</string>
<string>1808.IBPluginDependency</string>
<string>1808.ImportedFromIB2</string>
<string>1809.IBPluginDependency</string>
<string>1810.IBEditorWindowLastContentRect</string>
<string>1810.IBPluginDependency</string>
<string>1810.ImportedFromIB2</string>
<string>1811.IBPluginDependency</string>
<string>1811.ImportedFromIB2</string>
<string>1812.IBPluginDependency</string>
<string>1812.ImportedFromIB2</string>
<string>1813.IBPluginDependency</string>
<string>1813.ImportedFromIB2</string>
<string>1814.IBPluginDependency</string>
<string>1815.IBPluginDependency</string>
<string>1816.IBPluginDependency</string>
<string>1817.IBPluginDependency</string>
<string>190.IBPluginDependency</string>
<string>190.ImportedFromIB2</string>
<string>192.IBPluginDependency</string>
@ -10302,6 +10603,22 @@ AAABAAAAAQ</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<real value="1.000000e+00" id="50227240"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>{{504, 585}, {182, 53}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="50227240"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="50227240"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="50227240"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="50227240"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="761722050"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="761722050"/>
@ -10529,7 +10846,7 @@ AAABAAAAAQ</bytes>
</object>
</object>
<nil key="sourceID"/>
<int key="maxID">1807</int>
<int key="maxID">1822</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
@ -10554,14 +10871,27 @@ AAABAAAAAQ</bytes>
<string key="className">GroupsWindowController</string>
<string key="superclassName">NSWindowController</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">addRemoveGroup:</string>
<string key="NS.object.0">id</string>
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>addRemoveGroup:</string>
<string>customDownloadLocationSheetShow:</string>
<string>toggleUseCustomDownloadLocation:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>fAddRemoveControl</string>
<string>fCustomLocationEnableCheck</string>
<string>fCustomLocationPopUp</string>
<string>fSelectedColorNameField</string>
<string>fSelectedColorView</string>
<string>fTableView</string>
@ -10569,6 +10899,8 @@ AAABAAAAAQ</bytes>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSSegmentedControl</string>
<string>NSButton</string>
<string>NSPopUpButton</string>
<string>NSTextField</string>
<string>NSColorWell</string>
<string>NSTableView</string>