-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathZXAppController.m
More file actions
70 lines (64 loc) · 2.44 KB
/
ZXAppController.m
File metadata and controls
70 lines (64 loc) · 2.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/*
* Name: ZXAppController.m
* Project: Strongbox
* Created on: 2008-03-08
*
* Copyright (C) 2008 Pierre-Hans Corcoran
*
* --------------------------------------------------------------------------
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License (version 2) as published
* by the Free Software Foundation. This program is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have
* received a copy of the GNU General Public License along with this
* program; if not, write to the Free Software Foundation, Inc., 51
* Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
* --------------------------------------------------------------------------
*/
#import "ZXAppController.h"
static BOOL shouldPostNotifications = YES;
@implementation ZXAppController
+ (BOOL)shouldPostNotifications {
return shouldPostNotifications;
}
+ (void)setShouldPostNotifications:(BOOL)newVal {
shouldPostNotifications = newVal;
}
//! Handles application behavior concerning untitled documents
/*!
If a document was previously saved, should respond not to open an untitled document
*/
- (BOOL)applicationShouldOpenUntitledFile:(NSApplication *)sender
{
if([[NSUserDefaults standardUserDefaults] objectForKey:@"lastFileURL"]) {
return NO;
}
return YES;
}
//! Basic initialization of application
/*!
Load previously saved document if none is to be loaded
*/
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
id documentOpened = nil;
if([[[NSDocumentController sharedDocumentController] documents] count] > 0) return;
id fileURLData = [[NSUserDefaults standardUserDefaults] objectForKey:@"lastFileURL"];
if(fileURLData) {
NSError *error = nil;
NSURL *fileURL = [NSURL URLWithString:fileURLData];
if(fileURL != nil && [[NSFileManager defaultManager] fileExistsAtPath:[fileURL path]]) {
id dc = [NSDocumentController sharedDocumentController];
documentOpened = [dc openDocumentWithContentsOfURL:fileURL
display:YES
error:&error];
}
}
if(documentOpened == nil) {
[[NSDocumentController sharedDocumentController] newDocument:self];
}
[documentOpened updateChangeCount:NSChangeCleared];
}
@end