Revision: 14922
          http://sourceforge.net/p/skim-app/code/14922
Author:   hofman
Date:     2025-02-08 18:00:24 +0000 (Sat, 08 Feb 2025)
Log Message:
-----------
implement validateUserInterfaceItem: instead of validateMenuItem: in table view 
subclasses

Modified Paths:
--------------
    trunk/SKNoteOutlineView.m
    trunk/SKOutlineView.m
    trunk/SKTableView.m

Modified: trunk/SKNoteOutlineView.m
===================================================================
--- trunk/SKNoteOutlineView.m   2025-02-08 17:34:01 UTC (rev 14921)
+++ trunk/SKNoteOutlineView.m   2025-02-08 18:00:24 UTC (rev 14922)
@@ -165,8 +165,9 @@
         return YES;
     } else if ([[SKNoteOutlineView superclass] 
instancesRespondToSelector:_cmd]) {
         return [super validateMenuItem:menuItem];
+    } else {
+        return [self validateUserInterfaceItem:menuItem];
     }
-    return YES;
 }
 
 - (BOOL)outlineColumnIsFirst {

Modified: trunk/SKOutlineView.m
===================================================================
--- trunk/SKOutlineView.m       2025-02-08 17:34:01 UTC (rev 14921)
+++ trunk/SKOutlineView.m       2025-02-08 18:00:24 UTC (rev 14922)
@@ -205,21 +205,19 @@
         NSBeep();
 }
 
-- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
-    if ([menuItem action] == @selector(delete:))
+- (BOOL)validateUserInterfaceItem:(id<NSValidatedUserInterfaceItem>)item {
+    if ([item action] == @selector(delete:))
         return [self canDelete];
-    else if ([menuItem action] == @selector(copy:))
+    else if ([item action] == @selector(copy:))
         return [self canCopy];
-    else if ([menuItem action] == @selector(paste:))
+    else if ([item action] == @selector(paste:))
         return [self canPaste];
-    else if ([menuItem action] == @selector(selectAll:))
+    else if ([item action] == @selector(selectAll:))
         return [self allowsMultipleSelection];
-    else if ([menuItem action] == @selector(deselectAll:))
+    else if ([item action] == @selector(deselectAll:))
         return [self allowsEmptySelection];
-    else if ([[SKOutlineView superclass] 
instancesRespondToSelector:@selector(validateMenuItem:)])
-        return [super validateMenuItem:menuItem];
-    else if ([self respondsToSelector:@selector(validateUserInterfaceItem:)])
-        return [self validateUserInterfaceItem:menuItem];
+    else
+        return [super validateUserInterfaceItem:item];
     return YES;
 }
 

Modified: trunk/SKTableView.m
===================================================================
--- trunk/SKTableView.m 2025-02-08 17:34:01 UTC (rev 14921)
+++ trunk/SKTableView.m 2025-02-08 18:00:24 UTC (rev 14922)
@@ -200,22 +200,19 @@
         NSBeep();
 }
 
-- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
-    if ([menuItem action] == @selector(delete:))
+- (BOOL)validateUserInterfaceItem:(id<NSValidatedUserInterfaceItem>)item {
+    if ([item action] == @selector(delete:))
         return [self canDelete];
-    else if ([menuItem action] == @selector(copy:))
+    else if ([item action] == @selector(copy:))
         return [self canCopy];
-    else if ([menuItem action] == @selector(paste:))
+    else if ([item action] == @selector(paste:))
         return [self canPaste];
-    else if ([menuItem action] == @selector(selectAll:))
+    else if ([item action] == @selector(selectAll:))
         return [self allowsMultipleSelection];
-    else if ([menuItem action] == @selector(deselectAll:))
+    else if ([item action] == @selector(deselectAll:))
         return [self allowsEmptySelection];
-    else if ([[SKTableView superclass] 
instancesRespondToSelector:@selector(validateMenuItem:)])
-        return [super validateMenuItem:menuItem];
-    else if ([self respondsToSelector:@selector(validateUserInterfaceItem:)])
-        return [self validateUserInterfaceItem:menuItem];
-    return YES;
+    else
+        return [super validateUserInterfaceItem:item];
 }
 
 - (NSFont *)font {

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Skim-app-commit mailing list
Skim-app-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to