2009-08-05 03:59:46 -05:00
|
|
|
/*
|
2012-03-15 13:28:40 -05:00
|
|
|
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
2009-08-05 03:59:46 -05:00
|
|
|
|
2010-09-30 05:17:41 -05:00
|
|
|
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
2009-08-05 03:59:46 -05:00
|
|
|
which should be included with this package. The terms are also available at
|
2010-09-30 05:17:41 -05:00
|
|
|
http://www.hardcoded.net/licenses/bsd_license
|
2009-08-05 03:59:46 -05:00
|
|
|
*/
|
|
|
|
|
2009-06-01 04:55:11 -05:00
|
|
|
#import <Cocoa/Cocoa.h>
|
2012-07-27 17:30:34 -05:00
|
|
|
#import <Sparkle/SUUpdater.h>
|
2009-06-01 04:55:11 -05:00
|
|
|
#import "PyDupeGuru.h"
|
2009-10-30 09:40:17 -05:00
|
|
|
#import "ResultWindow.h"
|
2009-11-02 09:16:34 -06:00
|
|
|
#import "DetailsPanel.h"
|
2010-02-05 09:51:00 -06:00
|
|
|
#import "DirectoryPanel.h"
|
2012-03-14 11:47:21 -05:00
|
|
|
#import "IgnoreListDialog.h"
|
2010-12-30 06:00:44 -06:00
|
|
|
#import "HSAboutBox.h"
|
2011-01-13 09:20:03 -06:00
|
|
|
#import "HSRecentFiles.h"
|
2009-06-01 04:55:11 -05:00
|
|
|
|
|
|
|
@interface AppDelegateBase : NSObject
|
|
|
|
{
|
2012-07-27 17:30:34 -05:00
|
|
|
NSMenu *recentResultsMenu;
|
|
|
|
NSMenu *columnsMenu;
|
|
|
|
SUUpdater *updater;
|
2009-06-01 04:55:11 -05:00
|
|
|
|
2012-01-13 13:43:43 -06:00
|
|
|
PyDupeGuru *model;
|
2011-01-14 06:56:50 -06:00
|
|
|
ResultWindowBase *_resultWindow;
|
2010-02-05 10:05:00 -06:00
|
|
|
DirectoryPanel *_directoryPanel;
|
2010-02-05 10:15:45 -06:00
|
|
|
DetailsPanel *_detailsPanel;
|
2012-03-14 11:47:21 -05:00
|
|
|
IgnoreListDialog *_ignoreListDialog;
|
2011-01-14 07:06:54 -06:00
|
|
|
NSWindowController *_preferencesPanel;
|
2010-12-30 06:00:44 -06:00
|
|
|
HSAboutBox *_aboutBox;
|
2011-01-13 09:20:03 -06:00
|
|
|
HSRecentFiles *_recentResults;
|
2009-06-01 04:55:11 -05:00
|
|
|
}
|
2011-01-14 06:56:50 -06:00
|
|
|
|
2012-07-27 17:30:34 -05:00
|
|
|
@property (readwrite, retain) NSMenu *recentResultsMenu;
|
|
|
|
@property (readwrite, retain) NSMenu *columnsMenu;
|
|
|
|
@property (readwrite, retain) SUUpdater *updater;
|
|
|
|
|
2011-01-14 06:56:50 -06:00
|
|
|
/* Virtual */
|
2012-01-13 13:43:43 -06:00
|
|
|
- (PyDupeGuru *)model;
|
2011-01-14 06:56:50 -06:00
|
|
|
- (ResultWindowBase *)createResultWindow;
|
|
|
|
- (DirectoryPanel *)createDirectoryPanel;
|
|
|
|
- (DetailsPanel *)createDetailsPanel;
|
|
|
|
- (NSString *)homepageURL;
|
|
|
|
|
|
|
|
/* Public */
|
2012-07-27 17:30:34 -05:00
|
|
|
- (void)finalizeInit;
|
2011-01-14 06:56:50 -06:00
|
|
|
- (ResultWindowBase *)resultWindow;
|
2010-02-05 10:05:00 -06:00
|
|
|
- (DirectoryPanel *)directoryPanel;
|
2010-02-05 10:15:45 -06:00
|
|
|
- (DetailsPanel *)detailsPanel;
|
2011-01-13 09:20:03 -06:00
|
|
|
- (HSRecentFiles *)recentResults;
|
2010-12-30 06:00:44 -06:00
|
|
|
|
2011-09-06 09:03:14 -05:00
|
|
|
/* Delegate */
|
|
|
|
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification;
|
|
|
|
- (void)applicationWillBecomeActive:(NSNotification *)aNotification;
|
|
|
|
- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender;
|
|
|
|
- (void)applicationWillTerminate:(NSNotification *)aNotification;
|
|
|
|
- (void)recentFileClicked:(NSString *)path;
|
|
|
|
|
2011-01-14 06:56:50 -06:00
|
|
|
/* Actions */
|
2012-07-27 17:30:34 -05:00
|
|
|
- (void)loadResults;
|
|
|
|
- (void)openWebsite;
|
|
|
|
- (void)openHelp;
|
|
|
|
- (void)showAboutBox;
|
|
|
|
- (void)showDirectoryWindow;
|
|
|
|
- (void)showPreferencesPanel;
|
|
|
|
- (void)showResultWindow;
|
|
|
|
- (void)showIgnoreList;
|
|
|
|
- (void)startScanning;
|
2011-09-21 14:24:26 -05:00
|
|
|
|
|
|
|
/* model --> view */
|
2011-09-22 09:35:17 -05:00
|
|
|
- (void)showMessage:(NSString *)msg;
|
2011-09-26 10:54:17 -05:00
|
|
|
- (void)setupAsRegistered;
|
|
|
|
- (void)showFairwareNagWithPrompt:(NSString *)prompt;
|
|
|
|
- (void)showDemoNagWithPrompt:(NSString *)prompt;
|
2009-06-01 04:55:11 -05:00
|
|
|
@end
|