git.y1.nz

SameBoy

Accurate GB/GBC emulator
download: https://git.y1.nz/archives/sameboy.tar.gz
README | Files | Log | Refs | LICENSE

Cocoa/GBPreferencesSlider.m

      1 #import "GBPreferencesSlider.h"
      2 #import "NSObject+DefaultsObserver.h"
      3 
      4 @implementation GBPreferencesSlider
      5 
      6 - (BOOL)sendAction:(SEL)action to:(id)target
      7 {
      8     [[NSUserDefaults standardUserDefaults] setDouble:self.doubleValue / (self.denominator ?: 1) forKey:_preferenceName];
      9     return [super sendAction:action to:target];
     10 }
     11 
     12 - (void)updateValue
     13 {
     14     if (!_preferenceName) return;
     15     self.doubleValue = [[NSUserDefaults standardUserDefaults] doubleForKey:_preferenceName] * (self.denominator ?: 1);
     16 }
     17 
     18 - (void)setPreferenceName:(NSString *)preferenceName
     19 {
     20     _preferenceName = preferenceName;
     21     [self observeStandardDefaultsKey:_preferenceName selector:@selector(updateValue)];
     22 }
     23 
     24 - (void)viewDidMoveToWindow
     25 {
     26     [super viewDidMoveToWindow];
     27     [self updateValue];
     28 }
     29 @end

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.