Revision: 3532
          http://skim-app.svn.sourceforge.net/skim-app/?rev=3532&view=rev
Author:   hofman
Date:     2008-03-22 10:28:47 -0700 (Sat, 22 Mar 2008)

Log Message:
-----------
Small improvement to toolbar item validation. Move soem code to 
segmentedControl category.

Modified Paths:
--------------
    trunk/SKMainWindowController.m

Modified: trunk/SKMainWindowController.m
===================================================================
--- trunk/SKMainWindowController.m      2008-03-22 17:19:04 UTC (rev 3531)
+++ trunk/SKMainWindowController.m      2008-03-22 17:28:47 UTC (rev 3532)
@@ -182,6 +182,12 @@
     return [[self cell] tagForSegment:[self selectedSegment]];
 }
 
+- (void)setEnabledForAllSegments:(BOOL)enabled  {
+    unsigned i, count = [self segmentCount];
+    for (i = 0; i < count; i++)
+        [self setEnabled:enabled forSegment:i];
+}
+
 @end
 
 @interface NSResponder (SKExtensions)
@@ -5247,11 +5253,8 @@
         [item setEnabled:YES];
         if ([[item view] respondsToSelector:@selector(setEnabled:)])
             [(NSControl *)[item view] setEnabled:YES];
-        if ([[item view] 
respondsToSelector:@selector(setEnabled:forSegment:)]) {
-            unsigned i, count = [(NSSegmentedControl *)[item view] 
segmentCount];
-            for (i = 0; i < count; i++)
-                [(NSSegmentedControl *)[item view] setEnabled:YES 
forSegment:i];
-        }
+        if ([[item view] 
respondsToSelector:@selector(setEnabledForAllSegments:)])
+            [(NSSegmentedControl *)[item view] setEnabledForAllSegments:YES];
     }
     
     return item;
@@ -5313,6 +5316,7 @@
 - (BOOL)validateToolbarItem:(NSToolbarItem *)toolbarItem {
     NSString *identifier = [toolbarItem itemIdentifier];
     BOOL noPalette = NO == [[mainWindow toolbar] 
customizationPaletteIsRunning];
+    
     if ([identifier 
isEqualToString:SKDocumentToolbarZoomActualItemIdentifier]) {
         return noPalette && fabsf([pdfView scaleFactor] - 1.0 ) > 0.01;
     } else if ([identifier 
isEqualToString:SKDocumentToolbarZoomToFitItemIdentifier]) {
@@ -5328,6 +5332,7 @@
         [noteButton setEnabled:enabled forSegment:SKHighlightNote];
         [noteButton setEnabled:enabled forSegment:SKUnderlineNote];
         [noteButton setEnabled:enabled forSegment:SKStrikeOutNote];
+        return noPalette && ([pdfView toolMode] == SKTextToolMode || [pdfView 
toolMode] == SKNoteToolMode) && [pdfView hideNotes] == NO;
     }
     return noPalette;
 }


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: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Skim-app-commit mailing list
Skim-app-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to