summaryrefslogtreecommitdiff
path: root/cocoa/PreferencesWindowController.m
diff options
context:
space:
mode:
authorSven Weidauer <sven.weidauer@gmail.com>2011-01-31 18:38:03 +0000
committerSven Weidauer <sven.weidauer@gmail.com>2011-01-31 18:38:03 +0000
commit4ed1832fe776158c0682393ca4794e63ca53962f (patch)
tree97484bd22f87e7deb33bd0e46632f69876a12b1a /cocoa/PreferencesWindowController.m
parent827c267c8452806c3f41cdd4883be0f4b578ad50 (diff)
downloadnetsurf-4ed1832fe776158c0682393ca4794e63ca53962f.tar.gz
netsurf-4ed1832fe776158c0682393ca4794e63ca53962f.tar.bz2
Implemented preferences window.
svn path=/trunk/netsurf/; revision=11565
Diffstat (limited to 'cocoa/PreferencesWindowController.m')
-rw-r--r--cocoa/PreferencesWindowController.m58
1 files changed, 58 insertions, 0 deletions
diff --git a/cocoa/PreferencesWindowController.m b/cocoa/PreferencesWindowController.m
new file mode 100644
index 000000000..2425589f9
--- /dev/null
+++ b/cocoa/PreferencesWindowController.m
@@ -0,0 +1,58 @@
+/*
+ * Copyright 2011 Sven Weidauer <sven.weidauer@gmail.com>
+ *
+ * This file is part of NetSurf, http://www.netsurf-browser.org/
+ *
+ * NetSurf is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * NetSurf 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, see <http://www.gnu.org/licenses/>.
+ */
+
+
+#import "cocoa/PreferencesWindowController.h"
+#import "cocoa/NetsurfApp.h"
+#import "cocoa/gui.h"
+#import "cocoa/BrowserViewController.h"
+
+#import "desktop/browser.h"
+#import "content/content.h"
+#import "desktop/options.h"
+
+@implementation PreferencesWindowController
+
+- init;
+{
+ if ((self = [super initWithWindowNibName: @"PreferencesWindow"]) == nil) return nil;
+
+ return self;
+}
+
+- (IBAction) useCurrentPageAsHomepage: (id) sender;
+{
+ struct browser_window *bw = [[(NetSurfApp *)NSApp frontTab] browser];
+ const char *url = content_get_url( bw->current_content );
+ [self setHomepageURL: [NSString stringWithUTF8String: url]];
+}
+
+- (void) setHomepageURL: (NSString *) newUrl;
+{
+ free( option_homepage_url );
+ option_homepage_url = strdup( [newUrl UTF8String] );
+ [[NSUserDefaults standardUserDefaults] setObject: newUrl forKey: kHomepageURLOption];
+ [[NSUserDefaults standardUserDefaults] synchronize];
+}
+
+- (NSString *) homepageURL;
+{
+ return [NSString stringWithUTF8String: option_homepage_url];
+}
+
+@end