1
2
3
4
5
6
7
8 #import <Carbon/Carbon.h>
9 #import <map>
10 #import "Edit in TextMate.h"
11
12
13 #define keyFileSender 'FSnd'
14 #define kODBEditorSuite 'R*ch'
15 #define kAEModifiedFile 'FMod'
16 #define kAEClosedFile 'FCls'
17
18 static NSMutableDictionary* OpenFiles;
19 static NSString* TextMateBundleIdentifier = @"com.macromates.textmate";
20
21 @implementation EditInTextMate
22 + (void)setODBEventHandlers
23 {
24 NSAppleEventManager* eventManager = [NSAppleEventManager sharedAppleEventManager];
25 [eventManager setEventHandler:self andSelector:@selector(handleModifiedFileEvent:withReplyEvent:) forEventClass:kODBEditorSuite andEventID:kAEModifiedFile];
26 [eventManager setEventHandler:self andSelector:@selector(handleClosedFileEvent:withReplyEvent:) forEventClass:kODBEditorSuite andEventID:kAEClosedFile];
27 }
28
29 + (void)removeODBEventHandlers
30 {
31 NSAppleEventManager* eventManager = [NSAppleEventManager sharedAppleEventManager];
32 [eventManager removeEventHandlerForEventClass:kODBEditorSuite andEventID:kAEModifiedFile];
33 [eventManager removeEventHandlerForEventClass:kODBEditorSuite andEventID:kAEClosedFile];
34 }
35