1 /* vi:set ts=8 sts=4 sw=4 ft=objc:
3 * VIM - Vi IMproved by Bram Moolenaar
4 * MacVim GUI port by Bjorn Winckler
6 * Do ":help uganda" in Vim to read copying and usage conditions.
7 * Do ":help credits" in Vim to see a list of people who contributed.
8 * See README.txt for an overview of the Vim source code.
11 #import <Cocoa/Cocoa.h>
15 // If sendMessage: fails, store the message and resend after a delay.
16 #define MM_RESEND_LAST_FAILURE 0
19 @
class MMWindowController
;
23 @interface MMVimController
: NSObject
<MMFrontendProtocol
>
26 MMWindowController
*windowController
;
28 BOOL inProcessCommandQueue
;
29 NSMutableArray
*sendQueue
;
30 NSMutableArray
*mainMenuItems
;
31 NSMutableArray
*popupMenuItems
;
32 BOOL shouldUpdateMainMenu
;
34 NSMutableDictionary
*toolbarItemDict
;
37 #ifdef MM_RESEND_LAST_FAILURE
42 NSMenu
*lastMenuSearched
;
43 NSMenuItem
*recentFilesMenuItem
;
44 NSMenuItem
*recentFilesDummy
;
45 NSDictionary
*vimState
;
48 - (id
)initWithBackend
:(id
)backend pid
:(int)processIdentifier
49 recentFiles
:(NSMenuItem
*)menu
;
52 - (void)setServerName
:(NSString
*)name
;
53 - (NSString
*)serverName
;
54 - (MMWindowController
*)windowController
;
55 - (NSDictionary
*)vimState
;
57 - (void)dropFiles
:(NSArray
*)filenames forceOpen
:(BOOL
)force
;
58 - (void)dropString
:(NSString
*)string
;
59 - (void)odbEdit
:(NSArray
*)filenames server
:(OSType
)theID path
:(NSString
*)path
60 token
:(NSAppleEventDescriptor
*)token
;
61 - (void)sendMessage
:(int)msgid data
:(NSData
*)data
;
62 - (BOOL
)sendMessageNow
:(int)msgid data
:(NSData
*)data
63 timeout
:(NSTimeInterval
)timeout
;
64 - (void)addVimInput
:(NSString
*)string
;
65 - (NSString
*)evaluateVimExpression
:(NSString
*)expr
;
66 - (void)updateMainMenu
;