WIP adding UserDefault storage for appearance preferences

This commit is contained in:
anthony 2021-02-11 20:00:26 +00:00
parent c78372e8b0
commit 4199766248
5 changed files with 94 additions and 4 deletions

View File

@ -1,6 +1,19 @@
#import <Foundation/Foundation.h>
#import "SearchProvider.h"
typedef NS_ENUM(NSInteger, ViewLocation) {
ViewLocationWindow = 0,
ViewLocationTab,
ViewLocationEditor
};
typedef NS_ENUM(NSInteger, TabLocation) {
TabLocationTop = 0,
TabLocationRight,
TabLocationBottom,
TabLocationLeft
};
@interface Preferences: NSObject {
NSUserDefaults *defaults;
}
@ -23,5 +36,7 @@
-(NSString*)downloadLocationPath;
-(void)setDownloadLocationPath: (NSString*)aPath;
+(Preferences*)defaultPreferences;
@end

View File

@ -1,15 +1,25 @@
#import <AppKit/AppKit.h>
@interface PreferencesWindowController: NSWindowController {
// MAIN
id downloadConfirmOverwriteButton;
id downloadLocationButton;
id downloadRemoveOnCompleteButton;
id searchFromUrlButton;
id searchProviderButton;
id startupPageField;
// APPEARANCE
id alwaysShowTabBarButton;
id bankNewTabsButton;
id developerViewsButton;
id urlBarButtonsTypeButton;
id switchToTabsButton;
id tabPositionButton;
id urlSuggestionsButton;
NSMutableArray *downloadLocations;
}
// MAIN
-(void)didEnterStartupPage: (id)sender;
-(void)didPickDownloadLocation: (id)sender;
-(void)didPickSearchProvider: (id)sender;
@ -18,4 +28,13 @@
-(void)didPressStartupUseCurrentPage: (id)sender;
-(void)didPressStartupUseDefaultPage: (id)sender;
-(void)didPressSearchFromUrlBar: (id)sender;
// APPEARANCE
-(void)didPickDeveloperViews: (id)sender;
-(void)didPickTabPosition: (id)sender;
-(void)didPressAlwaysShowTabBar: (id)sender;
-(void)didPressBlankNewTabs: (id)sender;
-(void)didPressSwitchToTabs: (id)sender;
-(void)didPressUrlSuggestions: (id)sender;
-(void)didPickUrlButtonsType: (id)sender;
@end

View File

@ -11,6 +11,7 @@
@interface PreferencesWindowController (Private)
-(void)configureMainTab;
-(void)reconfigureDownloadLocationButton;
-(void)configureAppearanceTab;
@end
@interface DownloadLocation: NSObject {
NSString *name;
@ -44,7 +45,7 @@
@implementation PreferencesWindowController
-(id)init {
if (self = [super initWithWindowNibName: @"Preferences"]) {
if ((self = [super initWithWindowNibName: @"Preferences"])) {
//...
}
return self;
@ -57,6 +58,7 @@
-(void)awakeFromNib {
[self configureMainTab];
[self configureAppearanceTab];
}
// MARK: - MAIN TAB
@ -195,4 +197,37 @@
[[Preferences defaultPreferences] setSearchFromUrlBar: checked];
}
// MARK: - APPEARANCE TAB
-(void)configureAppearanceTab {
}
-(void)didPickDeveloperViews: (id)sender {
NSLog(@"didPickDeveloperViews");
}
-(void)didPickTabPosition: (id)sender {
NSLog(@"didPickTabPosition");
}
-(void)didPressAlwaysShowTabBar: (id)sender {
NSLog(@"didPressAlwaysShowTabBar");
}
-(void)didPressBlankNewTabs: (id)sender {
NSLog(@"didPressBlankNewTabs");
}
-(void)didPressSwitchToTabs: (id)sender {
NSLog(@"didPressSwitchToTabs");
}
-(void)didPressUrlSuggestions: (id)sender {
NSLog(@"didPressUrlSuggestions");
}
-(void)didPickUrlButtonsType: (id)sender {
NSLog(@"didPickUrlButtonsType");
}
@end

View File

@ -3,13 +3,20 @@
FirstResponder = {
Actions = (
"didEnterStartupPage:",
"didPickDeveloperViews:",
"didPickDownloadLocation:",
"didPickSearchProvider:",
"didPickTabPosition:",
"didPressAlwaysShowTabBar:",
"didPressBlankNewTabs:",
"didPressDownloadConfirmOverwrite:",
"didPressDownloadRemoveOnComplete:",
"didPressSearchFromUrlBar:",
"didPressStartupUseCurrentPage:",
"didPressStartupUseDefaultPage:",
"didPressSearchFromUrlBar:"
"didPressSwitchToTabs:",
"didPressUrlSuggestions:",
"didPickUrlButtonsType:"
);
Super = NSObject;
};
@ -22,7 +29,14 @@
"didPressDownloadRemoveOnComplete:",
"didPressStartupUseCurrentPage:",
"didPressStartupUseDefaultPage:",
"didPressSearchFromUrlBar:"
"didPressSearchFromUrlBar:",
"didPickDeveloperViews:",
"didPickTabPosition:",
"didPressAlwaysShowTabBar:",
"didPressBlankNewTabs:",
"didPressSwitchToTabs:",
"didPressUrlSuggestions:",
"didPickUrlButtonsType:"
);
Outlets = (
downloadConfirmOverwriteButton,
@ -30,7 +44,14 @@
downloadRemoveOnCompleteButton,
searchFromUrlButton,
searchProviderButton,
startupPageField
startupPageField,
alwaysShowTabBarButton,
bankNewTabsButton,
developerViewsButton,
urlBarButtonsTypeButton,
switchToTabsButton,
tabPositionButton,
urlSuggestionsButton
);
Super = NSWindowController;
};