Revision: 15122
http://sourceforge.net/p/skim-app/code/15122
Author: hofman
Date: 2025-04-12 16:26:53 +0000 (Sat, 12 Apr 2025)
Log Message:
-----------
Add separate menu items for zoom in/out toolbar items in label-only mode
Modified Paths:
--------------
trunk/SKMainToolbarController.m
trunk/de.lproj/Localizable.strings
trunk/en.lproj/Localizable.strings
trunk/es.lproj/Localizable.strings
trunk/fr.lproj/Localizable.strings
trunk/it.lproj/Localizable.strings
trunk/ja.lproj/Localizable.strings
trunk/nl.lproj/Localizable.strings
trunk/pl.lproj/Localizable.strings
trunk/ru.lproj/Localizable.strings
trunk/zh_CN.lproj/Localizable.strings
trunk/zh_TW.lproj/Localizable.strings
Modified: trunk/SKMainToolbarController.m
===================================================================
--- trunk/SKMainToolbarController.m 2025-04-12 16:06:30 UTC (rev 15121)
+++ trunk/SKMainToolbarController.m 2025-04-12 16:26:53 UTC (rev 15122)
@@ -203,7 +203,7 @@
static NSSet *groupIdentifiers = nil;
if (groupIdentifiers == nil)
- groupIdentifiers = [NSSet
setWithObjects:SKDocumentToolbarPreviousNextItemIdentifier,
SKDocumentToolbarPreviousNextFirstLastItemIdentifier,
SKDocumentToolbarBackForwardItemIdentifier,
SKDocumentToolbarPacerItemIdentifier, nil];
+ groupIdentifiers = [NSSet
setWithObjects:SKDocumentToolbarPreviousNextItemIdentifier,
SKDocumentToolbarPreviousNextFirstLastItemIdentifier,
SKDocumentToolbarBackForwardItemIdentifier,
SKDocumentToolbarZoomInOutItemIdentifier, SKDocumentToolbarPacerItemIdentifier,
nil];
if ([groupIdentifiers containsObject:identifier])
item = [[SKToolbarItemGroup alloc]
initWithItemIdentifier:identifier];
@@ -356,11 +356,6 @@
} else if ([identifier
isEqualToString:SKDocumentToolbarZoomInOutItemIdentifier]) {
- menuItem = [[NSMenuItem alloc]
initWithSubmenuAndTitle:NSLocalizedString(@"Zoom", @"Toolbar item label")];
- menu = [menuItem submenu];
- [menu addItemWithTitle:NSLocalizedString(@"Zoom In", @"Menu item
title") action:@selector(doZoomIn:) target:mainController];
- [menu addItemWithTitle:NSLocalizedString(@"Zoom Out", @"Menu item
title") action:@selector(doZoomOut:) target:mainController];
-
[item setLabels:NSLocalizedString(@"Zoom", @"Toolbar item label")];
[item setToolTip:NSLocalizedString(@"Zoom", @"Tool tip message")];
[zoomInOutButton setHelp:NSLocalizedString(@"Zoom Out", @"Tool tip
message") forSegment:0];
@@ -367,8 +362,19 @@
[zoomInOutButton setHelp:NSLocalizedString(@"Zoom In", @"Tool tip
message") forSegment:1];
[zoomInOutButton setSegmentStyle:NSSegmentStyleSeparated];
[item setView:zoomInOutButton];
- [item setMenuFormRepresentation:menuItem];
+ NSToolbarItem *item1 = [[NSToolbarItem alloc]
initWithItemIdentifier:@""];
+ [item1 setLabels:NSLocalizedString(@"Zoom Out", @"Toolbar item
label")];
+ menuItem = [[NSMenuItem alloc]
initWithTitle:NSLocalizedString(@"Zoom Out", @"Menu item title")
action:@selector(doZoomOut:) target:mainController];
+ [item1 setMenuFormRepresentation:menuItem];
+ [item1 setEnabled:[mainController.pdfView canZoomOut]];
+ NSToolbarItem *item2 = [[NSToolbarItem alloc]
initWithItemIdentifier:@""];
+ [item2 setLabels:NSLocalizedString(@"Zoom In", @"Toolbar item
label")];
+ [item2 setEnabled:[mainController.pdfView canZoomIn]];
+ menuItem = [[NSMenuItem alloc]
initWithTitle:NSLocalizedString(@"Zoom In", @"Menun item title")
action:@selector(doZoomIn:) target:mainController];
+ [item2 setMenuFormRepresentation:menuItem];
+ [(NSToolbarItemGroup *)item setSubitems:@[item1, item2]];
+
} else if ([identifier
isEqualToString:SKDocumentToolbarZoomInActualOutItemIdentifier]) {
menuItem = [[NSMenuItem alloc]
initWithSubmenuAndTitle:NSLocalizedString(@"Zoom", @"Toolbar item label")];
@@ -1360,6 +1366,7 @@
- (void)handleChangedHistoryNotification:(NSNotification *)notification {
[backForwardButton setEnabled:[mainController.pdfView canGoBack]
forSegment:0];
[backForwardButton setEnabled:[mainController.pdfView canGoForward]
forSegment:1];
+
NSArray *subitems = [(NSToolbarItemGroup *)[toolbarItems
objectForKey:SKDocumentToolbarBackForwardItemIdentifier] subitems];
[[subitems objectAtIndex:0] setEnabled:[mainController.pdfView canGoBack]];
[[subitems objectAtIndex:1] setEnabled:[mainController.pdfView
canGoForward]];
@@ -1376,6 +1383,7 @@
[previousNextFirstLastPageButton setEnabled:[mainController.pdfView
canGoToPreviousPage] forSegment:1];
[previousNextFirstLastPageButton setEnabled:[mainController.pdfView
canGoToNextPage] forSegment:2];
[previousNextFirstLastPageButton setEnabled:[mainController.pdfView
canGoToLastPage] forSegment:3];
+
NSArray *subitems = [(NSToolbarItemGroup *)[toolbarItems
objectForKey:SKDocumentToolbarPreviousNextItemIdentifier] subitems];
[[subitems objectAtIndex:0] setEnabled:[mainController.pdfView
canGoToPreviousPage]];
[[subitems objectAtIndex:1] setEnabled:[mainController.pdfView
canGoToNextPage]];
@@ -1392,6 +1400,10 @@
[zoomActualButton setEnabled:[mainController.pdfView.document isLocked] ==
NO];
[autoScalesButton setSelected:[mainController.pdfView autoScales]
forSegment:0];
+
+ NSArray *subitems = [(NSToolbarItemGroup *)[toolbarItems
objectForKey:SKDocumentToolbarZoomInOutItemIdentifier] subitems];
+ [[subitems objectAtIndex:0] setEnabled:[mainController.pdfView
canZoomOut]];
+ [[subitems objectAtIndex:1] setEnabled:[mainController.pdfView canZoomIn]];
}
- (void)handleAutoScalesChangedNotification:(NSNotification *)notification {
Modified: trunk/de.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/en.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/es.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/fr.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/it.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/ja.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/nl.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/pl.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/ru.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/zh_CN.lproj/Localizable.strings
===================================================================
(Binary files differ)
Modified: trunk/zh_TW.lproj/Localizable.strings
===================================================================
(Binary files differ)
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