rum 0.0.1-x86-mswin32-60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +3 -0
- data/README +30 -0
- data/Rakefile +134 -0
- data/bin/rum-client +124 -0
- data/doc/basic.rb +10 -0
- data/doc/doc.html +602 -0
- data/doc/example.rb +59 -0
- data/doc/reference.rb +415 -0
- data/doc/resources/bg.png +0 -0
- data/doc/resources/bottom.png +0 -0
- data/doc/resources/build.rb +235 -0
- data/doc/resources/doc.haml +167 -0
- data/doc/resources/emacs-auto-completion.png +0 -0
- data/doc/resources/flash.png +0 -0
- data/doc/resources/highlight.css +94 -0
- data/doc/resources/intro.rb +17 -0
- data/doc/resources/left.png +0 -0
- data/doc/resources/logo.png +0 -0
- data/doc/resources/screen.css +420 -0
- data/doc/resources/screenshot.png +0 -0
- data/doc/resources/top.png +0 -0
- data/ext/mac/keyboard_hook/English.lproj/InfoPlist.strings +0 -0
- data/ext/mac/keyboard_hook/Event.h +17 -0
- data/ext/mac/keyboard_hook/Event.m +18 -0
- data/ext/mac/keyboard_hook/EventTap.h +11 -0
- data/ext/mac/keyboard_hook/EventTap.m +77 -0
- data/ext/mac/keyboard_hook/Info.plist +26 -0
- data/ext/mac/keyboard_hook/KeyboardHook.xcodeproj/TemplateIcon.icns +0 -0
- data/ext/mac/keyboard_hook/KeyboardHook.xcodeproj/project.pbxproj +323 -0
- data/ext/mac/keyboard_hook/KeyboardHook_Prefix.pch +7 -0
- data/ext/mac/keyboard_hook/version.plist +16 -0
- data/ext/windows/keyboard_hook/extconf.rb +2 -0
- data/ext/windows/keyboard_hook/keyboard_hook.c +126 -0
- data/ext/windows/system/autohotkey_stuff.c +255 -0
- data/ext/windows/system/autohotkey_stuff.h +2 -0
- data/ext/windows/system/clipboard_watcher.c +58 -0
- data/ext/windows/system/clipboard_watcher.h +2 -0
- data/ext/windows/system/extconf.rb +3 -0
- data/ext/windows/system/input_box.c +239 -0
- data/ext/windows/system/input_box.h +4 -0
- data/ext/windows/system/system.c +273 -0
- data/lib/rum.rb +4 -0
- data/lib/rum/apps.rb +4 -0
- data/lib/rum/barrel.rb +157 -0
- data/lib/rum/barrel/emacs.rb +44 -0
- data/lib/rum/barrel/emacs_client.rb +74 -0
- data/lib/rum/core.rb +125 -0
- data/lib/rum/dsl.rb +109 -0
- data/lib/rum/gui.rb +93 -0
- data/lib/rum/help.rb +128 -0
- data/lib/rum/hotkey_core.rb +479 -0
- data/lib/rum/mac.rb +18 -0
- data/lib/rum/mac/app.rb +4 -0
- data/lib/rum/mac/apps.rb +19 -0
- data/lib/rum/mac/gui.rb +26 -0
- data/lib/rum/mac/gui/growl.rb +54 -0
- data/lib/rum/mac/irb/completion.rb +207 -0
- data/lib/rum/mac/keyboard_hook.rb +73 -0
- data/lib/rum/mac/layouts.rb +146 -0
- data/lib/rum/mac/system.rb +45 -0
- data/lib/rum/remote.rb +48 -0
- data/lib/rum/server.rb +92 -0
- data/lib/rum/windows.rb +23 -0
- data/lib/rum/windows/app.rb +72 -0
- data/lib/rum/windows/apps.rb +25 -0
- data/lib/rum/windows/gui.rb +116 -0
- data/lib/rum/windows/keyboard.rb +80 -0
- data/lib/rum/windows/keyboard_hook.rb +20 -0
- data/lib/rum/windows/keyboard_hook.so +0 -0
- data/lib/rum/windows/layouts.rb +232 -0
- data/lib/rum/windows/system.rb +310 -0
- data/lib/rum/windows/system.so +0 -0
- data/lib/rum/windows/system_foreign_functions.rb +129 -0
- data/rum.gemspec +14 -0
- metadata +156 -0
@@ -0,0 +1,18 @@
|
|
1
|
+
#import "Event.h"
|
2
|
+
|
3
|
+
@implementation Event
|
4
|
+
|
5
|
+
-(id)initWithEventRef:(CGEventRef)anEventRef tapProxy:(CGEventTapProxy)aTapProxy type:(CGEventType)aType down:(BOOL)isDown {
|
6
|
+
eventRef = anEventRef;
|
7
|
+
tapProxy = aTapProxy;
|
8
|
+
type = aType;
|
9
|
+
down = isDown;
|
10
|
+
return self;
|
11
|
+
}
|
12
|
+
|
13
|
+
@synthesize eventRef;
|
14
|
+
@synthesize tapProxy;
|
15
|
+
@synthesize type;
|
16
|
+
@synthesize down;
|
17
|
+
|
18
|
+
@end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
#import <Cocoa/Cocoa.h>
|
2
|
+
@class Event;
|
3
|
+
|
4
|
+
@interface EventTap : NSObject {
|
5
|
+
id delegate;
|
6
|
+
}
|
7
|
+
-(id)init;
|
8
|
+
-(Event*)handleEvent:(Event*)event;
|
9
|
+
@end
|
10
|
+
|
11
|
+
CGEventRef eventCallback(CGEventTapProxy proxy, CGEventType type, CGEventRef event, void *eventTapObject);
|
@@ -0,0 +1,77 @@
|
|
1
|
+
// Based on Nathan Sobo's ControlFreak
|
2
|
+
// http://github.com/nathansobo/control_freak
|
3
|
+
//
|
4
|
+
// This project is a temporary provision.
|
5
|
+
// A future MacRuby release will allow KeyboardHook.framework
|
6
|
+
// to be implemented in pure Ruby.
|
7
|
+
|
8
|
+
|
9
|
+
#import <Carbon/Carbon.h> // for keycode aliases
|
10
|
+
#import <ApplicationServices/ApplicationServices.h>
|
11
|
+
#import "EventTap.h"
|
12
|
+
#import "Event.h"
|
13
|
+
#import <MacRuby/MacRuby.h>
|
14
|
+
|
15
|
+
CFMachPortRef keyboard_event_tap;
|
16
|
+
|
17
|
+
@interface NSObject (RubyMethods)
|
18
|
+
-(Event*)onEvent:(Event*)event;
|
19
|
+
@end
|
20
|
+
|
21
|
+
@implementation EventTap
|
22
|
+
-(id)init {
|
23
|
+
[super init];
|
24
|
+
keyboard_event_tap = CGEventTapCreate(kCGHIDEventTap,
|
25
|
+
kCGHeadInsertEventTap,
|
26
|
+
kCGEventTapOptionDefault,
|
27
|
+
CGEventMaskBit(kCGEventKeyDown) | CGEventMaskBit(kCGEventKeyUp) | CGEventMaskBit(kCGEventFlagsChanged),
|
28
|
+
&eventCallback,
|
29
|
+
self);
|
30
|
+
CFRunLoopSourceRef tapSource = CFMachPortCreateRunLoopSource(NULL, keyboard_event_tap, 0);
|
31
|
+
CFRunLoopAddSource((CFRunLoopRef) [[NSRunLoop currentRunLoop] getCFRunLoop], tapSource, kCFRunLoopCommonModes);
|
32
|
+
|
33
|
+
return self;
|
34
|
+
}
|
35
|
+
|
36
|
+
-(Event*)handleEvent:(Event*)event {
|
37
|
+
// to be overridden by ruby code
|
38
|
+
return event;
|
39
|
+
}
|
40
|
+
|
41
|
+
@end
|
42
|
+
|
43
|
+
int modifier_flags[] = { kCGEventFlagMaskCommand, // command
|
44
|
+
kCGEventFlagMaskShift, // shift
|
45
|
+
kCGEventFlagMaskAlphaShift, // capslock
|
46
|
+
kCGEventFlagMaskAlternate, // option
|
47
|
+
kCGEventFlagMaskControl, // control
|
48
|
+
kCGEventFlagMaskShift, // rightshift
|
49
|
+
kCGEventFlagMaskAlternate, // rightoption
|
50
|
+
kCGEventFlagMaskControl, // rightcontrol
|
51
|
+
kCGEventFlagMaskSecondaryFn // function
|
52
|
+
};
|
53
|
+
|
54
|
+
CGEventRef eventCallback(CGEventTapProxy proxy, CGEventType type,
|
55
|
+
CGEventRef event, void *eventTapObject) {
|
56
|
+
BOOL is_down;
|
57
|
+
int keycode;
|
58
|
+
|
59
|
+
switch (type) {
|
60
|
+
case kCGEventKeyDown:
|
61
|
+
is_down = true;
|
62
|
+
break;
|
63
|
+
case kCGEventKeyUp:
|
64
|
+
is_down = false;
|
65
|
+
break;
|
66
|
+
case kCGEventFlagsChanged:
|
67
|
+
keycode = CGEventGetIntegerValueField(event, kCGKeyboardEventKeycode);
|
68
|
+
is_down = ((CGEventGetFlags(event) & modifier_flags[keycode - kVK_Command]) != 0);
|
69
|
+
break;
|
70
|
+
case kCGEventTapDisabledByTimeout:
|
71
|
+
CGEventTapEnable(keyboard_event_tap, true);
|
72
|
+
default:
|
73
|
+
return event;
|
74
|
+
}
|
75
|
+
|
76
|
+
return [((id) eventTapObject) handleEvent:[[Event alloc] initWithEventRef:event tapProxy:proxy type:type down:is_down]].eventRef;
|
77
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
3
|
+
<plist version="1.0">
|
4
|
+
<dict>
|
5
|
+
<key>CFBundleDevelopmentRegion</key>
|
6
|
+
<string>English</string>
|
7
|
+
<key>CFBundleExecutable</key>
|
8
|
+
<string>${EXECUTABLE_NAME}</string>
|
9
|
+
<key>CFBundleName</key>
|
10
|
+
<string>${PRODUCT_NAME}</string>
|
11
|
+
<key>CFBundleIconFile</key>
|
12
|
+
<string></string>
|
13
|
+
<key>CFBundleIdentifier</key>
|
14
|
+
<string>com.yourcompany.${PRODUCT_NAME:identifier}</string>
|
15
|
+
<key>CFBundleInfoDictionaryVersion</key>
|
16
|
+
<string>6.0</string>
|
17
|
+
<key>CFBundlePackageType</key>
|
18
|
+
<string>FMWK</string>
|
19
|
+
<key>CFBundleSignature</key>
|
20
|
+
<string>????</string>
|
21
|
+
<key>CFBundleVersion</key>
|
22
|
+
<string>1.0</string>
|
23
|
+
<key>NSPrincipalClass</key>
|
24
|
+
<string></string>
|
25
|
+
</dict>
|
26
|
+
</plist>
|
Binary file
|
@@ -0,0 +1,323 @@
|
|
1
|
+
// !$*UTF8*$!
|
2
|
+
{
|
3
|
+
archiveVersion = 1;
|
4
|
+
classes = {
|
5
|
+
};
|
6
|
+
objectVersion = 45;
|
7
|
+
objects = {
|
8
|
+
|
9
|
+
/* Begin PBXBuildFile section */
|
10
|
+
01862CDA11D3C37700B5A73E /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01862CD911D3C37700B5A73E /* Carbon.framework */; };
|
11
|
+
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings */; };
|
12
|
+
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */; };
|
13
|
+
EC6FF350104E2FE3000167A6 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EC6FF34F104E2FE3000167A6 /* ApplicationServices.framework */; };
|
14
|
+
EC6FF356104E301F000167A6 /* EventTap.h in Headers */ = {isa = PBXBuildFile; fileRef = EC6FF354104E301F000167A6 /* EventTap.h */; };
|
15
|
+
EC6FF357104E301F000167A6 /* EventTap.m in Sources */ = {isa = PBXBuildFile; fileRef = EC6FF355104E301F000167A6 /* EventTap.m */; };
|
16
|
+
ECC36BE9104E4B8A00846ACB /* MacRuby.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ECC36BE8104E4B8A00846ACB /* MacRuby.framework */; };
|
17
|
+
ECC36C00104E54D500846ACB /* Event.h in Headers */ = {isa = PBXBuildFile; fileRef = ECC36BFE104E54D500846ACB /* Event.h */; };
|
18
|
+
ECC36C01104E54D500846ACB /* Event.m in Sources */ = {isa = PBXBuildFile; fileRef = ECC36BFF104E54D500846ACB /* Event.m */; };
|
19
|
+
/* End PBXBuildFile section */
|
20
|
+
|
21
|
+
/* Begin PBXFileReference section */
|
22
|
+
01862CD911D3C37700B5A73E /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
|
23
|
+
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
24
|
+
0867D6A5FE840307C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
25
|
+
089C1667FE841158C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
26
|
+
1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
27
|
+
32DBCF5E0370ADEE00C91783 /* KeyboardHook_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KeyboardHook_Prefix.pch; sourceTree = "<group>"; };
|
28
|
+
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
29
|
+
8DC2EF5B0486A6940098B216 /* KeyboardHook.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = KeyboardHook.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
30
|
+
D2F7E79907B2D74100F64583 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
|
31
|
+
EC6FF34F104E2FE3000167A6 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<absolute>"; };
|
32
|
+
EC6FF354104E301F000167A6 /* EventTap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventTap.h; sourceTree = "<group>"; };
|
33
|
+
EC6FF355104E301F000167A6 /* EventTap.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EventTap.m; sourceTree = "<group>"; };
|
34
|
+
ECC36BE8104E4B8A00846ACB /* MacRuby.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MacRuby.framework; path = /Library/Frameworks/MacRuby.framework; sourceTree = "<absolute>"; };
|
35
|
+
ECC36BFE104E54D500846ACB /* Event.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Event.h; sourceTree = "<group>"; };
|
36
|
+
ECC36BFF104E54D500846ACB /* Event.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Event.m; sourceTree = "<group>"; };
|
37
|
+
/* End PBXFileReference section */
|
38
|
+
|
39
|
+
/* Begin PBXFrameworksBuildPhase section */
|
40
|
+
8DC2EF560486A6940098B216 /* Frameworks */ = {
|
41
|
+
isa = PBXFrameworksBuildPhase;
|
42
|
+
buildActionMask = 2147483647;
|
43
|
+
files = (
|
44
|
+
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */,
|
45
|
+
EC6FF350104E2FE3000167A6 /* ApplicationServices.framework in Frameworks */,
|
46
|
+
ECC36BE9104E4B8A00846ACB /* MacRuby.framework in Frameworks */,
|
47
|
+
01862CDA11D3C37700B5A73E /* Carbon.framework in Frameworks */,
|
48
|
+
);
|
49
|
+
runOnlyForDeploymentPostprocessing = 0;
|
50
|
+
};
|
51
|
+
/* End PBXFrameworksBuildPhase section */
|
52
|
+
|
53
|
+
/* Begin PBXGroup section */
|
54
|
+
034768DFFF38A50411DB9C8B /* Products */ = {
|
55
|
+
isa = PBXGroup;
|
56
|
+
children = (
|
57
|
+
8DC2EF5B0486A6940098B216 /* KeyboardHook.framework */,
|
58
|
+
);
|
59
|
+
name = Products;
|
60
|
+
sourceTree = "<group>";
|
61
|
+
};
|
62
|
+
0867D691FE84028FC02AAC07 /* KeyboardHook */ = {
|
63
|
+
isa = PBXGroup;
|
64
|
+
children = (
|
65
|
+
08FB77AEFE84172EC02AAC07 /* Classes */,
|
66
|
+
32C88DFF0371C24200C91783 /* Other Sources */,
|
67
|
+
089C1665FE841158C02AAC07 /* Resources */,
|
68
|
+
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
|
69
|
+
034768DFFF38A50411DB9C8B /* Products */,
|
70
|
+
);
|
71
|
+
name = KeyboardHook;
|
72
|
+
sourceTree = "<group>";
|
73
|
+
};
|
74
|
+
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
|
75
|
+
isa = PBXGroup;
|
76
|
+
children = (
|
77
|
+
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
|
78
|
+
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
|
79
|
+
);
|
80
|
+
name = "External Frameworks and Libraries";
|
81
|
+
sourceTree = "<group>";
|
82
|
+
};
|
83
|
+
089C1665FE841158C02AAC07 /* Resources */ = {
|
84
|
+
isa = PBXGroup;
|
85
|
+
children = (
|
86
|
+
8DC2EF5A0486A6940098B216 /* Info.plist */,
|
87
|
+
089C1666FE841158C02AAC07 /* InfoPlist.strings */,
|
88
|
+
);
|
89
|
+
name = Resources;
|
90
|
+
sourceTree = "<group>";
|
91
|
+
};
|
92
|
+
08FB77AEFE84172EC02AAC07 /* Classes */ = {
|
93
|
+
isa = PBXGroup;
|
94
|
+
children = (
|
95
|
+
EC6FF354104E301F000167A6 /* EventTap.h */,
|
96
|
+
EC6FF355104E301F000167A6 /* EventTap.m */,
|
97
|
+
ECC36BFE104E54D500846ACB /* Event.h */,
|
98
|
+
ECC36BFF104E54D500846ACB /* Event.m */,
|
99
|
+
);
|
100
|
+
name = Classes;
|
101
|
+
sourceTree = "<group>";
|
102
|
+
};
|
103
|
+
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
|
104
|
+
isa = PBXGroup;
|
105
|
+
children = (
|
106
|
+
ECC36BE8104E4B8A00846ACB /* MacRuby.framework */,
|
107
|
+
EC6FF34F104E2FE3000167A6 /* ApplicationServices.framework */,
|
108
|
+
1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */,
|
109
|
+
01862CD911D3C37700B5A73E /* Carbon.framework */,
|
110
|
+
);
|
111
|
+
name = "Linked Frameworks";
|
112
|
+
sourceTree = "<group>";
|
113
|
+
};
|
114
|
+
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
|
115
|
+
isa = PBXGroup;
|
116
|
+
children = (
|
117
|
+
0867D6A5FE840307C02AAC07 /* AppKit.framework */,
|
118
|
+
D2F7E79907B2D74100F64583 /* CoreData.framework */,
|
119
|
+
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
|
120
|
+
);
|
121
|
+
name = "Other Frameworks";
|
122
|
+
sourceTree = "<group>";
|
123
|
+
};
|
124
|
+
32C88DFF0371C24200C91783 /* Other Sources */ = {
|
125
|
+
isa = PBXGroup;
|
126
|
+
children = (
|
127
|
+
32DBCF5E0370ADEE00C91783 /* KeyboardHook_Prefix.pch */,
|
128
|
+
);
|
129
|
+
name = "Other Sources";
|
130
|
+
sourceTree = "<group>";
|
131
|
+
};
|
132
|
+
/* End PBXGroup section */
|
133
|
+
|
134
|
+
/* Begin PBXHeadersBuildPhase section */
|
135
|
+
8DC2EF500486A6940098B216 /* Headers */ = {
|
136
|
+
isa = PBXHeadersBuildPhase;
|
137
|
+
buildActionMask = 2147483647;
|
138
|
+
files = (
|
139
|
+
EC6FF356104E301F000167A6 /* EventTap.h in Headers */,
|
140
|
+
ECC36C00104E54D500846ACB /* Event.h in Headers */,
|
141
|
+
);
|
142
|
+
runOnlyForDeploymentPostprocessing = 0;
|
143
|
+
};
|
144
|
+
/* End PBXHeadersBuildPhase section */
|
145
|
+
|
146
|
+
/* Begin PBXNativeTarget section */
|
147
|
+
8DC2EF4F0486A6940098B216 /* KeyboardHook */ = {
|
148
|
+
isa = PBXNativeTarget;
|
149
|
+
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "KeyboardHook" */;
|
150
|
+
buildPhases = (
|
151
|
+
8DC2EF500486A6940098B216 /* Headers */,
|
152
|
+
8DC2EF520486A6940098B216 /* Resources */,
|
153
|
+
8DC2EF540486A6940098B216 /* Sources */,
|
154
|
+
8DC2EF560486A6940098B216 /* Frameworks */,
|
155
|
+
);
|
156
|
+
buildRules = (
|
157
|
+
);
|
158
|
+
dependencies = (
|
159
|
+
);
|
160
|
+
name = KeyboardHook;
|
161
|
+
productInstallPath = "$(HOME)/Library/Frameworks";
|
162
|
+
productName = KeyboardHook;
|
163
|
+
productReference = 8DC2EF5B0486A6940098B216 /* KeyboardHook.framework */;
|
164
|
+
productType = "com.apple.product-type.framework";
|
165
|
+
};
|
166
|
+
/* End PBXNativeTarget section */
|
167
|
+
|
168
|
+
/* Begin PBXProject section */
|
169
|
+
0867D690FE84028FC02AAC07 /* Project object */ = {
|
170
|
+
isa = PBXProject;
|
171
|
+
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "KeyboardHook" */;
|
172
|
+
compatibilityVersion = "Xcode 3.1";
|
173
|
+
hasScannedForEncodings = 1;
|
174
|
+
mainGroup = 0867D691FE84028FC02AAC07 /* KeyboardHook */;
|
175
|
+
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
|
176
|
+
projectDirPath = "";
|
177
|
+
projectRoot = "";
|
178
|
+
targets = (
|
179
|
+
8DC2EF4F0486A6940098B216 /* KeyboardHook */,
|
180
|
+
);
|
181
|
+
};
|
182
|
+
/* End PBXProject section */
|
183
|
+
|
184
|
+
/* Begin PBXResourcesBuildPhase section */
|
185
|
+
8DC2EF520486A6940098B216 /* Resources */ = {
|
186
|
+
isa = PBXResourcesBuildPhase;
|
187
|
+
buildActionMask = 2147483647;
|
188
|
+
files = (
|
189
|
+
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */,
|
190
|
+
);
|
191
|
+
runOnlyForDeploymentPostprocessing = 0;
|
192
|
+
};
|
193
|
+
/* End PBXResourcesBuildPhase section */
|
194
|
+
|
195
|
+
/* Begin PBXSourcesBuildPhase section */
|
196
|
+
8DC2EF540486A6940098B216 /* Sources */ = {
|
197
|
+
isa = PBXSourcesBuildPhase;
|
198
|
+
buildActionMask = 2147483647;
|
199
|
+
files = (
|
200
|
+
EC6FF357104E301F000167A6 /* EventTap.m in Sources */,
|
201
|
+
ECC36C01104E54D500846ACB /* Event.m in Sources */,
|
202
|
+
);
|
203
|
+
runOnlyForDeploymentPostprocessing = 0;
|
204
|
+
};
|
205
|
+
/* End PBXSourcesBuildPhase section */
|
206
|
+
|
207
|
+
/* Begin PBXVariantGroup section */
|
208
|
+
089C1666FE841158C02AAC07 /* InfoPlist.strings */ = {
|
209
|
+
isa = PBXVariantGroup;
|
210
|
+
children = (
|
211
|
+
089C1667FE841158C02AAC07 /* English */,
|
212
|
+
);
|
213
|
+
name = InfoPlist.strings;
|
214
|
+
sourceTree = "<group>";
|
215
|
+
};
|
216
|
+
/* End PBXVariantGroup section */
|
217
|
+
|
218
|
+
/* Begin XCBuildConfiguration section */
|
219
|
+
1DEB91AE08733DA50010E9CD /* Debug */ = {
|
220
|
+
isa = XCBuildConfiguration;
|
221
|
+
buildSettings = {
|
222
|
+
ALWAYS_SEARCH_USER_PATHS = NO;
|
223
|
+
COPY_PHASE_STRIP = NO;
|
224
|
+
DYLIB_COMPATIBILITY_VERSION = 1;
|
225
|
+
DYLIB_CURRENT_VERSION = 1;
|
226
|
+
FRAMEWORK_SEARCH_PATHS = (
|
227
|
+
"$(inherited)",
|
228
|
+
"\"$(SRCROOT)/../../DDHidLib-1.1/build/Release\"",
|
229
|
+
"\"$(SRCROOT)/..\"",
|
230
|
+
);
|
231
|
+
FRAMEWORK_VERSION = A;
|
232
|
+
GCC_DYNAMIC_NO_PIC = NO;
|
233
|
+
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
234
|
+
GCC_MODEL_TUNING = G5;
|
235
|
+
GCC_OPTIMIZATION_LEVEL = 0;
|
236
|
+
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
237
|
+
GCC_PREFIX_HEADER = KeyboardHook_Prefix.pch;
|
238
|
+
INFOPLIST_FILE = Info.plist;
|
239
|
+
INSTALL_PATH = "$(HOME)/Library/Frameworks";
|
240
|
+
PRODUCT_NAME = KeyboardHook;
|
241
|
+
WRAPPER_EXTENSION = framework;
|
242
|
+
};
|
243
|
+
name = Debug;
|
244
|
+
};
|
245
|
+
1DEB91AF08733DA50010E9CD /* Release */ = {
|
246
|
+
isa = XCBuildConfiguration;
|
247
|
+
buildSettings = {
|
248
|
+
ALWAYS_SEARCH_USER_PATHS = NO;
|
249
|
+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
250
|
+
DYLIB_COMPATIBILITY_VERSION = 1;
|
251
|
+
DYLIB_CURRENT_VERSION = 1;
|
252
|
+
EXECUTABLE_EXTENSION = bundle;
|
253
|
+
FRAMEWORK_SEARCH_PATHS = (
|
254
|
+
"$(inherited)",
|
255
|
+
"\"$(SRCROOT)/../../DDHidLib-1.1/build/Release\"",
|
256
|
+
"\"$(SRCROOT)/..\"",
|
257
|
+
);
|
258
|
+
FRAMEWORK_VERSION = A;
|
259
|
+
GCC_ENABLE_OBJC_GC = supported;
|
260
|
+
GCC_MODEL_TUNING = G5;
|
261
|
+
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
262
|
+
GCC_PREFIX_HEADER = KeyboardHook_Prefix.pch;
|
263
|
+
INFOPLIST_FILE = Info.plist;
|
264
|
+
INSTALL_PATH = "$(HOME)/Library/Frameworks";
|
265
|
+
PRODUCT_NAME = KeyboardHook;
|
266
|
+
WRAPPER_EXTENSION = framework;
|
267
|
+
};
|
268
|
+
name = Release;
|
269
|
+
};
|
270
|
+
1DEB91B208733DA50010E9CD /* Debug */ = {
|
271
|
+
isa = XCBuildConfiguration;
|
272
|
+
buildSettings = {
|
273
|
+
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
274
|
+
GCC_C_LANGUAGE_STANDARD = c99;
|
275
|
+
GCC_ENABLE_OBJC_GC = supported;
|
276
|
+
GCC_OPTIMIZATION_LEVEL = 0;
|
277
|
+
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
278
|
+
GCC_WARN_UNUSED_VARIABLE = YES;
|
279
|
+
ONLY_ACTIVE_ARCH = YES;
|
280
|
+
PREBINDING = NO;
|
281
|
+
SDKROOT = macosx10.5;
|
282
|
+
};
|
283
|
+
name = Debug;
|
284
|
+
};
|
285
|
+
1DEB91B308733DA50010E9CD /* Release */ = {
|
286
|
+
isa = XCBuildConfiguration;
|
287
|
+
buildSettings = {
|
288
|
+
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
289
|
+
GCC_C_LANGUAGE_STANDARD = c99;
|
290
|
+
GCC_ENABLE_OBJC_GC = supported;
|
291
|
+
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
292
|
+
GCC_WARN_UNUSED_VARIABLE = YES;
|
293
|
+
ONLY_ACTIVE_ARCH = YES;
|
294
|
+
PREBINDING = NO;
|
295
|
+
SDKROOT = macosx10.5;
|
296
|
+
};
|
297
|
+
name = Release;
|
298
|
+
};
|
299
|
+
/* End XCBuildConfiguration section */
|
300
|
+
|
301
|
+
/* Begin XCConfigurationList section */
|
302
|
+
1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "KeyboardHook" */ = {
|
303
|
+
isa = XCConfigurationList;
|
304
|
+
buildConfigurations = (
|
305
|
+
1DEB91AE08733DA50010E9CD /* Debug */,
|
306
|
+
1DEB91AF08733DA50010E9CD /* Release */,
|
307
|
+
);
|
308
|
+
defaultConfigurationIsVisible = 0;
|
309
|
+
defaultConfigurationName = Release;
|
310
|
+
};
|
311
|
+
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "KeyboardHook" */ = {
|
312
|
+
isa = XCConfigurationList;
|
313
|
+
buildConfigurations = (
|
314
|
+
1DEB91B208733DA50010E9CD /* Debug */,
|
315
|
+
1DEB91B308733DA50010E9CD /* Release */,
|
316
|
+
);
|
317
|
+
defaultConfigurationIsVisible = 0;
|
318
|
+
defaultConfigurationName = Release;
|
319
|
+
};
|
320
|
+
/* End XCConfigurationList section */
|
321
|
+
};
|
322
|
+
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
|
323
|
+
}
|