Revision: 3167
http://skim-app.svn.sourceforge.net/skim-app/?rev=3167&view=rev
Author: hofman
Date: 2007-11-06 16:27:29 -0800 (Tue, 06 Nov 2007)
Log Message:
-----------
Toggle line inspector and notes panel rather than just showing them.
Modified Paths:
--------------
trunk/SKApplication.h
trunk/SKApplication.m
trunk/SKLineInspector.h
trunk/SKLineInspector.m
trunk/SKNotesPanelController.h
trunk/SKNotesPanelController.m
Modified: trunk/SKApplication.h
===================================================================
--- trunk/SKApplication.h 2007-11-06 19:09:30 UTC (rev 3166)
+++ trunk/SKApplication.h 2007-11-07 00:27:29 UTC (rev 3167)
@@ -42,6 +42,7 @@
@interface SKApplication : NSApplication
- (IBAction)orderFrontLineInspector:(id)sender;
+- (IBAction)orderFrontNotesPanel:(id)sender;
@end
Modified: trunk/SKApplication.m
===================================================================
--- trunk/SKApplication.m 2007-11-06 19:09:30 UTC (rev 3166)
+++ trunk/SKApplication.m 2007-11-07 00:27:29 UTC (rev 3167)
@@ -41,6 +41,7 @@
#import "SKPDFSynchronizer.h"
#import "SKPDFView.h"
#import "SKLineInspector.h"
+#import "SKNotesPanelController.h"
#import "NSString_SKExtensions.h"
NSString *SKApplicationStartsTerminatingNotification =
@"SKApplicationStartsTerminatingNotification";
@@ -53,9 +54,39 @@
@implementation SKApplication
- (IBAction)orderFrontLineInspector:(id)sender {
- [[[SKLineInspector sharedLineInspector] window] orderFront:sender];
+ if ([SKLineInspector sharedLineInspectorExists] && [[[SKLineInspector
sharedLineInspector] window] isVisible])
+ [[[SKLineInspector sharedLineInspector] window] orderFront:sender];
+ else
+ [[[SKLineInspector sharedLineInspector] window] orderOut:sender];
}
+- (IBAction)orderFrontNotesPanel:(id)sender {
+ if ([SKNotesPanelController sharedControllerExists] &&
[[[SKNotesPanelController sharedController] window] isVisible])
+ [[[SKNotesPanelController sharedController] window] orderFront:sender];
+ else
+ [[[SKNotesPanelController sharedController] window] orderOut:sender];
+}
+
+- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
+ SEL action = [menuItem action];
+ if (action == @selector(orderFrontLineInspector:)) {
+ if ([SKLineInspector sharedLineInspectorExists] && [[[SKLineInspector
sharedLineInspector] window] isVisible])
+ [menuItem setTitle:NSLocalizedString(@"Hide Lines", @"Menu item
title")];
+ else
+ [menuItem setTitle:NSLocalizedString(@"Show Lines", @"Menu item
title")];
+ return YES;
+ } else if (action == @selector(orderFrontNotesPanel:)) {
+ if ([SKNotesPanelController sharedControllerExists] &&
[[[SKNotesPanelController sharedController] window] isVisible])
+ [menuItem setTitle:NSLocalizedString(@"Hide Notes", @"Menu item
title")];
+ else
+ [menuItem setTitle:NSLocalizedString(@"Show Notes", @"Menu item
title")];
+ return YES;
+ } else if ([[SKApplication superclass] respondsToSelector:_cmd]) {
+ return [super validateMenuItem:menuItem];
+ }
+ return YES;
+}
+
- (void)sendEvent:(NSEvent *)anEvent {
if ([anEvent type] == NSScrollWheel && [anEvent modifierFlags] &
NSAlternateKeyMask) {
id target = [self targetForAction:@selector(magnifyWheel:)];
Modified: trunk/SKLineInspector.h
===================================================================
--- trunk/SKLineInspector.h 2007-11-06 19:09:30 UTC (rev 3166)
+++ trunk/SKLineInspector.h 2007-11-07 00:27:29 UTC (rev 3167)
@@ -64,6 +64,7 @@
}
+ (id)sharedLineInspector;
++ (BOOL)sharedLineInspectorExists;
- (float)lineWidth;
- (void)setLineWidth:(float)width;
Modified: trunk/SKLineInspector.m
===================================================================
--- trunk/SKLineInspector.m 2007-11-06 19:09:30 UTC (rev 3166)
+++ trunk/SKLineInspector.m 2007-11-07 00:27:29 UTC (rev 3167)
@@ -58,6 +58,10 @@
return sharedLineInspector;
}
++ (BOOL)sharedLineInspectorExists {
+ return sharedLineInspector != nil;
+}
+
+ (id)allocWithZone:(NSZone *)zone {
if (sharedLineInspector == nil)
return [super allocWithZone:[self zone]];
Modified: trunk/SKNotesPanelController.h
===================================================================
--- trunk/SKNotesPanelController.h 2007-11-06 19:09:30 UTC (rev 3166)
+++ trunk/SKNotesPanelController.h 2007-11-07 00:27:29 UTC (rev 3167)
@@ -41,10 +41,6 @@
@interface SKNotesPanelController : NSWindowController
+ (id)sharedController;
++ (BOOL)sharedControllerExists;
- (IBAction)addNote:(id)sender;
@end
-
-
[EMAIL PROTECTED] NSApplication (SKNotesPanelControllerExtensions)
-- (IBAction)orderFrontNotesPanel:(id)sender;
[EMAIL PROTECTED]
Modified: trunk/SKNotesPanelController.m
===================================================================
--- trunk/SKNotesPanelController.m 2007-11-06 19:09:30 UTC (rev 3166)
+++ trunk/SKNotesPanelController.m 2007-11-07 00:27:29 UTC (rev 3167)
@@ -51,6 +51,10 @@
return sharedController;
}
++ (BOOL)sharedControllerExists {
+ return sharedController != nil;
+}
+
+ (id)allocWithZone:(NSZone *)zone {
if (sharedController == nil)
return [super allocWithZone:[self zone]];
@@ -89,10 +93,3 @@
}
@end
-
-
[EMAIL PROTECTED] NSApplication (SKNotesPanelControllerExtensions)
-- (IBAction)orderFrontNotesPanel:(id)sender {
- [[[SKNotesPanelController sharedController] window] orderFront:sender];
-}
[EMAIL PROTECTED]
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit