Revision: 14108
http://sourceforge.net/p/skim-app/code/14108
Author: hofman
Date: 2024-03-14 22:46:51 +0000 (Thu, 14 Mar 2024)
Log Message:
-----------
method to see if we display any find table
Modified Paths:
--------------
trunk/SKMainWindowController.h
trunk/SKMainWindowController.m
trunk/SKMainWindowController_Actions.m
trunk/SKMainWindowController_UI.m
Modified: trunk/SKMainWindowController.h
===================================================================
--- trunk/SKMainWindowController.h 2024-03-14 22:34:43 UTC (rev 14107)
+++ trunk/SKMainWindowController.h 2024-03-14 22:46:51 UTC (rev 14108)
@@ -277,6 +277,7 @@
@property (nonatomic) SKRightSidePaneState rightSidePaneState;
@property (nonatomic) SKFindPaneState findPaneState;
+@property (nonatomic, readonly) BOOL displaysFindPane;
@property (nonatomic, readonly) BOOL leftSidePaneIsOpen, rightSidePaneIsOpen;
@property (nonatomic, readonly) CGFloat leftSideWidth, rightSideWidth;
Modified: trunk/SKMainWindowController.m
===================================================================
--- trunk/SKMainWindowController.m 2024-03-14 22:34:43 UTC (rev 14107)
+++ trunk/SKMainWindowController.m 2024-03-14 22:46:51 UTC (rev 14108)
@@ -216,7 +216,7 @@
@implementation SKMainWindowController
@synthesize mainWindow, splitView, topConstraint, centerContentView,
pdfSplitView, pdfContentView, findBarTopConstraint, statusBar, pdfView,
secondaryPdfView, leftSideController, rightSideController, leftSideContentView,
rightSideContentView, presentationNotesDocument, presentationNotesOffset,
notes, thumbnails, snapshots, searchResults, groupedSearchResults, tags,
rating, pageLabel, interactionMode, placeholderPdfDocument;
-@dynamic pdfDocument, presentationOptions, presentationUndoManager,
selectedNotes, hasNotes, widgetProperties, leftSidePaneState,
rightSidePaneState, findPaneState, leftSidePaneIsOpen, rightSidePaneIsOpen,
recentInfoNeedsUpdate, searchString, hasOverview, notesMenu;
+@dynamic pdfDocument, presentationOptions, presentationUndoManager,
selectedNotes, hasNotes, widgetProperties, leftSidePaneState,
rightSidePaneState, findPaneState, displaysFindPane, leftSidePaneIsOpen,
rightSidePaneIsOpen, recentInfoNeedsUpdate, searchString, hasOverview,
notesMenu;
+ (void)initialize {
SKINITIALIZE;
@@ -1214,18 +1214,13 @@
}
- (void)setLeftSidePaneState:(SKLeftSidePaneState)newLeftSidePaneState {
- if (mwcFlags.leftSidePaneState != newLeftSidePaneState ||
([leftSideController.findTableView window] ||
[leftSideController.groupedFindTableView window])) {
+ if (mwcFlags.leftSidePaneState != newLeftSidePaneState || [self
displaysFindPane]) {
mwcFlags.leftSidePaneState = newLeftSidePaneState;
- /*if ([leftSideController.searchField stringValue] &&
[[leftSideController.searchField stringValue] isEqualToString:@""] == NO) {
- [leftSideController.searchField setStringValue:@""];
- // this will also display the correct table view
- [self search:leftSideController.searchField];
- } else*/ if (mwcFlags.leftSidePaneState == SKSidePaneStateThumbnail) {
+ if (mwcFlags.leftSidePaneState == SKSidePaneStateThumbnail)
[self displayThumbnailViewAnimating:NO];
- } else if (mwcFlags.leftSidePaneState == SKSidePaneStateOutline) {
+ else if (mwcFlags.leftSidePaneState == SKSidePaneStateOutline)
[self displayTocViewAnimating:NO];
- }
}
}
@@ -1258,22 +1253,24 @@
if (mwcFlags.findPaneState != newFindPaneState) {
mwcFlags.findPaneState = newFindPaneState;
- if (mwcFlags.findPaneState == SKFindPaneStateSingular) {
+ if (mwcFlags.findPaneState == SKFindPaneStateSingular)
[self displayFindViewAnimating:NO];
- } else if (mwcFlags.findPaneState == SKFindPaneStateGrouped) {
+ else if (mwcFlags.findPaneState == SKFindPaneStateGrouped)
[self displayGroupedFindViewAnimating:NO];
- }
[self updateFindResultHighlightsForDirection:NSDirectSelection];
- } else if ([leftSideController.findTableView window] == nil ||
[leftSideController.groupedFindTableView window] == nil) {
+ } else if ([self displaysFindPane] == NO) {
- if (mwcFlags.findPaneState == SKFindPaneStateSingular) {
+ if (mwcFlags.findPaneState == SKFindPaneStateSingular)
[self displayFindViewAnimating:NO];
- } else if (mwcFlags.findPaneState == SKFindPaneStateGrouped) {
+ else if (mwcFlags.findPaneState == SKFindPaneStateGrouped)
[self displayGroupedFindViewAnimating:NO];
- }
}
}
+- (BOOL)displaysFindPane {
+ return [leftSideController.findTableView window] ||
[leftSideController.groupedFindTableView window];
+}
+
- (BOOL)leftSidePaneIsOpen {
if ([self interactionMode] == SKPresentationMode)
return [sideWindow isVisible];
Modified: trunk/SKMainWindowController_Actions.m
===================================================================
--- trunk/SKMainWindowController_Actions.m 2024-03-14 22:34:43 UTC (rev
14107)
+++ trunk/SKMainWindowController_Actions.m 2024-03-14 22:46:51 UTC (rev
14108)
@@ -816,7 +816,7 @@
if ([searchString length] == 0) {
- if ([leftSideController.findTableView window] ||
[leftSideController.groupedFindTableView window]) {
+ if ([self displaysFindPane]) {
if (mwcFlags.leftSidePaneState == SKSidePaneStateThumbnail)
[self displayThumbnailViewAnimating:YES];
else
Modified: trunk/SKMainWindowController_UI.m
===================================================================
--- trunk/SKMainWindowController_UI.m 2024-03-14 22:34:43 UTC (rev 14107)
+++ trunk/SKMainWindowController_UI.m 2024-03-14 22:46:51 UTC (rev 14108)
@@ -1827,18 +1827,14 @@
[menuItem setTitle:NSLocalizedString(@"Show Notes Pane", @"Menu
item title")];
return [self interactionMode] != SKPresentationMode;
} else if (action == @selector(changeLeftSidePaneState:)) {
- [menuItem setState:mwcFlags.leftSidePaneState ==
(SKLeftSidePaneState)[menuItem tag] && ([leftSideController.findTableView
window]== nil && [leftSideController.groupedFindTableView window] == nil) ?
NSControlStateValueOn : NSControlStateValueOff];
+ [menuItem setState:mwcFlags.leftSidePaneState ==
(SKLeftSidePaneState)[menuItem tag] && [self displaysFindPane] == NO ?
NSControlStateValueOn : NSControlStateValueOff];
return (SKLeftSidePaneState)[menuItem tag] == SKSidePaneStateThumbnail
|| [[pdfView document] outlineRoot];
} else if (action == @selector(changeRightSidePaneState:)) {
[menuItem setState:mwcFlags.rightSidePaneState ==
(SKRightSidePaneState)[menuItem tag] ? NSControlStateValueOn :
NSControlStateValueOff];
return [self interactionMode] != SKPresentationMode;
} else if (action == @selector(changeFindPaneState:)) {
- if ([[leftSideController.searchField stringValue] length] == 0) {
- [menuItem setState:NSControlStateValueOff];
- return NO;
- }
- [menuItem setState:((SKFindPaneState)mwcFlags.findPaneState ==
(SKFindPaneState)[menuItem tag] && ([leftSideController.findTableView window]
|| [leftSideController.groupedFindTableView window])) ? NSControlStateValueOn :
NSControlStateValueOff];
- return YES;
+ [menuItem setState:((SKFindPaneState)mwcFlags.findPaneState ==
(SKFindPaneState)[menuItem tag] && [self displaysFindPane]) ?
NSControlStateValueOn : NSControlStateValueOff];
+ return [[leftSideController.searchField stringValue] length] > 0;
} else if (action == @selector(toggleOverview:)) {
if ([self hasOverview])
[menuItem setTitle:NSLocalizedString(@"Hide Overview", @"Menu item
title")];
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