summaryrefslogtreecommitdiffstats
path: root/DDHotKeyCenter.h
diff options
context:
space:
mode:
authorDave DeLong2010-02-24 15:23:04 -0700
committerDave DeLong2010-02-24 15:23:04 -0700
commit440f01bce0858f48df4f13333b40afaecbf1d094 (patch)
tree95974b4417bc0a8a196ac9f48ff8743a50fcae40 /DDHotKeyCenter.h
parent2080059c4803bdb7fc045715533ea4b33f8ee6b1 (diff)
downloadDDHotKey-440f01bce0858f48df4f13333b40afaecbf1d094.tar.bz2
Modified the order of the parameters to follow conventsion (suggested by Quinn Taylor)
Diffstat (limited to 'DDHotKeyCenter.h')
-rw-r--r--DDHotKeyCenter.h49
1 files changed, 39 insertions, 10 deletions
diff --git a/DDHotKeyCenter.h b/DDHotKeyCenter.h
index e1cd603..25a6fbd 100644
--- a/DDHotKeyCenter.h
+++ b/DDHotKeyCenter.h
@@ -1,16 +1,19 @@
-//
-// DDHotKeyManager.h
-// EmptyAppKit
-//
-// Created by Dave DeLong on 2/20/10.
-// Copyright 2010 Home. All rights reserved.
-//
+/*
+ DDHotKey -- DDHotKeyCenter.h
+
+ Copyright (c) 2010, Dave DeLong <http://www.davedelong.com>
+
+ Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+ The software is provided "as is", without warranty of any kind, including all implied warranties of merchantability and fitness. In no event shall the author(s) or copyright holder(s) be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.
+ */
#import <Cocoa/Cocoa.h>
#define BUILD_FOR_SNOWLEOPARD (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6)
#if BUILD_FOR_SNOWLEOPARD
+//a convenient typedef for the required signature of a hotkey block callback
typedef void (^DDHotKeyTask)(NSEvent*);
#endif
@@ -18,15 +21,41 @@ typedef void (^DDHotKeyTask)(NSEvent*);
}
-- (BOOL) registerHotKeyWithTarget:(id)target action:(SEL)action object:(id)object keyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags;
+/**
+ Register a target/action hotkey.
+ The modifierFlags must be a bitwise OR of NSCommandKeyMask, NSAlternateKeyMask, NSControlKeyMask, or NSShiftKeyMask;
+ Returns YES if the hotkey was registered; NO otherwise.
+ */
+- (BOOL) registerHotKeyWithKeyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags target:(id)target action:(SEL)action object:(id)object;
#if BUILD_FOR_SNOWLEOPARD
-- (BOOL) registerHotKeyWithBlock:(DDHotKeyTask)task keyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags;
+/**
+ Register a block callback hotkey.
+ The modifierFlags must be a bitwise OR of NSCommandKeyMask, NSAlternateKeyMask, NSControlKeyMask, or NSShiftKeyMask;
+ Returns YES if the hotkey was registered; NO otherwise.
+ */
+- (BOOL) registerHotKeyWithKeyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags block:(DDHotKeyTask)task;
#endif
+/**
+ See if a hotkey exists with the specified keycode and modifier flags.
+ NOTE: this will only check among hotkeys you have explicitly registered. This does not check all globally registered hotkeys.
+ */
- (BOOL) hasRegisteredHotKeyWithKeyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags;
+
+/**
+ Unregister all hotkeys with a specific target
+ */
- (void) unregisterHotKeysWithTarget:(id)target;
-- (void) unregisterHotKeyWithTarget:(id)target action:(SEL)action;
+
+/**
+ Unregister all hotkeys with a specific target and action
+ */
+- (void) unregisterHotKeysWithTarget:(id)target action:(SEL)action;
+
+/**
+ Unregister a hotkey with a specific keycode and modifier flags
+ */
- (void) unregisterHotKeyWithKeyCode:(unsigned short)keyCode modifierFlags:(NSUInteger)flags;
@end