Changeset 13828


Ignore:
Timestamp:
Jan 22, 2013, 12:09:48 AM (8 years ago)
Author:
livings124
Message:

#1220 Initial Mac support for changing file and folder names. Not fully complete.

Location:
trunk
Files:
6 added
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/Transmission.xcodeproj/project.pbxproj

    r13804 r13828  
    170170                A245030C0D6A1FB000B49D00 /* UpArrowGroupTemplate.png in Resources */ = {isa = PBXBuildFile; fileRef = A245030B0D6A1FB000B49D00 /* UpArrowGroupTemplate.png */; };
    171171                A245030E0D6A1FBC00B49D00 /* DownArrowGroupTemplate.png in Resources */ = {isa = PBXBuildFile; fileRef = A245030D0D6A1FBC00B49D00 /* DownArrowGroupTemplate.png */; };
     172                A2451E6916ACE4EB00586E0E /* FileRenameSheetController.m in Sources */ = {isa = PBXBuildFile; fileRef = A2451E6716ACE4EB00586E0E /* FileRenameSheetController.m */; };
     173                A2451E6A16ACE4EB00586E0E /* FileRenameSheetController.xib in Resources */ = {isa = PBXBuildFile; fileRef = A2451E6816ACE4EB00586E0E /* FileRenameSheetController.xib */; };
    172174                A24621410C769D0900088E81 /* trevent.h in Headers */ = {isa = PBXBuildFile; fileRef = A24621350C769CF400088E81 /* trevent.h */; };
    173175                A24621420C769D0900088E81 /* trevent.c in Sources */ = {isa = PBXBuildFile; fileRef = A24621360C769CF400088E81 /* trevent.c */; };
     
    783785                A245030B0D6A1FB000B49D00 /* UpArrowGroupTemplate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = UpArrowGroupTemplate.png; path = macosx/Images/UpArrowGroupTemplate.png; sourceTree = "<group>"; };
    784786                A245030D0D6A1FBC00B49D00 /* DownArrowGroupTemplate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = DownArrowGroupTemplate.png; path = macosx/Images/DownArrowGroupTemplate.png; sourceTree = "<group>"; };
     787                A2451E6616ACE4EB00586E0E /* FileRenameSheetController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileRenameSheetController.h; path = macosx/FileRenameSheetController.h; sourceTree = "<group>"; };
     788                A2451E6716ACE4EB00586E0E /* FileRenameSheetController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileRenameSheetController.m; path = macosx/FileRenameSheetController.m; sourceTree = "<group>"; };
     789                A2451E6816ACE4EB00586E0E /* FileRenameSheetController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = FileRenameSheetController.xib; path = macosx/FileRenameSheetController.xib; sourceTree = "<group>"; };
    785790                A24621350C769CF400088E81 /* trevent.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = trevent.h; path = libtransmission/trevent.h; sourceTree = "<group>"; };
    786791                A24621360C769CF400088E81 /* trevent.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = trevent.c; path = libtransmission/trevent.c; sourceTree = "<group>"; };
     
    14111416                        isa = PBXGroup;
    14121417                        children = (
     1418                                A2451E6616ACE4EB00586E0E /* FileRenameSheetController.h */,
     1419                                A2451E6716ACE4EB00586E0E /* FileRenameSheetController.m */,
     1420                                A2451E6816ACE4EB00586E0E /* FileRenameSheetController.xib */,
    14131421                                4DDBB70A09E16B3200284745 /* GUI */,
    14141422                                A2F35BC315C5A0A100EBF632 /* QuickLookPlugin */,
     
    25392547                                A2DC49C4158430E200758FF1 /* YingYangGroupTemplate@2x.png in Resources */,
    25402548                                A2DC49C6158430FB00758FF1 /* YingYangTemplate@2x.png in Resources */,
     2549                                A2451E6A16ACE4EB00586E0E /* FileRenameSheetController.xib in Resources */,
    25412550                        );
    25422551                        runOnlyForDeploymentPostprocessing = 0;
     
    27502759                                A234EA541453563B000F3E97 /* NSImageAdditions.m in Sources */,
    27512760                                A2AB883E16A399A6008FAD50 /* VDKQueue.m in Sources */,
     2761                                A2451E6916ACE4EB00586E0E /* FileRenameSheetController.m in Sources */,
    27522762                        );
    27532763                        runOnlyForDeploymentPostprocessing = 0;
  • trunk/macosx/Controller.h

    r13806 r13828  
    174174- (void) revealFile: (id) sender;
    175175
     176- (IBAction) renameSelected: (id) sender;
     177
    176178- (void) announceSelectedTorrents: (id) sender;
    177179
  • trunk/macosx/Controller.m

    r13804 r13828  
    4848#import "StatusBarController.h"
    4949#import "FilterBarController.h"
     50#import "FileRenameSheetController.h"
    5051#import "BonjourController.h"
    5152#import "Badger.h"
     
    17391740    if ([paths count] > 0)
    17401741        [[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs: paths];
     1742}
     1743
     1744- (IBAction) renameSelected: (id) sender
     1745{
     1746    NSArray * selected = [fTableView selectedTorrents];
     1747    NSAssert([selected count] == 1, @"1 transfer needs to be selected to rename, but %ld are selected", [selected count]);
     1748    Torrent * torrent = selected[0];
     1749   
     1750    [FileRenameSheetController presentSheetForTorrent:torrent modalForWindow: fWindow completionHandler: ^(BOOL didRename) {
     1751        NSLog(@"finished");
     1752    }];
    17411753}
    17421754
     
    42864298    if (action == @selector(revealFile:))
    42874299        return canUseTable && [fTableView numberOfSelectedRows] > 0;
     4300   
     4301    //enable renaming file/folder
     4302    if (action == @selector(renameSelectedTorrent:))
     4303        return canUseTable && [fTableView numberOfSelectedRows] == 1;
    42884304
    42894305    //enable remove items
  • trunk/macosx/FileListNode.h

    r13251 r13828  
    4141}
    4242
    43 @property (nonatomic, readonly) NSString * name;
    44 @property (nonatomic, readonly) NSString * path;
     43@property (nonatomic, copy, readonly) NSString * name;
     44@property (nonatomic, copy, readonly) NSString * path;
    4545
    4646@property (nonatomic, readonly) Torrent * torrent;
    4747
    4848@property (nonatomic, readonly) uint64_t size;
    49 @property (nonatomic, readonly) NSImage * icon;
     49@property (nonatomic, retain, readonly) NSImage * icon;
    5050@property (nonatomic, readonly) BOOL isFolder;
     51
     52@property (nonatomic, retain, readonly) NSIndexSet * indexes;
    5153
    5254- (id) initWithFolderName: (NSString *) name path: (NSString *) path torrent: (Torrent *) torrent;
     
    5860- (NSString *) description;
    5961
    60 - (NSIndexSet *) indexes;
    61 
    6262- (NSMutableArray *) children;
    6363
     64- (BOOL) updateFromOldName: (NSString *) oldName toNewName: (NSString *) newName inPath: (NSString *) path;
     65
    6466@end
  • trunk/macosx/FileListNode.m

    r13434 r13828  
    4040@synthesize icon = fIcon;
    4141@synthesize isFolder = fIsFolder;
     42@synthesize indexes = fIndexes;
    4243
    4344- (id) initWithFolderName: (NSString *) name path: (NSString *) path torrent: (Torrent *) torrent
     
    105106}
    106107
    107 - (NSIndexSet *) indexes
    108 {
    109     return fIndexes;
    110 }
    111 
    112108- (NSImage *) icon
    113109{
     
    125121}
    126122
     123- (BOOL) updateFromOldName: (NSString *) oldName toNewName: (NSString *) newName inPath: (NSString *) path
     124{
     125    NSParameterAssert(oldName != nil);
     126    NSParameterAssert(newName != nil);
     127    NSParameterAssert(path != nil);
     128   
     129    NSArray * lookupPathComponents = [path pathComponents];
     130    NSArray * thesePathComponents = [self.path pathComponents];
     131   
     132    if ([lookupPathComponents isEqualToArray: thesePathComponents]) //this node represents what's being renamed
     133    {
     134        if ([oldName isEqualToString: self.name])
     135        {
     136            [fName release];
     137            fName = [newName copy];
     138            return YES;
     139        }
     140    }
     141    else if ([lookupPathComponents count] < [thesePathComponents count]) //what's being renamed is part of this node's path
     142    {
     143        lookupPathComponents = [lookupPathComponents arrayByAddingObject: oldName];
     144        const BOOL allSame = NSNotFound == [lookupPathComponents indexOfObjectWithOptions: NSEnumerationConcurrent passingTest: ^BOOL(NSString * name, NSUInteger idx, BOOL * stop) {
     145            return ![name isEqualToString: thesePathComponents[idx]];
     146        }];
     147       
     148        if (allSame)
     149        {
     150            NSString * oldPathPrefix = [path stringByAppendingPathComponent: oldName];
     151            NSString * newPathPrefix = [path stringByAppendingPathComponent: newName];
     152           
     153            [fPath autorelease];
     154            fPath = [[fPath stringByReplacingCharactersInRange: NSMakeRange(0, [oldPathPrefix length]) withString: newPathPrefix] retain];
     155            return YES;
     156        }
     157    }
     158   
     159    return NO;
     160}
     161
    127162@end
    128163
     
    134169    {
    135170        fIsFolder = isFolder;
    136         fName = [name retain];
    137         fPath = [path retain];
     171        fName = [name copy];
     172        fPath = [path copy];
    138173       
    139174        fIndexes = [[NSMutableIndexSet alloc] init];
  • trunk/macosx/FileOutlineController.h

    r13296 r13828  
    5454- (void) revealFile: (id) sender;
    5555
     56- (IBAction) renameSelected: (id) sender;
     57
    5658@end
  • trunk/macosx/FileOutlineController.m

    r13340 r13828  
    2525#import "FileOutlineController.h"
    2626#import "Torrent.h"
     27#import "FileListNode.h"
    2728#import "FileOutlineView.h"
    2829#import "FilePriorityCell.h"
    29 #import "FileListNode.h"
     30#import "FileRenameSheetController.h"
    3031#import "NSApplicationAdditions.h"
    3132#import "NSMutableArrayAdditions.h"
     
    432433}
    433434
     435- (IBAction) renameSelected: (id) sender
     436{
     437    NSIndexSet * indexes = [fOutline selectedRowIndexes];
     438    NSAssert([indexes count] == 1, @"1 file needs to be selected to rename, but %ld are selected", [indexes count]);
     439   
     440    FileListNode * node = [fOutline itemAtRow: [indexes firstIndex]];
     441    Torrent * torrent = [node torrent];
     442    if (![torrent isFolder])
     443    {
     444        [FileRenameSheetController presentSheetForTorrent: torrent modalForWindow: [fOutline window] completionHandler: ^(BOOL didRename) {
     445#warning need to re-sort
     446            if (didRename)
     447                [[NSNotificationCenter defaultCenter] postNotificationName: @"UpdateUI" object: nil];
     448        }];
     449    }
     450    else
     451    {
     452        [FileRenameSheetController presentSheetForFileListNode: node modalForWindow: [fOutline window] completionHandler: ^(BOOL didRename) {
     453#warning need to re-sort
     454            if (didRename)
     455                [[NSNotificationCenter defaultCenter] postNotificationName: @"UpdateUI" object: nil];
     456        }];
     457    }
     458}
     459
    434460#warning make real view controller (Leopard-only) so that Command-R will work
    435461- (BOOL) validateMenuItem: (NSMenuItem *) menuItem
     
    519545    }
    520546   
     547    if (action == @selector(renameSelected:))
     548    {
     549        return [fOutline numberOfSelectedRows] == 1;
     550    }
     551   
    521552    return YES;
    522553}
     
    530561    NSMenu * menu = [[NSMenu alloc] initWithTitle: @"File Outline Menu"];
    531562   
     563    //rename
     564    NSMenuItem * item = [[NSMenuItem alloc] initWithTitle: [NSLocalizedString(@"Rename", "File Outline -> Menu") stringByAppendingEllipsis]
     565                                                   action: @selector(renameSelected:) keyEquivalent: @""];
     566    [item setTarget: self];
     567    [menu addItem: item];
     568    [item release];
     569   
     570    [menu addItem: [NSMenuItem separatorItem]];
     571   
    532572    //check and uncheck
    533     NSMenuItem * item = [[NSMenuItem alloc] initWithTitle: NSLocalizedString(@"Check Selected", "File Outline -> Menu")
    534                             action: @selector(setCheck:) keyEquivalent: @""];
     573    item = [[NSMenuItem alloc] initWithTitle: NSLocalizedString(@"Check Selected", "File Outline -> Menu")
     574            action: @selector(setCheck:) keyEquivalent: @""];
    535575    [item setTarget: self];
    536576    [item setTag: FILE_CHECK_TAG];
  • trunk/macosx/Makefile.am

    r13805 r13828  
    33    AboutWindow.xib \
    44    BlocklistStatusWindow.xib \
     5    FileRenameSheetController.xib \
    56    FilterBar.xib \
    67    InfoFileView.xib \
     
    6667    ExpandedPathToPathTransformer.h \
    6768    ExpandedPathToPathTransformer.m \
     69    FileRenameSheetController.h \
     70    FileRenameSheetController.m \
    6871    FileListNode.h \
    6972    FileListNode.m \
  • trunk/macosx/Torrent.h

    r13602 r13828  
    164164- (NSString *) dataLocation;
    165165- (NSString *) fileLocation: (FileListNode *) node;
     166
     167- (void) renameTorrent: (NSString *) newName completionHandler: (void (^)(BOOL didRename)) completionHandler;
     168- (void) renameFileNode: (FileListNode *) node withName: (NSString *) newName completionHandler: (void (^)(BOOL didRename)) completionHandler;
    166169
    167170- (CGFloat) progress;
  • trunk/macosx/Torrent.m

    r13602 r13828  
    9191}
    9292
     93void renameCallback(tr_torrent * torrent, const char * oldPathCharString, const char * newNameCharString, int error, void * contextInfo)
     94{
     95    @autoreleasepool
     96    {
     97        NSDictionary * contextDict = (NSDictionary *)contextInfo;
     98       
     99        NSString * oldPath = [NSString stringWithUTF8String: oldPathCharString];
     100        NSString * path = [oldPath stringByDeletingLastPathComponent];
     101        NSString * oldName = [oldPath lastPathComponent];
     102        NSString * newName = [NSString stringWithUTF8String: newNameCharString];
     103       
     104        if (error == 0)
     105        {
     106            void (^__block updateNodeAndChildrenForRename)(FileListNode *) = ^(FileListNode * node) {
     107                [node updateFromOldName: oldName toNewName: newName inPath: path];
     108               
     109                if ([node isFolder]) {
     110                    [[node children] enumerateObjectsWithOptions: NSEnumerationConcurrent usingBlock: ^(FileListNode * childNode, NSUInteger idx, BOOL * stop) {
     111                        updateNodeAndChildrenForRename(childNode);
     112                    }];
     113                }
     114            };
     115           
     116            NSArray * nodes = contextDict[@"Nodes"];
     117            [nodes enumerateObjectsWithOptions: NSEnumerationConcurrent usingBlock: ^(FileListNode * node, NSUInteger idx, BOOL *stop) {
     118                updateNodeAndChildrenForRename(node);
     119            }];
     120        }
     121        else
     122            NSLog(@"Error renaming %@ to %@", oldPath, [path stringByAppendingPathComponent: newName]);
     123       
     124        typedef void (^RenameCompletionBlock)(BOOL);
     125        RenameCompletionBlock completionHandler = contextDict[@"CompletionHandler"];
     126        completionHandler(error == 0);
     127       
     128        [contextDict release];
     129    }
     130}
     131
    93132int trashDataFile(const char * filename)
    94133{
     
    802841        return dataLocation;
    803842    }
     843}
     844
     845- (void) renameTorrent: (NSString *) newName completionHandler: (void (^)(BOOL didRename)) completionHandler
     846{
     847    NSParameterAssert(newName != nil);
     848    NSParameterAssert(![newName isEqualToString: @""]);
     849   
     850    NSDictionary * contextInfo = [@{ @"Nodes" : fFileList, @"CompletionHandler" : [[completionHandler copy] autorelease] } retain];
     851   
     852    tr_torrentRenamePath(fHandle, fInfo->name, [newName UTF8String], renameCallback, contextInfo);
     853}
     854
     855- (void) renameFileNode: (FileListNode *) node withName: (NSString *) newName completionHandler: (void (^)(BOOL didRename)) completionHandler
     856{
     857    NSParameterAssert(node != nil);
     858    NSParameterAssert([node torrent] == self);
     859    NSParameterAssert(newName != nil);
     860    NSParameterAssert(![newName isEqualToString: @""]);
     861   
     862    NSDictionary * contextInfo = [@{ @"Nodes" : @[ node ], @"CompletionHandler" : [[completionHandler copy] autorelease] } retain];
     863   
     864    NSString * oldName = [[node path] stringByAppendingPathComponent: [node name]];
     865    tr_torrentRenamePath(fHandle, [oldName UTF8String], [newName UTF8String], renameCallback, contextInfo);
    804866}
    805867
  • trunk/macosx/en.lproj/MainMenu.xib

    r13185 r13828  
    33        <data>
    44                <int key="IBDocument.SystemTarget">1060</int>
    5                 <string key="IBDocument.SystemVersion">11C74</string>
    6                 <string key="IBDocument.InterfaceBuilderVersion">1938</string>
    7                 <string key="IBDocument.AppKitVersion">1138.23</string>
    8                 <string key="IBDocument.HIToolboxVersion">567.00</string>
     5                <string key="IBDocument.SystemVersion">12C60</string>
     6                <string key="IBDocument.InterfaceBuilderVersion">2844</string>
     7                <string key="IBDocument.AppKitVersion">1187.34</string>
     8                <string key="IBDocument.HIToolboxVersion">625.00</string>
    99                <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
    1010                        <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
    11                         <string key="NS.object.0">1938</string>
     11                        <string key="NS.object.0">2844</string>
    1212                </object>
    1313                <array key="IBDocument.IntegratedClassDependencies">
     14                        <string>NSButton</string>
     15                        <string>NSButtonCell</string>
     16                        <string>NSCustomObject</string>
     17                        <string>NSImageCell</string>
     18                        <string>NSMenu</string>
     19                        <string>NSMenuItem</string>
     20                        <string>NSOutlineView</string>
     21                        <string>NSScrollView</string>
     22                        <string>NSScroller</string>
    1423                        <string>NSTableColumn</string>
    15                         <string>NSScroller</string>
    16                         <string>NSMenuItem</string>
    17                         <string>NSMenu</string>
     24                        <string>NSTextField</string>
    1825                        <string>NSTextFieldCell</string>
    19                         <string>NSScrollView</string>
    20                         <string>NSButtonCell</string>
    21                         <string>NSButton</string>
    22                         <string>NSImageCell</string>
    23                         <string>NSOutlineView</string>
    24                         <string>NSCustomObject</string>
     26                        <string>NSUserDefaultsController</string>
    2527                        <string>NSView</string>
    2628                        <string>NSWindowTemplate</string>
    27                         <string>NSTextField</string>
    28                         <string>NSUserDefaultsController</string>
    2929                </array>
    3030                <array key="IBDocument.PluginDependencies">
     
    7070                                                        <bool key="NSEnabled">YES</bool>
    7171                                                        <object class="NSButtonCell" key="NSCell" id="109224088">
    72                                                                 <int key="NSCellFlags">-2080244224</int>
     72                                                                <int key="NSCellFlags">-2080374784</int>
    7373                                                                <int key="NSCellFlags2">134217728</int>
    7474                                                                <string key="NSContents"/>
     
    7979                                                                </object>
    8080                                                                <reference key="NSControlView" ref="673219624"/>
    81                                                                 <int key="NSButtonFlags">-935051009</int>
     81                                                                <int key="NSButtonFlags">-935051264</int>
    8282                                                                <int key="NSButtonFlags2">160</int>
    8383                                                                <object class="NSCustomResource" key="NSNormalImage">
     
    9090                                                                <int key="NSPeriodicInterval">75</int>
    9191                                                        </object>
     92                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
    9293                                                </object>
    9394                                                <object class="NSButton" id="52857407">
     
    100101                                                        <bool key="NSEnabled">YES</bool>
    101102                                                        <object class="NSButtonCell" key="NSCell" id="617399467">
    102                                                                 <int key="NSCellFlags">-2080244224</int>
     103                                                                <int key="NSCellFlags">-2080374784</int>
    103104                                                                <int key="NSCellFlags2">134217728</int>
    104105                                                                <string key="NSContents"/>
    105106                                                                <reference key="NSSupport" ref="921632451"/>
    106107                                                                <reference key="NSControlView" ref="52857407"/>
    107                                                                 <int key="NSButtonFlags">138690815</int>
     108                                                                <int key="NSButtonFlags">138690560</int>
    108109                                                                <int key="NSButtonFlags2">160</int>
    109110                                                                <object class="NSCustomResource" key="NSNormalImage">
     
    116117                                                                <int key="NSPeriodicInterval">75</int>
    117118                                                        </object>
     119                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
    118120                                                </object>
    119121                                                <object class="NSButton" id="306218447">
     
    126128                                                        <bool key="NSEnabled">YES</bool>
    127129                                                        <object class="NSButtonCell" key="NSCell" id="751933283">
    128                                                                 <int key="NSCellFlags">-2080244224</int>
     130                                                                <int key="NSCellFlags">-2080374784</int>
    129131                                                                <int key="NSCellFlags2">134217728</int>
    130132                                                                <string key="NSContents"/>
    131133                                                                <reference key="NSSupport" ref="921632451"/>
    132134                                                                <reference key="NSControlView" ref="306218447"/>
    133                                                                 <int key="NSButtonFlags">138690815</int>
     135                                                                <int key="NSButtonFlags">138690560</int>
    134136                                                                <int key="NSButtonFlags2">160</int>
    135137                                                                <object class="NSCustomResource" key="NSNormalImage">
     
    142144                                                                <int key="NSPeriodicInterval">75</int>
    143145                                                        </object>
     146                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
    144147                                                </object>
    145148                                                <object class="NSTextField" id="403739499">
     
    152155                                                        <bool key="NSEnabled">YES</bool>
    153156                                                        <object class="NSTextFieldCell" key="NSCell" id="696487414">
    154                                                                 <int key="NSCellFlags">67239488</int>
     157                                                                <int key="NSCellFlags">67108928</int>
    155158                                                                <int key="NSCellFlags2">138549312</int>
    156159                                                                <string key="NSContents">999 of 999 transfers</string>
     
    180183                                                                </object>
    181184                                                        </object>
     185                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
    182186                                                </object>
    183187                                                <object class="NSScrollView" id="87647552">
     
    197201                                                                                        <reference key="NSNextKeyView" ref="1068338331"/>
    198202                                                                                        <bool key="NSEnabled">YES</bool>
     203                                                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
     204                                                                                        <bool key="NSControlAllowsExpansionToolTips">YES</bool>
    199205                                                                                        <object class="_NSCornerView" key="NSCornerView">
    200206                                                                                                <nil key="NSNextResponder"/>
     
    209215                                                                                                        <double key="NSMaxWidth">3000</double>
    210216                                                                                                        <object class="NSTableHeaderCell" key="NSHeaderCell">
    211                                                                                                                 <int key="NSCellFlags">75628096</int>
     217                                                                                                                <int key="NSCellFlags">75497536</int>
    212218                                                                                                                <int key="NSCellFlags2">2048</int>
    213219                                                                                                                <string key="NSContents">Color</string>
     
    229235                                                                                                        </object>
    230236                                                                                                        <object class="NSImageCell" key="NSDataCell" id="121868389">
    231                                                                                                                 <int key="NSCellFlags">67239424</int>
     237                                                                                                                <int key="NSCellFlags">134217728</int>
    232238                                                                                                                <int key="NSCellFlags2">33685504</int>
    233239                                                                                                                <object class="NSImage" key="NSContents" id="153628464">
     
    395401AD4AAAECAAMAAAAEAAAkvAEDAAMAAAABAAUAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAESAAMAAAAB
    396402AAEAAAEVAAMAAAABAAQAAAEWAAMAAAABAD4AAAEXAAQAAAABAAAj+gEcAAMAAAABAAEAAAE9AAMAAAAB
    397 AAIAAAFSAAMAAAABAAEAAAFTAAMAAAAEAAAkxIdzAAcAAAw4AAAkzAAAAAAACAAIAAgACAABAAEAAQAB
    398 AAAMOGFwcGwCEAAAbW50clJHQiBYWVogB9sACgAMABMALgAZYWNzcEFQUEwAAAAAAAAAAAAAAAAAAAAA
     403AAIAAAFSAAMAAAABAAEAAAFTAAMAAAAEAAAkxIdzAAcAAAyYAAAkzAAAAAAACAAIAAgACAABAAEAAQAB
     404AAAMmGFwcGwCEAAAbW50clJHQiBYWVogB90AAQAEABUAIwAiYWNzcEFQUEwAAAAAAAAAAAAAAAAAAAAA
    399405AAAAAAAAAAAAAPbWAAEAAAAA0y1hcHBsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    400 AAAAAAAAAAAAAAARZGVzYwAAAVAAAABiZHNjbQAAAbQAAAEgY3BydAAAAtQAAAAkd3RwdAAAAvgAAAAU
    401 clhZWgAAAwwAAAAUZ1hZWgAAAyAAAAAUYlhZWgAAAzQAAAAUclRSQwAAA0gAAAgMYWFyZwAAC1QAAAAg
    402 dmNndAAAC3QAAAAwbmRpbgAAC6QAAAA+Y2hhZAAAC+QAAAAsbW1vZAAADBAAAAAoYlRSQwAAA0gAAAgM
    403 Z1RSQwAAA0gAAAgMYWFiZwAAC1QAAAAgYWFnZwAAC1QAAAAgZGVzYwAAAAAAAAAIRGlzcGxheQAAAAAA
     406AAAAAAAAAAAAAAARZGVzYwAAAVAAAABiZHNjbQAAAbQAAAGAY3BydAAAAzQAAAAkd3RwdAAAA1gAAAAU
     407clhZWgAAA2wAAAAUZ1hZWgAAA4AAAAAUYlhZWgAAA5QAAAAUclRSQwAAA6gAAAgMYWFyZwAAC7QAAAAg
     408dmNndAAAC9QAAAAwbmRpbgAADAQAAAA+Y2hhZAAADEQAAAAsbW1vZAAADHAAAAAoYlRSQwAAA6gAAAgM
     409Z1RSQwAAA6gAAAgMYWFiZwAAC7QAAAAgYWFnZwAAC7QAAAAgZGVzYwAAAAAAAAAIRGlzcGxheQAAAAAA
    404410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    405 AAAAAAAAAAAAAAAAAAAAAG1sdWMAAAAAAAAAFgAAAAxwdEJSAAAACAAAARhpdElUAAAACAAAARhodUhV
    406 AAAACAAAARh6aFRXAAAACAAAARhuYk5PAAAACAAAARhjc0NaAAAACAAAARhrb0tSAAAACAAAARhkZURF
    407 AAAACAAAARhzdlNFAAAACAAAARh6aENOAAAACAAAARhqYUpQAAAACAAAARhhcgAAAAAACAAAARhwdFBU
    408 AAAACAAAARhubE5MAAAACAAAARhmckZSAAAACAAAARhlc0VTAAAACAAAARh0clRSAAAACAAAARhmaUZJ
    409 AAAACAAAARhwbFBMAAAACAAAARhydVJVAAAACAAAARhlblVTAAAACAAAARhkYURLAAAACAAAARgAaQBN
    410 AGEAY3RleHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJbmMuLCAyMDExAFhZWiAAAAAAAADzFgABAAAAARbK
    411 WFlaIAAAAAAAAHHAAAA5igAAAWdYWVogAAAAAAAAYSMAALnmAAAT9lhZWiAAAAAAAAAj8gAADJAAAL3Q
    412 Y3VydgAAAAAAAAQAAAAABQAKAA8AFAAZAB4AIwAoAC0AMgA2ADsAQABFAEoATwBUAFkAXgBjAGgAbQBy
    413 AHcAfACBAIYAiwCQAJUAmgCfAKMAqACtALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEBBwEN
    414 ARMBGQEfASUBKwEyATgBPgFFAUwBUgFZAWABZwFuAXUBfAGDAYsBkgGaAaEBqQGxAbkBwQHJAdEB2QHh
    415 AekB8gH6AgMCDAIUAh0CJgIvAjgCQQJLAlQCXQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMA
    416 AwsDFgMhAy0DOANDA08DWgNmA3IDfgOKA5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUEYwRx
    417 BH4EjASaBKgEtgTEBNME4QTwBP4FDQUcBSsFOgVJBVgFZwV3BYYFlgWmBbUFxQXVBeUF9gYGBhYGJwY3
    418 BkgGWQZqBnsGjAadBq8GwAbRBuMG9QcHBxkHKwc9B08HYQd0B4YHmQesB78H0gflB/gICwgfCDIIRgha
    419 CG4IggiWCKoIvgjSCOcI+wkQCSUJOglPCWQJeQmPCaQJugnPCeUJ+woRCicKPQpUCmoKgQqYCq4KxQrc
    420 CvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5DBIMKgxDDFwMdQyODKcMwAzZDPMNDQ0mDUANWg10DY4NqQ3D
    421 Dd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8JDyUPQQ9eD3oPlg+zD88P7BAJECYQQxBhEH4QmxC5ENcQ9RET
    422 ETERTxFtEYwRqhHJEegSBxImEkUSZBKEEqMSwxLjEwMTIxNDE2MTgxOkE8UT5RQGFCcUSRRqFIsUrRTO
    423 FPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZsFo8WshbWFvoXHRdBF2UXiReuF9IX9xgbGEAYZRiKGK8Y1Rj6
    424 GSAZRRlrGZEZtxndGgQaKhpRGncanhrFGuwbFBs7G2MbihuyG9ocAhwqHFIcexyjHMwc9R0eHUcdcB2Z
    425 HcMd7B4WHkAeah6UHr4e6R8THz4faR+UH78f6iAVIEEgbCCYIMQg8CEcIUghdSGhIc4h+yInIlUigiKv
    426 It0jCiM4I2YjlCPCI/AkHyRNJHwkqyTaJQklOCVoJZclxyX3JicmVyaHJrcm6CcYJ0kneierJ9woDSg/
    427 KHEooijUKQYpOClrKZ0p0CoCKjUqaCqbKs8rAis2K2krnSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5M
    428 LoIuty7uLyQvWi+RL8cv/jA1MGwwpDDbMRIxSjGCMbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0njTY
    429 NRM1TTWHNcI1/TY3NnI2rjbpNyQ3YDecN9c4FDhQOIw4yDkFOUI5fzm8Ofk6Njp0OrI67zstO2s7qjvo
    430 PCc8ZTykPOM9Ij1hPaE94D4gPmA+oD7gPyE/YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9
    431 Q8BEA0RHRIpEzkUSRVVFmkXeRiJGZ0arRvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxLU0ua
    432 S+JMKkxyTLpNAk1KTZNN3E4lTm5Ot08AT0lPk0/dUCdQcVC7UQZRUFGbUeZSMVJ8UsdTE1NfU6pT9lRC
    433 VI9U21UoVXVVwlYPVlxWqVb3V0RXklfgWC9YfVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114
    434 XcleGl5sXr1fD19hX7NgBWBXYKpg/GFPYaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm6Gc9
    435 Z5Nn6Wg/aJZo7GlDaZpp8WpIap9q92tPa6dr/2xXbK9tCG1gbbluEm5rbsRvHm94b9FwK3CGcOBxOnGV
    436 cfByS3KmcwFzXXO4dBR0cHTMdSh1hXXhdj52m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtje8J8IXyB
    437 fOF9QX2hfgF+Yn7CfyN/hH/lgEeAqIEKgWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6GcobXhzuHn4gE
    438 iGmIzokziZmJ/opkisqLMIuWi/yMY4zKjTGNmI3/jmaOzo82j56QBpBukNaRP5GokhGSepLjk02TtpQg
    439 lIqU9JVflcmWNJaflwqXdZfgmEyYuJkkmZCZ/JpomtWbQpuvnByciZz3nWSd0p5Anq6fHZ+Ln/qgaaDY
    440 oUehtqImopajBqN2o+akVqTHpTilqaYapoum/adup+CoUqjEqTepqaocqo+rAqt1q+msXKzQrUStuK4t
    441 rqGvFq+LsACwdbDqsWCx1rJLssKzOLOutCW0nLUTtYq2AbZ5tvC3aLfguFm40blKucK6O7q1uy67p7wh
    442 vJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hjwl/C28NYw9TEUcTOxUvFyMZGxsPHQce/yD3IvMk6ybnKOMq3
    443 yzbLtsw1zLXNNc21zjbOts83z7jQOdC60TzRvtI/0sHTRNPG1EnUy9VO1dHWVdbY11zX4Nhk2OjZbNnx
    444 2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A24L3hROHM4lPi2+Nj4+vkc+T85YTmDeaW5x/nqegy6LzpRunQ
    445 6lvq5etw6/vshu0R7ZzuKO6070DvzPBY8OXxcvH/8ozzGfOn9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX
    446 +uf7d/wH/Jj9Kf26/kv+3P9t//9wYXJhAAAAAAADAAAAAmZmAADypwAADVkAABPQAAAKDnZjZ3QAAAAA
    447 AAAAAQABAAAAAAAAAAEAAAABAAAAAAAAAAEAAAABAAAAAAAAAAEAAG5kaW4AAAAAAAAANgAAp0AAAFWA
    448 AABMwAAAnsAAACWAAAAMwAAAUAAAAFRAAAIzMwACMzMAAjMzAAAAAAAAAABzZjMyAAAAAAABDHIAAAX4
    449 ///zHQAAB7oAAP1y///7nf///aQAAAPZAADAcW1tb2QAAAAAAAAGEAAAoAcAAAAAySceAAAAAAAAAAAA
    450 AAAAAAAAAAA</bytes>
     411AAAAAAAAAAAAAAAAAAAAAG1sdWMAAAAAAAAAHgAAAAxza1NLAAAACAAAAXhjYUVTAAAACAAAAXhoZUlM
     412AAAACAAAAXhwdEJSAAAACAAAAXhpdElUAAAACAAAAXhodUhVAAAACAAAAXh1a1VBAAAACAAAAXhrb0tS
     413AAAACAAAAXhuYk5PAAAACAAAAXhjc0NaAAAACAAAAXh6aFRXAAAACAAAAXhkZURFAAAACAAAAXhyb1JP
     414AAAACAAAAXhzdlNFAAAACAAAAXh6aENOAAAACAAAAXhqYUpQAAAACAAAAXhhcgAAAAAACAAAAXhlbEdS
     415AAAACAAAAXhwdFBUAAAACAAAAXhubE5MAAAACAAAAXhmckZSAAAACAAAAXhlc0VTAAAACAAAAXh0aFRI
     416AAAACAAAAXh0clRSAAAACAAAAXhmaUZJAAAACAAAAXhockhSAAAACAAAAXhwbFBMAAAACAAAAXhydVJV
     417AAAACAAAAXhlblVTAAAACAAAAXhkYURLAAAACAAAAXgAaQBNAGEAY3RleHQAAAAAQ29weXJpZ2h0IEFw
     418cGxlLCBJbmMuLCAyMDEzAFhZWiAAAAAAAADzFgABAAAAARbKWFlaIAAAAAAAAHHAAAA5igAAAWdYWVog
     419AAAAAAAAYSMAALnmAAAT9lhZWiAAAAAAAAAj8gAADJAAAL3QY3VydgAAAAAAAAQAAAAABQAKAA8AFAAZ
     420AB4AIwAoAC0AMgA2ADsAQABFAEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQAJUAmgCfAKMAqACt
     421ALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEBBwENARMBGQEfASUBKwEyATgBPgFFAUwBUgFZ
     422AWABZwFuAXUBfAGDAYsBkgGaAaEBqQGxAbkBwQHJAdEB2QHhAekB8gH6AgMCDAIUAh0CJgIvAjgCQQJL
     423AlQCXQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMAAwsDFgMhAy0DOANDA08DWgNmA3IDfgOK
     424A5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUEYwRxBH4EjASaBKgEtgTEBNME4QTwBP4FDQUc
     425BSsFOgVJBVgFZwV3BYYFlgWmBbUFxQXVBeUF9gYGBhYGJwY3BkgGWQZqBnsGjAadBq8GwAbRBuMG9QcH
     426BxkHKwc9B08HYQd0B4YHmQesB78H0gflB/gICwgfCDIIRghaCG4IggiWCKoIvgjSCOcI+wkQCSUJOglP
     427CWQJeQmPCaQJugnPCeUJ+woRCicKPQpUCmoKgQqYCq4KxQrcCvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5
     428DBIMKgxDDFwMdQyODKcMwAzZDPMNDQ0mDUANWg10DY4NqQ3DDd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8J
     429DyUPQQ9eD3oPlg+zD88P7BAJECYQQxBhEH4QmxC5ENcQ9RETETERTxFtEYwRqhHJEegSBxImEkUSZBKE
     430EqMSwxLjEwMTIxNDE2MTgxOkE8UT5RQGFCcUSRRqFIsUrRTOFPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZs
     431Fo8WshbWFvoXHRdBF2UXiReuF9IX9xgbGEAYZRiKGK8Y1Rj6GSAZRRlrGZEZtxndGgQaKhpRGncanhrF
     432GuwbFBs7G2MbihuyG9ocAhwqHFIcexyjHMwc9R0eHUcdcB2ZHcMd7B4WHkAeah6UHr4e6R8THz4faR+U
     433H78f6iAVIEEgbCCYIMQg8CEcIUghdSGhIc4h+yInIlUigiKvIt0jCiM4I2YjlCPCI/AkHyRNJHwkqyTa
     434JQklOCVoJZclxyX3JicmVyaHJrcm6CcYJ0kneierJ9woDSg/KHEooijUKQYpOClrKZ0p0CoCKjUqaCqb
     435Ks8rAis2K2krnSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5MLoIuty7uLyQvWi+RL8cv/jA1MGwwpDDb
     436MRIxSjGCMbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0njTYNRM1TTWHNcI1/TY3NnI2rjbpNyQ3YDec
     437N9c4FDhQOIw4yDkFOUI5fzm8Ofk6Njp0OrI67zstO2s7qjvoPCc8ZTykPOM9Ij1hPaE94D4gPmA+oD7g
     438PyE/YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9Q8BEA0RHRIpEzkUSRVVFmkXeRiJGZ0ar
     439RvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxLU0uaS+JMKkxyTLpNAk1KTZNN3E4lTm5Ot08A
     440T0lPk0/dUCdQcVC7UQZRUFGbUeZSMVJ8UsdTE1NfU6pT9lRCVI9U21UoVXVVwlYPVlxWqVb3V0RXklfg
     441WC9YfVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114XcleGl5sXr1fD19hX7NgBWBXYKpg/GFP
     442YaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm6Gc9Z5Nn6Wg/aJZo7GlDaZpp8WpIap9q92tP
     443a6dr/2xXbK9tCG1gbbluEm5rbsRvHm94b9FwK3CGcOBxOnGVcfByS3KmcwFzXXO4dBR0cHTMdSh1hXXh
     444dj52m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtje8J8IXyBfOF9QX2hfgF+Yn7CfyN/hH/lgEeAqIEK
     445gWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6GcobXhzuHn4gEiGmIzokziZmJ/opkisqLMIuWi/yMY4zK
     446jTGNmI3/jmaOzo82j56QBpBukNaRP5GokhGSepLjk02TtpQglIqU9JVflcmWNJaflwqXdZfgmEyYuJkk
     447mZCZ/JpomtWbQpuvnByciZz3nWSd0p5Anq6fHZ+Ln/qgaaDYoUehtqImopajBqN2o+akVqTHpTilqaYa
     448poum/adup+CoUqjEqTepqaocqo+rAqt1q+msXKzQrUStuK4trqGvFq+LsACwdbDqsWCx1rJLssKzOLOu
     449tCW0nLUTtYq2AbZ5tvC3aLfguFm40blKucK6O7q1uy67p7whvJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hj
     450wl/C28NYw9TEUcTOxUvFyMZGxsPHQce/yD3IvMk6ybnKOMq3yzbLtsw1zLXNNc21zjbOts83z7jQOdC6
     4510TzRvtI/0sHTRNPG1EnUy9VO1dHWVdbY11zX4Nhk2OjZbNnx2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A2
     4524L3hROHM4lPi2+Nj4+vkc+T85YTmDeaW5x/nqegy6LzpRunQ6lvq5etw6/vshu0R7ZzuKO6070DvzPBY
     4538OXxcvH/8ozzGfOn9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX+uf7d/wH/Jj9Kf26/kv+3P9t//9wYXJh
     454AAAAAAADAAAAAmZmAADypwAADVkAABPQAAAKDnZjZ3QAAAAAAAAAAQABAAAAAAAAAAEAAAABAAAAAAAA
     455AAEAAAABAAAAAAAAAAEAAG5kaW4AAAAAAAAANgAAp0AAAFWAAABMwAAAnsAAACWAAAAMwAAAUAAAAFRA
     456AAIzMwACMzMAAjMzAAAAAAAAAABzZjMyAAAAAAABDHIAAAX4///zHQAAB7oAAP1y///7nf///aQAAAPZ
     457AADAcW1tb2QAAAAAAAAGEAAAoAcAAAAAySceAAAAAAAAAAAAAAAAAAAAAAA</bytes>
    451458                                                                                                                                                </object>
    452459                                                                                                                                                <string key="NSCacheWindowColorSpace">NSCalibratedRGBColorSpace</string>
     
    462469                                                                                                                        </object>
    463470                                                                                                                </object>
    464                                                                                                                 <reference key="NSSupport" ref="26"/>
    465471                                                                                                                <int key="NSAlign">0</int>
    466472                                                                                                                <int key="NSScale">0</int>
     
    476482                                                                                                        <double key="NSMaxWidth">3.4028229999999999e+38</double>
    477483                                                                                                        <object class="NSTableHeaderCell" key="NSHeaderCell">
    478                                                                                                                 <int key="NSCellFlags">75628096</int>
     484                                                                                                                <int key="NSCellFlags">75497536</int>
    479485                                                                                                                <int key="NSCellFlags2">2048</int>
    480486                                                                                                                <string key="NSContents">Group</string>
     
    492498                                                                                                        </object>
    493499                                                                                                        <object class="NSTextFieldCell" key="NSDataCell" id="787380903">
    494                                                                                                                 <int key="NSCellFlags">69336641</int>
     500                                                                                                                <int key="NSCellFlags">69206081</int>
    495501                                                                                                                <int key="NSCellFlags2">4196352</int>
    496502                                                                                                                <string key="NSContents">Text Cell</string>
     
    514520                                                                                                        <double key="NSMaxWidth">10</double>
    515521                                                                                                        <object class="NSTableHeaderCell" key="NSHeaderCell">
    516                                                                                                                 <int key="NSCellFlags">75628096</int>
     522                                                                                                                <int key="NSCellFlags">75497536</int>
    517523                                                                                                                <int key="NSCellFlags2">2048</int>
    518524                                                                                                                <string key="NSContents"/>
     
    522528                                                                                                        </object>
    523529                                                                                                        <object class="NSImageCell" key="NSDataCell" id="266712038">
    524                                                                                                                 <int key="NSCellFlags">67239424</int>
     530                                                                                                                <int key="NSCellFlags">134217728</int>
    525531                                                                                                                <int key="NSCellFlags2">33685504</int>
    526532                                                                                                                <reference key="NSContents" ref="153628464"/>
    527                                                                                                                 <reference key="NSSupport" ref="26"/>
    528533                                                                                                                <int key="NSAlign">8</int>
    529534                                                                                                                <int key="NSScale">0</int>
     
    539544                                                                                                        <double key="NSMaxWidth">64</double>
    540545                                                                                                        <object class="NSTableHeaderCell" key="NSHeaderCell">
    541                                                                                                                 <int key="NSCellFlags">75628096</int>
     546                                                                                                                <int key="NSCellFlags">75497536</int>
    542547                                                                                                                <int key="NSCellFlags2">2048</int>
    543548                                                                                                                <string key="NSContents">DL Speed</string>
     
    547552                                                                                                        </object>
    548553                                                                                                        <object class="NSTextFieldCell" key="NSDataCell" id="837967890">
    549                                                                                                                 <int key="NSCellFlags">69336641</int>
     554                                                                                                                <int key="NSCellFlags">69206081</int>
    550555                                                                                                                <int key="NSCellFlags2">2048</int>
    551556                                                                                                                <string key="NSContents">Text Cell</string>
     
    568573                                                                                                        <double key="NSMaxWidth">10</double>
    569574                                                                                                        <object class="NSTableHeaderCell" key="NSHeaderCell">
    570                                                                                                                 <int key="NSCellFlags">75628096</int>
     575                                                                                                                <int key="NSCellFlags">75497536</int>
    571576                                                                                                                <int key="NSCellFlags2">2048</int>
    572577                                                                                                                <string key="NSContents"/>
     
    576581                                                                                                        </object>
    577582                                                                                                        <object class="NSImageCell" key="NSDataCell" id="358871970">
    578                                                                                                                 <int key="NSCellFlags">67239424</int>
     583                                                                                                                <int key="NSCellFlags">134217728</int>
    579584                                                                                                                <int key="NSCellFlags2">33685504</int>
    580585                                                                                                                <reference key="NSContents" ref="153628464"/>
    581                                                                                                                 <reference key="NSSupport" ref="26"/>
    582586                                                                                                                <int key="NSAlign">8</int>
    583587                                                                                                                <int key="NSScale">0</int>
     
    593597                                                                                                        <double key="NSMaxWidth">64</double>
    594598                                                                                                        <object class="NSTableHeaderCell" key="NSHeaderCell">
    595                                                                                                                 <int key="NSCellFlags">75628096</int>
     599                                                                                                                <int key="NSCellFlags">75497536</int>
    596600                                                                                                                <int key="NSCellFlags2">2048</int>
    597601                                                                                                                <string key="NSContents">UL Speed</string>
     
    601605                                                                                                        </object>
    602606                                                                                                        <object class="NSTextFieldCell" key="NSDataCell" id="774159814">
    603                                                                                                                 <int key="NSCellFlags">69336641</int>
     607                                                                                                                <int key="NSCellFlags">69206081</int>
    604608                                                                                                                <int key="NSCellFlags2">2048</int>
    605609                                                                                                                <string key="NSContents">Text Cell</string>
     
    648652                                                                        <reference key="NSWindow"/>
    649653                                                                        <reference key="NSNextKeyView" ref="306218447"/>
     654                                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
    650655                                                                        <reference key="NSTarget" ref="87647552"/>
    651656                                                                        <string key="NSAction">_doScroller:</string>
     
    659664                                                                        <reference key="NSWindow"/>
    660665                                                                        <reference key="NSNextKeyView" ref="306237956"/>
     666                                                                        <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
    661667                                                                        <int key="NSsFlags">1</int>
    662668                                                                        <reference key="NSTarget" ref="87647552"/>
     
    674680                                                        <reference key="NSContentView" ref="306237956"/>
    675681                                                        <bytes key="NSScrollAmts">AAAAAAAAAABCggAAQoIAAA</bytes>
     682                                                        <double key="NSMinMagnification">0.25</double>
     683                                                        <double key="NSMaxMagnification">4</double>
     684                                                        <double key="NSMagnification">1</double>
    676685                                                </object>
    677686                                        </array>
     
    681690                                        <reference key="NSNextKeyView" ref="87647552"/>
    682691                                </object>
    683                                 <string key="NSScreenRect">{{0, 0}, {2560, 1440}}</string>
     692                                <string key="NSScreenRect">{{0, 0}, {2560, 1418}}</string>
    684693                                <string key="NSMinSize">{350, 27}</string>
    685694                                <string key="NSMaxSize">{10000000000000, 10000000000000}</string>
     
    15501559                                                                        <reference key="NSMixedImage" ref="330170270"/>
    15511560                                                                </object>
     1561                                                                <object class="NSMenuItem" id="822231323">
     1562                                                                        <reference key="NSMenu" ref="335948734"/>
     1563                                                                        <string key="NSTitle">Rename
