aboutsummaryrefslogtreecommitdiffstats
path: root/Framework
diff options
context:
space:
mode:
authorTomáš Znamenáček2014-08-07 12:12:06 +0200
committerTomáš Znamenáček2015-01-07 15:42:22 +0100
commit118abba104a1eeabc5c449ac86e25a6d87f1954c (patch)
treed95879766a8a5decff97f7240edd09072dbef10a /Framework
parentbbf2f69da4253b9fc28bd622a3041622f064d22c (diff)
downloadMASShortcut-118abba104a1eeabc5c449ac86e25a6d87f1954c.tar.bz2
Added a shared binder instance singleton.
This adds a really simple API to set up some bindings without having to keep a binder instance around by hand. If somebody wants to, it’s not a problem to allocate a separate instance and have precise control over its lifetime.
Diffstat (limited to 'Framework')
-rw-r--r--Framework/MASShortcutBinder.h2
-rw-r--r--Framework/MASShortcutBinder.m10
2 files changed, 12 insertions, 0 deletions
diff --git a/Framework/MASShortcutBinder.h b/Framework/MASShortcutBinder.h
index c38dbd4..98e01c7 100644
--- a/Framework/MASShortcutBinder.h
+++ b/Framework/MASShortcutBinder.h
@@ -2,6 +2,8 @@
@interface MASShortcutBinder : NSObject
++ (instancetype) sharedBinder;
+
@property(strong) MASShortcutMonitor *shortcutMonitor;
@property(copy) NSDictionary *bindingOptions;
diff --git a/Framework/MASShortcutBinder.m b/Framework/MASShortcutBinder.m
index 1039f64..bf85c41 100644
--- a/Framework/MASShortcutBinder.m
+++ b/Framework/MASShortcutBinder.m
@@ -27,6 +27,16 @@
}
}
++ (instancetype) sharedBinder
+{
+ static dispatch_once_t once;
+ static MASShortcutBinder *sharedInstance;
+ dispatch_once(&once, ^{
+ sharedInstance = [[self alloc] init];
+ });
+ return sharedInstance;
+}
+
#pragma mark Registration
- (void) bindShortcutWithDefaultsKey: (NSString*) defaultsKeyName toAction: (dispatch_block_t) action