Revision: 14686
          http://sourceforge.net/p/skim-app/code/14686
Author:   hofman
Date:     2024-11-14 15:38:27 +0000 (Thu, 14 Nov 2024)
Log Message:
-----------
derive whether to add submenu for bookmark from type and alternate flag

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

Modified: trunk/SKBookmarkController.m
===================================================================
--- trunk/SKBookmarkController.m        2024-11-14 15:25:03 UTC (rev 14685)
+++ trunk/SKBookmarkController.m        2024-11-14 15:38:27 UTC (rev 14686)
@@ -599,9 +599,9 @@
 
 #pragma mark NSMenu delegate methods
 
-- (void)addItemForBookmark:(SKBookmark *)bookmark toMenu:(NSMenu *)menu 
isFolder:(BOOL)isFolder isAlternate:(BOOL)isAlternate tag:(NSInteger)tag {
+- (void)addItemForBookmark:(SKBookmark *)bookmark toMenu:(NSMenu *)menu 
alternate:(BOOL)alternate tag:(NSInteger)tag {
     NSMenuItem *item = nil;
-    if (isFolder) {
+    if (([bookmark bookmarkType] == SKBookmarkTypeFolder) != alternate) {
         item = [menu addItemWithSubmenuAndTitle:[bookmark label]];
         [[item submenu] setDelegate:self];
     } else {
@@ -609,7 +609,7 @@
     }
     [item setRepresentedObject:bookmark];
     [item setTag:tag];
-    if (isAlternate) {
+    if (alternate) {
         [item setKeyEquivalentModifierMask:NSEventModifierFlagOption];
         [item setAlternate:YES];
         [item setImageAndSize:[bookmark alternateIcon]];
@@ -702,15 +702,15 @@
                 if (previousSession || closedDocuments || currentDocument)
                     [menu addItem:[NSMenuItem separatorItem]];
                 if (previousSession) {
-                    [self addItemForBookmark:previousSession toMenu:menu 
isFolder:NO isAlternate:NO tag:SKBookmarkTagPreviousSession];
-                    [self addItemForBookmark:previousSession toMenu:menu 
isFolder:YES isAlternate:YES tag:SKBookmarkTagPreviousSession];
+                    [self addItemForBookmark:previousSession toMenu:menu 
alternate:NO tag:SKBookmarkTagPreviousSession];
+                    [self addItemForBookmark:previousSession toMenu:menu 
alternate:YES tag:SKBookmarkTagPreviousSession];
                 }
                 if (closedDocuments) {
-                    [self addItemForBookmark:closedDocuments toMenu:menu 
isFolder:YES isAlternate:NO tag:SKBookmarkTagClosedDocuments];
-                    [self addItemForBookmark:closedDocuments toMenu:menu 
isFolder:NO isAlternate:YES tag:SKBookmarkTagClosedDocuments];
+                    [self addItemForBookmark:closedDocuments toMenu:menu 
alternate:NO tag:SKBookmarkTagClosedDocuments];
+                    [self addItemForBookmark:closedDocuments toMenu:menu 
alternate:YES tag:SKBookmarkTagClosedDocuments];
                 }
                 if (currentDocument) {
-                    [self addItemForBookmark:currentDocument toMenu:menu 
isFolder:YES isAlternate:NO tag:SKBookmarkTagCurrentDocument];
+                    [self addItemForBookmark:currentDocument toMenu:menu 
alternate:NO tag:SKBookmarkTagCurrentDocument];
                 }
             } else {
                 [menu removeAllItems];
@@ -720,19 +720,19 @@
             for (SKBookmark *bm in bookmarks) {
                 switch ([bm bookmarkType]) {
                     case SKBookmarkTypeFolder:
-                        [self addItemForBookmark:bm toMenu:menu isFolder:YES 
isAlternate:NO tag:0];
+                        [self addItemForBookmark:bm toMenu:menu alternate:NO 
tag:0];
                         if (containsFolders(bm) == NO)
-                            [self addItemForBookmark:bm toMenu:menu 
isFolder:NO isAlternate:YES tag:0];
+                            [self addItemForBookmark:bm toMenu:menu 
alternate:YES tag:0];
                         break;
                     case SKBookmarkTypeSession:
-                        [self addItemForBookmark:bm toMenu:menu isFolder:NO 
isAlternate:NO tag:0];
-                        [self addItemForBookmark:bm toMenu:menu isFolder:YES 
isAlternate:YES tag:0];
+                        [self addItemForBookmark:bm toMenu:menu alternate:NO 
tag:0];
+                        [self addItemForBookmark:bm toMenu:menu alternate:YES 
tag:0];
                         break;
                     case SKBookmarkTypeSeparator:
                         [menu addItem:[NSMenuItem separatorItem]];
                         break;
                     default:
-                        [self addItemForBookmark:bm toMenu:menu isFolder:NO 
isAlternate:NO tag:0];
+                        [self addItemForBookmark:bm toMenu:menu alternate:NO 
tag:0];
                         break;
                 }
             }

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



_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to