Move displayNum and displayLen back to AppController since they are UI-specific.

This commit is contained in:
Mark Jerde 2017-08-26 23:23:20 -05:00
parent 4eb0921677
commit 5fdf4dd742
4 changed files with 35 additions and 17 deletions

View file

@ -27,6 +27,10 @@
[[NSUserDefaults standardUserDefaults] registerDefaults:[NSDictionary dictionaryWithObjectsAndKeys:
[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSNumber numberWithInt:9],[NSNumber numberWithLong:1179648],nil] forKeys:[NSArray arrayWithObjects:@"keyCode",@"modifierFlags",nil]],
@"ShortcutRecorder mainHotkey",
[NSNumber numberWithInt:10],
@"displayNum",
[NSNumber numberWithInt:40],
@"displayLen",
[NSNumber numberWithInt:0],
@"menuIcon",
[NSNumber numberWithFloat:.25],
@ -65,7 +69,10 @@
// Initialize the FlycutOperator
flycutOperator = [[FlycutOperator alloc] init];
[flycutOperator awakeFromNib];
[flycutOperator awakeFromNibDisplaying:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayNum"]
withDisplayLength:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayLen"]
withSaveSelector:@selector(savePreferencesOnDict:)
forTarget:self];
[bezel setColor:NO];
@ -126,6 +133,14 @@
[NSApp activateIgnoringOtherApps: YES];
}
-(void)savePreferencesOnDict:(NSMutableDictionary *)saveDict
{
[saveDict setObject:[NSNumber numberWithInt:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayLen"]]
forKey:@"displayLen"];
[saveDict setObject:[NSNumber numberWithInt:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayNum"]]
forKey:@"displayNum"];
}
-(void)menuWillOpen:(NSMenu *)menu
{
NSEvent *event = [NSApp currentEvent];

View file

@ -22,13 +22,17 @@ class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSour
tableView.delegate = self
tableView.dataSource = self
flycut.awakeFromNib()
flycut.awake(fromNibDisplaying: 10, withDisplayLength: 140, withSave: #selector(savePreferences(toDict:)), forTarget: self) // The 10 isn't used in iOS right now and 140 characters seems to be enough to cover the width of the largest screen.
NotificationCenter.default.addObserver(self, selector: #selector(self.checkForClippingAddedToClipboard), name: .UIPasteboardChanged, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(self.applicationWillTerminate), name: .UIApplicationWillTerminate, object: nil)
}
func savePreferences(toDict: NSMutableDictionary)
{
}
func checkForClippingAddedToClipboard()
{
let pasteboard = UIPasteboard.general.string

View file

@ -26,6 +26,9 @@
FlycutStore *favoritesStore;
FlycutStore *stashedStore;
SEL saveSelector;
NSObject* saveTarget;
BOOL disableStore;
}
@ -64,7 +67,7 @@
// Initialization / cleanup related
-(void)applicationWillTerminate;;
-(void)awakeFromNib;
-(void)awakeFromNibDisplaying:(int) displayNum withDisplayLength:(int) displayLength withSaveSelector:(SEL) selector forTarget:(NSObject*) target;
// Favorites Store related
-(bool)favoritesStoreIsSelected;

View file

@ -20,10 +20,6 @@
- (id)init
{
[[NSUserDefaults standardUserDefaults] registerDefaults:[NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:10],
@"displayNum",
[NSNumber numberWithInt:140], // do not commit with 140. Use 40
@"displayLen",
[NSNumber numberWithInt:40],
@"rememberNum",
[NSNumber numberWithInt:40],
@ -56,15 +52,17 @@
return self;
}
- (void)awakeFromNib
- (void)awakeFromNibDisplaying:(int) displayNum withDisplayLength:(int) displayLength withSaveSelector:(SEL) selector forTarget:(NSObject*) target
{
// Initialize the FlycutStore
clippingStore = [[FlycutStore alloc] initRemembering:[[NSUserDefaults standardUserDefaults] integerForKey:@"rememberNum"]
displaying:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayNum"]
withDisplayLength:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayLen"]];
favoritesStore = [[FlycutStore alloc] initRemembering:[[NSUserDefaults standardUserDefaults] integerForKey:@"favoritesRememberNum"]
displaying:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayNum"]
withDisplayLength:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayLen"]];
displaying:displayNum
withDisplayLength:displayLength];
favoritesStore = [[FlycutStore alloc] initRemembering:[[NSUserDefaults standardUserDefaults] integerForKey:@"favoritesRememberNum"]
displaying:displayNum
withDisplayLength:displayLength];
saveSelector = selector;
saveTarget = target;
stashedStore = NULL;
// If our preferences indicate that we are saving, load the dictionary from the saved plist
@ -547,10 +545,8 @@
forKey:@"rememberNum"];
[saveDict setObject:[NSNumber numberWithInt:[[NSUserDefaults standardUserDefaults] integerForKey:@"favoritesRememberNum"]]
forKey:@"favoritesRememberNum"];
[saveDict setObject:[NSNumber numberWithInt:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayLen"]]
forKey:@"displayLen"];
[saveDict setObject:[NSNumber numberWithInt:[[NSUserDefaults standardUserDefaults] integerForKey:@"displayNum"]]
forKey:@"displayNum"];
[saveTarget performSelector:saveSelector withObject:saveDict];
[self saveStore:clippingStore toKey:@"jcList" onDict:saveDict];
[self saveStore:favoritesStore toKey:@"favoritesList" onDict:saveDict];