Changeset 4709
- Timestamp:
- 04/23/07 22:44:08 (2 years ago)
- Files:
-
- Footagehead/trunk/English.lproj/FullscreenWindow.nib/classes.nib (modified) (1 diff)
- Footagehead/trunk/English.lproj/FullscreenWindow.nib/info.nib (modified) (2 diffs)
- Footagehead/trunk/English.lproj/FullscreenWindow.nib/keyedobjects.nib (modified) (previous)
- Footagehead/trunk/English.lproj/MainMenu.nib/classes.nib (modified) (1 diff)
- Footagehead/trunk/English.lproj/MainMenu.nib/info.nib (modified) (2 diffs)
- Footagehead/trunk/English.lproj/MainMenu.nib/keyedobjects.nib (modified) (previous)
- Footagehead/trunk/English.lproj/MainMenu.nib/objects.nib (modified) (previous)
- Footagehead/trunk/English.lproj/Window.nib/classes.nib (modified) (2 diffs)
- Footagehead/trunk/English.lproj/Window.nib/info.nib (modified) (1 diff)
- Footagehead/trunk/English.lproj/Window.nib/keyedobjects.nib (modified) (previous)
- Footagehead/trunk/FHBrowserWindowController.h (moved) (moved from Footagehead/trunk/FHWindowController.h) (2 diffs)
- Footagehead/trunk/FHBrowserWindowController.m (moved) (moved from Footagehead/trunk/FHWindowController.m) (19 diffs)
- Footagehead/trunk/FHController.h (modified) (2 diffs)
- Footagehead/trunk/FHController.m (modified) (12 diffs)
- Footagehead/trunk/FHFile.h (modified) (2 diffs)
- Footagehead/trunk/FHFile.m (modified) (3 diffs)
- Footagehead/trunk/FHFullscreenWindowController.h (modified) (1 diff)
- Footagehead/trunk/FHFullscreenWindowController.m (modified) (1 diff)
- Footagehead/trunk/FHTableView.m (modified) (1 diff)
- Footagehead/trunk/Footagehead.xcodeproj/project.pbxproj (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
Footagehead/trunk/English.lproj/FullscreenWindow.nib/classes.nib
r4704 r4709 1 1 { 2 IBClasses = ({CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }); 2 IBClasses = ( 3 {CLASS = FHFullscreenWindow; LANGUAGE = ObjC; SUPERCLASS = NSWindow; }, 4 { 5 CLASS = FHFullscreenWindowController; 6 LANGUAGE = ObjC; 7 OUTLETS = {"_imageView" = FHImageView; }; 8 SUPERCLASS = WIWindowController; 9 }, 10 { 11 CLASS = FHImageView; 12 LANGUAGE = ObjC; 13 OUTLETS = {"_scrollView" = NSScrollView; }; 14 SUPERCLASS = NSView; 15 }, 16 {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, 17 { 18 CLASS = WIWindowController; 19 LANGUAGE = ObjC; 20 SUPERCLASS = NSWindowController; 21 } 22 ); 3 23 IBVersion = 1; 4 24 } Footagehead/trunk/English.lproj/FullscreenWindow.nib/info.nib
r4704 r4709 4 4 <dict> 5 5 <key>IBDocumentLocation</key> 6 <string>5 17 180356 240 0 0 1920 1178 </string>6 <string>570 95 356 240 0 0 1920 1178 </string> 7 7 <key>IBFramework Version</key> 8 8 <string>446.1</string> … … 12 12 </array> 13 13 <key>IBSystem Version</key> 14 <string>8P 135</string>14 <string>8P2137</string> 15 15 </dict> 16 16 </plist> Footagehead/trunk/English.lproj/MainMenu.nib/classes.nib
r4706 r4709 67 67 rotateRight = id; 68 68 setAsDesktopBackground = id; 69 slideshow = id; 69 70 submitSheet = id; 70 71 toggleStatusBar = id; Footagehead/trunk/English.lproj/MainMenu.nib/info.nib
r4706 r4709 8 8 <dict> 9 9 <key>29</key> 10 <string> 854 977400 44 0 0 1920 1178 </string>10 <string>973 944 400 44 0 0 1920 1178 </string> 11 11 </dict> 12 12 <key>IBFramework Version</key> … … 19 19 </array> 20 20 <key>IBSystem Version</key> 21 <string>8P 135</string>21 <string>8P2137</string> 22 22 </dict> 23 23 </plist> Footagehead/trunk/English.lproj/Window.nib/classes.nib
r4706 r4709 1 1 { 2 2 IBClasses = ( 3 { 4 ACTIONS = { 5 autoSwitch = id; 6 firstFile = id; 7 lastFile = id; 8 nextImage = id; 9 nextPage = id; 10 openDirectory = id; 11 openFile = id; 12 openParent = id; 13 previousImage = id; 14 previousPage = id; 15 }; 16 CLASS = FHBrowserWindowController; 17 LANGUAGE = ObjC; 18 OUTLETS = { 19 "_contentBox" = NSBox; 20 "_fileTableColumn" = NSTableColumn; 21 "_imageView" = FHImageView; 22 "_leftStatusTextField" = NSTextField; 23 "_leftView" = NSView; 24 "_openSpotlightPanel" = NSPanel; 25 "_openSpotlightTextView" = NSTextView; 26 "_openURLPanel" = NSPanel; 27 "_openURLPopUpButton" = NSPopUpButton; 28 "_openURLTextView" = NSTextView; 29 "_rightStatusTextField" = NSTextField; 30 "_rightView" = NSView; 31 "_screenAutoSwitchButton" = NSButton; 32 "_screenAutoSwitchTextField" = NSTextField; 33 "_screenBackgroundBlackMenuItem" = NSMenuItem; 34 "_screenBackgroundGrayMenuItem" = NSMenuItem; 35 "_screenBackgroundPopUpButton" = NSPopUpButton; 36 "_screenBackgroundWhiteMenuItem" = NSMenuItem; 37 "_screenPanel" = NSPanel; 38 "_screenPopUpButton" = NSPopUpButton; 39 "_scrollView" = NSScrollView; 40 "_splitView" = WISplitView; 41 "_statusBox" = NSBox; 42 "_tableView" = FHTableView; 43 }; 44 SUPERCLASS = WIWindowController; 45 }, 3 46 { 4 47 CLASS = FHImageView; … … 18 61 OUTLETS = {"_imageScrollView" = NSScrollView; "_imageView" = FHImageView; }; 19 62 SUPERCLASS = WITableView; 20 },21 {22 ACTIONS = {23 firstFile = id;24 lastFile = id;25 nextImage = id;26 nextPage = id;27 openDirectory = id;28 openFile = id;29 openParent = id;30 previousImage = id;31 previousPage = id;32 };33 CLASS = FHWindowController;34 LANGUAGE = ObjC;35 OUTLETS = {36 "_contentBox" = NSBox;37 "_fileTableColumn" = NSTableColumn;38 "_imageView" = FHImageView;39 "_leftStatusTextField" = NSTextField;40 "_leftView" = NSView;41 "_openSpotlightPanel" = NSPanel;42 "_openSpotlightTextView" = NSTextView;43 "_openURLPanel" = NSPanel;44 "_openURLPopUpButton" = NSPopUpButton;45 "_openURLTextView" = NSTextView;46 "_rightStatusTextField" = NSTextField;47 "_rightView" = NSView;48 "_scrollView" = NSScrollView;49 "_splitView" = WISplitView;50 "_statusBox" = NSBox;51 "_tableView" = FHTableView;52 };53 SUPERCLASS = WIWindowController;54 63 }, 55 64 { Footagehead/trunk/English.lproj/Window.nib/info.nib
r4706 r4709 14 14 <key>IBOpenObjects</key> 15 15 <array> 16 <integer>82</integer> 16 17 <integer>7</integer> 17 18 <integer>52</integer> 18 <integer> 82</integer>19 <integer>65</integer> 19 20 </array> 20 21 <key>IBSystem Version</key> 21 <string>8P 135</string>22 <string>8P2137</string> 22 23 </dict> 23 24 </plist> Footagehead/trunk/FHBrowserWindowController.h
r4706 r4709 30 30 @class FHImageLoader, FHHandler; 31 31 32 @interface FH WindowController : WIWindowController {33 IBOutlet NSBox *_contentBox;34 IBOutlet WISplitView *_splitView;35 IBOutlet NSView *_leftView;36 IBOutlet FHTableView *_tableView;37 IBOutlet NSTableColumn *_fileTableColumn;38 IBOutlet NSView *_rightView;39 IBOutlet FHImageView *_imageView;40 IBOutlet NSScrollView *_scrollView;32 @interface FHBrowserWindowController : WIWindowController { 33 IBOutlet NSBox *_contentBox; 34 IBOutlet WISplitView *_splitView; 35 IBOutlet NSView *_leftView; 36 IBOutlet FHTableView *_tableView; 37 IBOutlet NSTableColumn *_fileTableColumn; 38 IBOutlet NSView *_rightView; 39 IBOutlet FHImageView *_imageView; 40 IBOutlet NSScrollView *_scrollView; 41 41 42 IBOutlet NSBox *_statusBox;43 IBOutlet NSTextField *_leftStatusTextField;44 IBOutlet NSTextField *_rightStatusTextField;42 IBOutlet NSBox *_statusBox; 43 IBOutlet NSTextField *_leftStatusTextField; 44 IBOutlet NSTextField *_rightStatusTextField; 45 45 46 IBOutlet NSPanel *_openURLPanel;47 IBOutlet NSTextView *_openURLTextView;48 IBOutlet NSPopUpButton *_openURLPopUpButton;46 IBOutlet NSPanel *_openURLPanel; 47 IBOutlet NSTextView *_openURLTextView; 48 IBOutlet NSPopUpButton *_openURLPopUpButton; 49 49 50 IBOutlet NSPanel *_openSpotlightPanel;51 IBOutlet NSTextView *_openSpotlightTextView;50 IBOutlet NSPanel *_openSpotlightPanel; 51 IBOutlet NSTextView *_openSpotlightTextView; 52 52 53 FHImageLoader *_imageLoader; 54 FHHandler *_handler; 53 IBOutlet NSPanel *_screenPanel; 54 IBOutlet NSPopUpButton *_screenPopUpButton; 55 IBOutlet NSPopUpButton *_screenBackgroundPopUpButton; 56 IBOutlet NSMenuItem *_screenBackgroundBlackMenuItem; 57 IBOutlet NSMenuItem *_screenBackgroundGrayMenuItem; 58 IBOutlet NSMenuItem *_screenBackgroundWhiteMenuItem; 59 IBOutlet NSButton *_screenAutoSwitchButton; 60 IBOutlet NSTextField *_screenAutoSwitchTextField; 61 62 FHImageLoader *_imageLoader; 63 FHHandler *_handler; 55 64 56 NSMutableDictionary *_toolbarItems;65 NSMutableDictionary *_toolbarItems; 57 66 58 NSSize _tableViewSize;59 BOOL _deletingFile;67 NSSize _tableViewSize; 68 BOOL _deletingFile; 60 69 } 61 70 62 71 63 #define FHWindowControllerDidLoadHandler @"FHWindowControllerDidLoadHandler" 72 #define FHBrowserWindowControllerDidLoadHandler @"FHBrowserWindowControllerDidLoadHandler" 73 #define FHBrowserWindowControllerChangedZoomMode @"FHBrowserWindowControllerChangedZoomMode" 64 74 65 75 … … 74 84 - (IBAction)nextPage:(id)sender; 75 85 86 - (IBAction)autoSwitch:(id)sender; 87 76 88 - (void)loadURL:(WIURL *)url; 77 89 - (WIURL *)URL; Footagehead/trunk/FHBrowserWindowController.m
r4706 r4709 27 27 */ 28 28 29 #import "FHBrowserWindowController.h" 29 30 #import "FHCache.h" 30 31 #import "FHFile.h" 31 32 #import "FHFileCell.h" 33 #import "FHFullscreenWindowController.h" 32 34 #import "FHHandler.h" 33 35 #import "FHImage.h" … … 35 37 #import "FHImageView.h" 36 38 #import "FHSettings.h" 37 #import "FHWindowController.h" 38 39 @interface FHWindowController(Private) 39 40 @interface FHBrowserWindowController(Private) 40 41 41 42 - (NSToolbar *)_toolbar; 42 43 - (void)_resizeTableView; 44 - (void)_reloadScreens; 43 45 - (void)_toggleStatusBar:(BOOL)show; 44 46 … … 60 62 61 63 62 @implementation FH WindowController(Private)64 @implementation FHBrowserWindowController(Private) 63 65 64 66 - (NSToolbar *)_toolbar { … … 68 70 _toolbarItems = [[NSMutableDictionary alloc] init]; 69 71 70 item = [NSToolbarItem toolbarItemWithIdentifier:@" News"71 name:NSLS(@" News", @"Newstoolbar item")72 content:[NSImage imageNamed:@" News"]72 item = [NSToolbarItem toolbarItemWithIdentifier:@"OpenParent" 73 name:NSLS(@"Open Parent", @"Open parent toolbar item") 74 content:[NSImage imageNamed:@"OpenParent"] 73 75 target:self 74 action:@selector(news:)]; 76 action:@selector(openParent:)]; 77 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 78 79 item = [NSToolbarItem toolbarItemWithIdentifier:@"Reload" 80 name:NSLS(@"Reload", @"Reload toolbar item") 81 content:[NSImage imageNamed:@"Reload"] 82 target:self 83 action:@selector(reload:)]; 84 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 85 86 item = [NSToolbarItem toolbarItemWithIdentifier:@"ActualSize" 87 name:NSLS(@"Actual Size", @"Actual size toolbar item") 88 content:[NSImage imageNamed:@"ActualSize"] 89 target:self 90 action:@selector(zoomMode:)]; 91 [item setTag:FHScaleNone]; 92 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 93 94 item = [NSToolbarItem toolbarItemWithIdentifier:@"ZoomToFit" 95 name:NSLS(@"Zoom To Fit", @"Zoom to fit toolbar item") 96 content:[NSImage imageNamed:@"ZoomToFit"] 97 target:self 98 action:@selector(zoomMode:)]; 99 [item setTag:FHScaleProportionally]; 100 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 101 102 item = [NSToolbarItem toolbarItemWithIdentifier:@"RotateLeft" 103 name:NSLS(@"Rotate Left", @"Rotate left toolbar item") 104 content:[NSImage imageNamed:@"RotateLeft"] 105 target:self 106 action:@selector(rotateLeft:)]; 107 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 108 109 item = [NSToolbarItem toolbarItemWithIdentifier:@"RotateRight" 110 name:NSLS(@"Rotate Right", @"Rotate right toolbar item") 111 content:[NSImage imageNamed:@"RotateRight"] 112 target:self 113 action:@selector(rotateRight:)]; 114 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 115 116 item = [NSToolbarItem toolbarItemWithIdentifier:@"RevealInFinder" 117 name:NSLS(@"Reveal In Finder", @"Reveal in Finder toolbar item") 118 content:[NSImage imageNamed:@"RevealInFinder"] 119 target:self 120 action:@selector(revealInFinder:)]; 121 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 122 123 item = [NSToolbarItem toolbarItemWithIdentifier:@"MoveToTrash" 124 name:NSLS(@"Move To Trash", @"Move to trash toolbar item") 125 content:[NSImage imageNamed:@"MoveToTrash"] 126 target:self 127 action:@selector(moveToTrash:)]; 128 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 129 130 item = [NSToolbarItem toolbarItemWithIdentifier:@"Slideshow" 131 name:NSLS(@"Slideshow", @"Slideshow toolbar item") 132 content:[NSImage imageNamed:@"Slideshow"] 133 target:self 134 action:@selector(slideshow:)]; 75 135 [_toolbarItems setObject:item forKey:[item itemIdentifier]]; 76 136 … … 92 152 [_tableView setRowHeight:size.width]; 93 153 [_tableView sizeToFitFromContent]; 154 } 155 156 157 158 - (void)_reloadScreens { 159 NSArray *screens; 160 NSRect frame; 161 NSUInteger i, index, count; 162 163 index = [_screenPopUpButton indexOfSelectedItem]; 164 165 [_screenPopUpButton removeAllItems]; 166 167 screens = [NSScreen screens]; 168 count = [screens count]; 169 170 for(i = 0; i < count; i++) { 171 frame = [[screens objectAtIndex:i] frame]; 172 173 [_screenPopUpButton addItemWithTitle:[NSSWF:NSLS(@"Screen %u, %.0fx%.0f", @"'Screen 1, 1024x768'"), 174 i + 1, 175 frame.size.width, 176 frame.size.height]]; 177 } 178 179 if(index != NSNotFound && index < count) 180 [_screenPopUpButton selectItemAtIndex:index]; 94 181 } 95 182 … … 176 263 177 264 [[NSNotificationCenter defaultCenter] 178 postNotificationName:FH WindowControllerDidLoadHandler265 postNotificationName:FHBrowserWindowControllerDidLoadHandler 179 266 object:_handler]; 180 267 … … 359 446 360 447 361 @implementation FH WindowController448 @implementation FHBrowserWindowController 362 449 363 450 - (id)init { … … 409 496 [self _resizeTableView]; 410 497 498 [_openURLPopUpButton selectItemWithTag:[FHSettings intForKey:FHHTMLImageType]]; 499 500 [self _reloadScreens]; 501 502 if([FHSettings intForKey:FHFullscreenScreen] < [_screenPopUpButton numberOfItems]) 503 [_screenPopUpButton selectItemAtIndex:[FHSettings intForKey:FHFullscreenScreen]]; 504 505 [_screenBackgroundBlackMenuItem setTag:FHFullscreenBackgroundBlack]; 506 [_screenBackgroundBlackMenuItem setImage:[NSImage imageNamed:@"Black"]]; 507 [_screenBackgroundGrayMenuItem setTag:FHFullscreenBackgroundGray]; 508 [_screenBackgroundGrayMenuItem setImage:[NSImage imageNamed:@"Gray"]]; 509 [_screenBackgroundWhiteMenuItem setTag:FHFullscreenBackgroundWhite]; 510 [_screenBackgroundWhiteMenuItem setImage:[NSImage imageNamed:@"White"]]; 511 512 [_screenBackgroundPopUpButton selectItemWithTag:[FHSettings intForKey:FHFullscreenBackground]]; 513 514 [_screenAutoSwitchButton setState:[FHSettings boolForKey:FHFullscreenAutoSwitch]]; 515 [_screenAutoSwitchTextField setEnabled:[FHSettings boolForKey:FHFullscreenAutoSwitch]]; 516 [_screenAutoSwitchTextField setIntValue:[FHSettings intForKey:FHFullscreenAutoSwitchTime]]; 517 518 [[NSNotificationCenter defaultCenter] 519 addObserver:self 520 selector:@selector(applicationDidChangeScreenParameters:) 521 name:NSApplicationDidChangeScreenParametersNotification]; 522 411 523 [[NSNotificationCenter defaultCenter] 412 524 addObserver:self … … 424 536 selector:@selector(eventFileWrite:) 425 537 name:WIEventFileWriteNotification]; 426 427 // --- set up fullscreen panel428 /* [self _reloadScreens];429 430 if([FHSettings intForKey:FHFullscreenScreen] < [_screenPopUpButton numberOfItems])431 [_screenPopUpButton selectItemAtIndex:[FHSettings intForKey:FHFullscreenScreen]];432 433 [self _reloadScreenBackgrounds];434 435 [_screenBackgroundPopUpButton selectItemWithTag:[FHSettings intForKey:FHFullscreenBackground]];436 437 [_screenAutoSwitchButton setState:[FHSettings boolForKey:FHFullscreenAutoSwitch]];438 [_screenAutoSwitchTextField setEnabled:[FHSettings boolForKey:FHFullscreenAutoSwitch]];439 [_screenAutoSwitchTextField setIntValue:[FHSettings intForKey:FHFullscreenAutoSwitchTime]];440 441 [_imageView setImageScaling:[FHSettings intForKey:FHImageScalingMethod]];442 [_imageView setImageRotation:[FHSettings floatForKey:FHImageRotation]];443 444 // --- set up URL panel445 [_openURLPopUpButton selectItemWithTag:[FHSettings intForKey:FHHTMLImageType]];446 447 // --- set up status bar448 if(![FHSettings boolForKey:FHShowStatusBar])449 [self _toggleStatusBar:NO];450 451 // --- set up toolbar452 [[self window] setToolbar:[self _toolbar]];453 454 // --- create locks455 _loadImageLock = [[NSConditionLock alloc] initWithCondition:0];456 _loadThumbnailsLock = [[NSConditionLock alloc] initWithCondition:0];457 458 // --- create queue459 _queue = [[WIEventQueue alloc] init];460 461 // --- open last directory by default (unset if started by opening a file)462 _openLastURL = YES;463 464 // --- build menu465 [_menu removeAllItems];466 [self _reloadVolumesMenu];467 [self _addMenuItemWithPath:@"~" keyEquivalent:@"H"];468 [self _addMenuItemWithPath:@"~/Desktop" keyEquivalent:@"d"];469 470 if([[NSFileManager defaultManager] directoryExistsAtPath:[@"~/Pictures" stringByExpandingTildeInPath]])471 [self _addMenuItemWithPath:@"~/Pictures" keyEquivalent:@"P"];472 473 [_menu addItem:(NSMenuItem *) [NSMenuItem separatorItem]];474 _menuItems++;475 476 // --- subscribe to these477 [[[NSWorkspace sharedWorkspace] notificationCenter]478 addObserver:self479 selector:@selector(workspaceDidMount:)480 name:NSWorkspaceDidMountNotification481 object:NULL];482 483 [[[NSWorkspace sharedWorkspace] notificationCenter]484 addObserver:self485 selector:@selector(workspaceDidUnmount:)486 name:NSWorkspaceDidUnmountNotification487 object:NULL];488 489 [[[NSWorkspace sharedWorkspace] notificationCenter]490 addObserver:self491 selector:@selector(eventFileWrite:)492 name:WIEventFileWriteNotification493 object:NULL];494 495 [[NSNotificationCenter defaultCenter]496 addObserver:self497 selector:@selector(viewFrameDidChange:)498 name:NSViewFrameDidChangeNotification499 object:_tableView];500 501 // --- set from prefs502 [self _updateTableView];503 504 // --- detach loader threads505 [NSThread detachNewThreadSelector:@selector(_loadImageThread:) toTarget:self withObject:NULL];506 [NSThread detachNewThreadSelector:@selector(_loadThumbnailsThread:) toTarget:self withObject:NULL];507 [NSThread setThreadPriority:0.75];*/508 538 } 509 539 … … 512 542 - (void)windowDidResize:(NSNotification *)notification { 513 543 [self _updateRightStatus]; 544 } 545 546 547 548 - (void)applicationDidChangeScreenParameters:(NSNotification *)notification { 549 [self _reloadScreens]; 514 550 } 515 551 … … 570 606 return YES; 571 607 } 608 else if(selector == @selector(cancelOperation:)) { 609 [self cancelSheet:textView]; 610 611 return YES; 612 } 572 613 573 614 return NO; … … 584 625 - (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar *)toolbar { 585 626 return [NSArray arrayWithObjects: 586 @"News", 627 @"OpenParent", 628 @"Slideshow", 629 @"Reload", 630 NSToolbarSeparatorItemIdentifier, 631 @"RotateLeft", 632 @"RotateRight", 633 NSToolbarSeparatorItemIdentifier, 634 @"ActualSize", 635 @"ZoomToFit", 636 NSToolbarSeparatorItemIdentifier, 637 @"RevealInFinder", 638 @"MoveToTrash", 639 NSToolbarFlexibleSpaceItemIdentifier, 640 NSToolbarCustomizeToolbarItemIdentifier, 587 641 NULL]; 588 642 } … … 592 646 - (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar { 593 647 return [NSArray arrayWithObjects: 594 @"News", 648 @"OpenParent", 649 @"Reload", 650 @"ActualSize", 651 @"ZoomToFit", 652 @"RotateLeft", 653 @"RotateRight", 654 @"RevealInFinder", 655 @"MoveToTrash", 656 @"Slideshow", 595 657 NSToolbarSeparatorItemIdentifier, 596 658 NSToolbarSpaceItemIdentifier, … … 662 724 #pragma mark - 663 725 664 - (BOOL)validateMenuItem:(NSMenuItem *)menuItem { 665 WIURL *url; 666 SEL selector; 667 668 selector = [menuItem action]; 669 670 if(selector == @selector(go:)) { 671 url = [menuItem representedObject]; 672 673 if([url isFileURL]) 674 return [[NSFileManager defaultManager] directoryExistsAtPath:[url path]]; 675 } 676 else if(selector == @selector(openParent:)) { 726 - (BOOL)validateSelector:(SEL)selector { 727 if(selector == @selector(openParent:)) { 677 728 return [_handler hasParent]; 678 729 } … … 682 733 return ([_handler isLocal] && [self _selectedFile]); 683 734 } 735 else if(selector == @selector(slideshow:)) { 736 return ([_handler numberOfImages] > 0); 737 } 684 738 685 739 return YES; 740 } 741 742 743 744 - (BOOL)validateMenuItem:(NSMenuItem *)item { 745 WIURL *url; 746 SEL selector; 747 748 selector = [item action]; 749 750 if(selector == @selector(go:)) { 751 url = [item representedObject]; 752 753 if([url isFileURL]) 754 return [[NSFileManager defaultManager] directoryExistsAtPath:[url path]]; 755 } 756 757 return [self validateSelector:selector]; 758 } 759 760 761 762 - (BOOL)validateToolbarItem:(NSToolbarItem *)item { 763 SEL selector; 764 765 selector = [item action]; 766 767 return [self validateSelector:selector]; 686 768 } 687 769 … … 779 861 780 862 [self _loadURL:url selectFile:name]; 863 [self _showFile:[self _selectedFile]]; 781 864 } 782 865 } … … 1022 1105 - (void)zoomMode:(id)sender { 1023 1106 FHImageScaling scaling; 1024 1025 [[[sender menu] itemWithTag:[FHSettings intForKey:FHImageScalingMethod]] setState:NSOffState];1026 1027 [sender setState:NSOnState];1028 1107 1029 1108 scaling = [sender tag]; … … 1032 1111 1033 1112 [FHSettings setInt:scaling forKey:FHImageScalingMethod]; 1113 1114 [[NSNotificationCenter defaultCenter] postNotificationName:FHBrowserWindowControllerChangedZoomMode]; 1034 1115 1035 1116 [self _updateRightStatus]; … … 1076 1157 1077 1158 1159 - (void)slideshow:(id)sender { 1160 [NSApp beginSheet:_screenPanel 1161 modalForWindow:[self window] 1162 modalDelegate:self 1163 didEndSelector:@selector(slideshowPanelDidEnd:returnCode:contextInfo:) 1164 contextInfo:NULL]; 1165 } 1166 1167 1168 1169 - (void)slideshowPanelDidEnd:(NSOpenPanel *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo { 1170 FHFullscreenWindowController *controller; 1171 1172 [_screenPanel close]; 1173 1174 if(returnCode == NSAlertDefaultReturn) { 1175 [FHSettings setInt:[_screenPopUpButton indexOfSelectedItem] forKey:FHFullscreenScreen]; 1176 [FHSettings setInt:[_screenBackgroundPopUpButton tagOfSelectedItem] forKey:FHFullscreenBackground]; 1177 [FHSettings setBool:[_screenAutoSwitchButton state] forKey:FHFullscreenAutoSwitch]; 1178 [FHSettings setInt:[_screenAutoSwitchTextField intValue] forKey:FHFullscreenAutoSwitchTime]; 1179 1180 controller = [[FHFullscreenWindowController alloc] initWithFiles:[_handler files] index:[_tableView selectedRow]]; 1181 [controller showWindow:self]; 1182 [controller release]; 1183 } 1184 } 1185 1186 1187 1188 - (IBAction)autoSwitch:(id)sender { 1189 [_screenAutoSwitchTextField setEnabled:[_screenAutoSwitchButton state]]; 1190 } 1191 1192 1193 1078 1194 - (void)toggleStatusBar:(id)sender { 1079 1195 BOOL show; Footagehead/trunk/FHController.h
r4706 r4709 27 27 */ 28 28 29 @class FH WindowController;29 @class FHBrowserWindowController; 30 30 @class FHImageView, FHFullscreenWindow; 31 31 @class FHHandler, FHFile; … … 75 75 IBOutlet NSTextView *_openSpotlightTextView; 76 76 77 FH WindowController *_windowController;77 FHBrowserWindowController *_browserController; 78 78 79 79 FHFullscreenWindow *_fullscreenWindow; Footagehead/trunk/FHController.m
r4706 r4709 28 28 29 29 #import "NSImage-FHAdditions.h" 30 #import "FHBrowserWindowController.h" 30 31 #import "FHCache.h" 31 32 #import "FHController.h" … … 37 38 #import "FHImageView.h" 38 39 #import "FHSettings.h" 39 #import "FHWindowController.h"40 40 41 41 @interface FHController(Private) … … 46 46 - (void)_reloadPathsInGoMenuForHandler:(FHHandler *)handler; 47 47 48 - (void)_reloadScreens;49 - (void)_reloadScreenBackgrounds;50 51 48 - (void)_startSpinning; 52 49 - (void)_stopSpinning; 53 50
