Revision: 14696
http://sourceforge.net/p/skim-app/code/14696
Author: hofman
Date: 2024-11-15 19:15:13 +0000 (Fri, 15 Nov 2024)
Log Message:
-----------
Open info window from app controller and make it an instance variable of it
Modified Paths:
--------------
trunk/SKApplicationController.h
trunk/SKApplicationController.m
trunk/SKInfoWindowController.h
trunk/SKInfoWindowController.m
trunk/SKMainToolbarController.m
trunk/SKMainWindowController_Actions.h
trunk/SKMainWindowController_Actions.m
trunk/SKMainWindowController_UI.m
Modified: trunk/SKApplicationController.h
===================================================================
--- trunk/SKApplicationController.h 2024-11-15 19:07:47 UTC (rev 14695)
+++ trunk/SKApplicationController.h 2024-11-15 19:15:13 UTC (rev 14696)
@@ -44,7 +44,7 @@
extern NSString *SKPageLabelsChangedNotification;
-@class SKBookmark, SKDownload, SKReleaseNotesController;
+@class SKBookmark, SKDownload, SKReleaseNotesController,
SKInfoWindowController;
@interface SKApplicationController : NSObject <SKApplicationDelegate,
HIDRemoteDelegate, NSMenuDelegate> {
NSMenu *noteColumnsMenu;
@@ -54,6 +54,7 @@
BOOL remoteScrolling;
id activity;
SKReleaseNotesController *releaseNotesController;
+ SKInfoWindowController *infoWindowController;
}
- (IBAction)orderFrontLineInspector:(nullable id)sender;
@@ -64,6 +65,7 @@
- (IBAction)showPreferencePanel:(nullable id)sender;
- (IBAction)showReleaseNotes:(nullable id)sender;
- (IBAction)showDownloads:(nullable id)sender;
+- (IBAction)getInfo:(nullable id)sender;
@property (nonatomic, nullable, strong) IBOutlet NSMenu *noteColumnsMenu,
*noteTypeMenu;
Modified: trunk/SKApplicationController.m
===================================================================
--- trunk/SKApplicationController.m 2024-11-15 19:07:47 UTC (rev 14695)
+++ trunk/SKApplicationController.m 2024-11-15 19:15:13 UTC (rev 14696)
@@ -42,6 +42,7 @@
#import "SKNotesPanelController.h"
#import "SKPreferenceController.h"
#import "SKReleaseNotesController.h"
+#import "SKInfoWindowController.h"
#import "SKStringConstants.h"
#import "SKMainDocument.h"
#import "SKMainWindowController.h"
@@ -314,6 +315,12 @@
[[SKDownloadController sharedDownloadController] showWindow:self];
}
+- (IBAction)getInfo:(id)sender {
+ if (infoWindowController == nil)
+ infoWindowController = [[SKInfoWindowController alloc] init];
+ [infoWindowController showWindow:self];
+}
+
- (IBAction)changeFindPaneState:(id)sender {}
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
Modified: trunk/SKInfoWindowController.h
===================================================================
--- trunk/SKInfoWindowController.h 2024-11-15 19:07:47 UTC (rev 14695)
+++ trunk/SKInfoWindowController.h 2024-11-15 19:15:13 UTC (rev 14696)
@@ -54,8 +54,6 @@
@property (nonatomic, nullable, strong) IBOutlet NSTabView *tabView;
@property (nonatomic, nullable, copy) NSDictionary<NSString *, id> *info;
-@property (class, nonatomic, readonly) SKInfoWindowController *sharedInstance;
-
@property (class, nonatomic, readonly) NSArray<NSString *> *keys;
+ (NSDictionary<NSString *, id> *)infoForDocument:(NSDocument *)doc;
Modified: trunk/SKInfoWindowController.m
===================================================================
--- trunk/SKInfoWindowController.m 2024-11-15 19:07:47 UTC (rev 14695)
+++ trunk/SKInfoWindowController.m 2024-11-15 19:15:13 UTC (rev 14696)
@@ -77,16 +77,7 @@
@synthesize summaryTableView, attributesTableView, tabView, info;
-static SKInfoWindowController *sharedInstance = nil;
-
-+ (SKInfoWindowController *)sharedInstance {
- if (sharedInstance == nil)
- sharedInstance = [[self alloc] init];
- return sharedInstance;
-}
-
- (instancetype)init {
- if (sharedInstance) NSLog(@"Attempt to allocate second instance of %@",
[self class]);
self = [super initWithWindowNibName:@"InfoWindow"];
if (self){
info = nil;
Modified: trunk/SKMainToolbarController.m
===================================================================
--- trunk/SKMainToolbarController.m 2024-11-15 19:07:47 UTC (rev 14695)
+++ trunk/SKMainToolbarController.m 2024-11-15 19:15:13 UTC (rev 14696)
@@ -810,7 +810,7 @@
} else if ([identifier
isEqualToString:SKDocumentToolbarInfoItemIdentifier]) {
- menuItem = [[NSMenuItem alloc]
initWithTitle:NSLocalizedString(@"Info", @"Menu item title")
action:@selector(getInfo:) target:mainController];
+ menuItem = [[NSMenuItem alloc]
initWithTitle:NSLocalizedString(@"Info", @"Menu item title")
action:@selector(getInfo:) target:nil];
[item setLabels:NSLocalizedString(@"Info", @"Toolbar item label")];
[item setToolTip:NSLocalizedString(@"Get Document Info", @"Tool
tip message")];
Modified: trunk/SKMainWindowController_Actions.h
===================================================================
--- trunk/SKMainWindowController_Actions.h 2024-11-15 19:07:47 UTC (rev
14695)
+++ trunk/SKMainWindowController_Actions.h 2024-11-15 19:15:13 UTC (rev
14696)
@@ -90,7 +90,6 @@
- (IBAction)smartAutoCropAll:(nullable id)sender;
- (IBAction)resetCrop:(nullable id)sender;
- (IBAction)autoSelectContent:(nullable id)sender;
-- (IBAction)getInfo:(nullable id)sender;
- (IBAction)delete:(nullable id)sender;
- (IBAction)paste:(nullable id)sender;
- (IBAction)alternatePaste:(nullable id)sender;
Modified: trunk/SKMainWindowController_Actions.m
===================================================================
--- trunk/SKMainWindowController_Actions.m 2024-11-15 19:07:47 UTC (rev
14695)
+++ trunk/SKMainWindowController_Actions.m 2024-11-15 19:15:13 UTC (rev
14696)
@@ -731,10 +731,6 @@
[pdfView autoSelectContent:sender];
}
-- (IBAction)getInfo:(id)sender {
- [[SKInfoWindowController sharedInstance] showWindow:self];
-}
-
- (IBAction)delete:(id)sender {
[pdfView delete:sender];
}
Modified: trunk/SKMainWindowController_UI.m
===================================================================
--- trunk/SKMainWindowController_UI.m 2024-11-15 19:07:47 UTC (rev 14695)
+++ trunk/SKMainWindowController_UI.m 2024-11-15 19:15:13 UTC (rev 14696)
@@ -1882,8 +1882,6 @@
else
[menuItem setTitle:NSLocalizedString(@"Presentation", @"Menu item
title")];
return [self canEnterPresentation] || [self canExitPresentation];
- } else if (action == @selector(getInfo:)) {
- return [self interactionMode] != SKPresentationMode;
} else if (action == @selector(performFit:)) {
return [self interactionMode] == SKNormalMode && [[self pdfDocument]
isLocked] == NO && [self hasOverview] == NO;
} else if (action == @selector(password:)) {
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