summaryrefslogtreecommitdiffstats
path: root/README.markdown
diff options
context:
space:
mode:
Diffstat (limited to 'README.markdown')
-rw-r--r--README.markdown39
1 files changed, 4 insertions, 35 deletions
diff --git a/README.markdown b/README.markdown
index 26a6b85..1964fc1 100644
--- a/README.markdown
+++ b/README.markdown
@@ -4,7 +4,7 @@ Copyright &copy; Dave DeLong <http://www.davedelong.com>
## About
-DDHotKey is an easy-to-use Cocoa class for registering an application to respond to system key events, or "hotkeys".
+DDHotKey is an easy-to-use package for registering an application to respond to system key events, or "hotkeys".
A global hotkey is a key combination that always executes a specific action, regardless of which app is frontmost. For example, the Mac OS X default hotkey of "command-space" shows the Spotlight search bar, even if Finder is not the frontmost application.
@@ -16,41 +16,10 @@ Permission to use, copy, modify, and/or distribute this software for any purpose
## Usage
-### Including DDHotKey in your project
-
-You will need to copy these six files into your project:
-
-- DDHotKeyCenter.h
-- DDHotKeyCenter.m
-- DDHotKeyUtilities.h
-- DDHotKeyUtilities.m
-- DDHotKeyTextField.h
-- DDHotKeyTextField.m
-
-Your application will need to link against `Carbon.framework`, and you will need to compile your application with the Clang compiler. DDHotKey has been tested with Xcode 5 on OS X Mavericks. No attempt has been made to preserve backwards compatibility.
-
-### Using DDHotKey in your code
-
When you wish to create a hotkey, you'll need to do so via the `DDHotKeyCenter` singleton.
-You can register a hotkey in one of two ways: via a target/action mechanism, or with a block. The target/action mechanism can take a single extra "object" parameter, which it will pass into the action when the hotkey is fired. Only the `object` parameter is retained by the `DDHotKeyCenter`. In addition, an `NSEvent` object is passed, which contains information regarding the hotkey event (such as the location, the keyCode, the modifierFlags, etc).
-
-Hotkey actions must have one of two method signatures (the actual selector is irrelevant):
-
- //a method with a single NSEvent parameter
- - (void)hotkeyAction:(NSEvent*)hotKeyEvent;
-
- OR
-
- //a method with an NSEvent parameter and an object parameter
- - (void)hotkeyAction:(NSEvent*)hotKeyEvent withObject:(id)anObject;
-
-The other way to register a hotkey is with a block callback. The block must have the following signature:
-
- void (^)(NSEvent *);
-
-`DDHotKeyCenter.h` contains a typedef statement to typedef this signature as a `DDHotKeyTask`, for convenience.
+All hotkeys execute a block (closure) when invoked. The block is passed an `NSEvent` object, which contains information regarding the hotkey event (such as the location, the keyCode, the modifierFlags, etc).
-Any hotkey that you have registered via `DDHotKeyCenter` can be unregistered based on its target, its target and action, or its keycode and modifier flags.
+Any hotkey that you have registered via `DDHotKeyCenter` can be unregistered by passing the `DDHotKey` instance back to the `unregister(hotKey:)` method.
-DDHotKey also includes a rudimentary `DDHotKeyTextField`, which is an `NSTextField` subclass that simplifies the process of creating a key combination. Simply drop an `NSTextField` into your xib and change its class to `DDHotKeyTextField`. Programmatically, you'll get an NSTextField into which you can type arbitrary key combinations. You access the resulting combination via the textfield's `hotKey` property. \ No newline at end of file
+DDHotKey also includes a rudimentary `DDHotKeyTextField`: an `NSTextField` subclass that simplifies the process of creating a key combination. Simply drop an `NSTextField` into your xib and change its class to `DDHotKeyTextField`. Programmatically, you'll get an `NSTextField` into which you can type arbitrary key combinations. You access the resulting combination via the textfield's `hotKey` property.