</string>
     1564                                                                        <string key="NSKeyEquiv"/>
     1565                                                                        <int key="NSKeyEquivModMask">1048576</int>
     1566                                                                        <int key="NSMnemonicLoc">2147483647</int>
     1567                                                                        <reference key="NSOnImage" ref="246127200"/>
     1568                                                                        <reference key="NSMixedImage" ref="330170270"/>
     1569                                                                </object>
    15521570                                                                <object class="NSMenuItem" id="219482367">
    15531571                                                                        <reference key="NSMenu" ref="335948734"/>
     
    36523670                                        </object>
    36533671                                        <int key="connectionID">3440</int>
     3672                                </object>
     3673                                <object class="IBConnectionRecord">
     3674                                        <object class="IBActionConnection" key="connection">
     3675                                                <string key="label">renameSelected:</string>
     3676                                                <reference key="source" ref="30116300"/>
     3677                                                <reference key="destination" ref="822231323"/>
     3678                                        </object>
     3679                                        <int key="connectionID">3444</int>
    36543680                                </object>
    36553681                                <object class="IBConnectionRecord">
     
    44504476                                                        <reference ref="245039314"/>
    44514477                                                        <reference ref="96633809"/>
     4478                                                        <reference ref="822231323"/>
    44524479                                                </array>
    44534480                                                <reference key="parent" ref="249425108"/>
     
    54595486                                                <reference key="object" ref="751933283"/>
    54605487                                                <reference key="parent" ref="306218447"/>
     5488                                        </object>
     5489                                        <object class="IBObjectRecord">
     5490                                                <int key="objectID">3441</int>
     5491                                                <reference key="object" ref="822231323"/>
     5492                                                <reference key="parent" ref="335948734"/>
    54615493                                        </object>
    54625494                                </array>
     
    56815713                                <string key="3435.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
    56825714                                <string key="3436.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
     5715                                <string key="3441.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
    56835716                                <string key="418.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
    56845717                                <string key="456.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
     
    57065739                        <dictionary class="NSMutableDictionary" key="localizations"/>
    57075740                        <nil key="sourceID"/>
    5708                         <int key="maxID">3440</int>
     5741                        <int key="maxID">3444</int>
    57095742                </object>
    57105743                <object class="IBClassDescriber" key="IBDocument.Classes">
     
    57135746                                        <string key="className">Controller</string>
    57145747                                        <string key="superclassName">NSObject</string>
    5715                                         <object class="NSMutableDictionary" key="actions">
    5716                                                 <string key="NS.key.0">showGlobalPopover:</string>
    5717                                                 <string key="NS.object.0">id</string>
    5718                                         </object>
    5719                                         <object class="NSMutableDictionary" key="actionInfosByName">
    5720                                                 <string key="NS.key.0">showGlobalPopover:</string>
    5721                                                 <object class="IBActionInfo" key="NS.object.0">
     5748                                        <dictionary class="NSMutableDictionary" key="actions">
     5749                                                <string key="renameSelected:">id</string>
     5750                                                <string key="showGlobalPopover:">id</string>
     5751                                        </dictionary>
     5752                                        <dictionary class="NSMutableDictionary" key="actionInfosByName">
     5753                                                <object class="IBActionInfo" key="renameSelected:">
     5754                                                        <string key="name">renameSelected:</string>
     5755                                                        <string key="candidateClassName">id</string>
     5756                                                </object>
     5757                                                <object class="IBActionInfo" key="showGlobalPopover:">
    57225758                                                        <string key="name">showGlobalPopover:</string>
    57235759                                                        <string key="candidateClassName">id</string>
    57245760                                                </object>
    5725                                         </object>
     5761                                        </dictionary>
    57265762                                        <dictionary class="NSMutableDictionary" key="outlets">
    57275763                                                <string key="fActionButton">NSButton</string>
     
    59766012                <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
    59776013                        <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
    5978                         <real value="1070" key="NS.object.0"/>
     6014                        <real value="1080" key="NS.object.0"/>
    59796015                </object>
    59806016                <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
     
    59836019                        <string key="CleanupTemplate">{128, 128}</string>
    59846020                        <string key="NSActionTemplate">{15, 15}</string>
    5985                         <string key="NSMenuCheckmark">{9, 8}</string>
    5986                         <string key="NSMenuMixedState">{7, 2}</string>
     6021                        <string key="NSMenuCheckmark">{11, 11}</string>
     6022                        <string key="NSMenuMixedState">{10, 3}</string>
    59876023                        <string key="PriorityHighTemplate">{128, 128}</string>
    59886024                        <string key="PriorityLowTemplate">{128, 128}</string>
Note: See TracChangeset for help on using the changeset viewer.