source: trunk/ICeCoffEE/ICeCoffEE/ICeCoffEE.h @ 388

Last change on this file since 388 was 388, checked in by Nicholas Riley, 12 years ago

APEMain.m: Note missing Xcode 3 support. Add Terminal 2.0 support.

English.lproj/APE Manager plugin.nib:

English.lproj/APEInfo.rtfd:

ICeCoffEE.[hm]: Bring triggering window and app to front if error
dialog displayed in ICCF_HandleException. Remove initial word
selection. Launch preexisting selection if present. Remove 10.3
support. Update for new ICeCoffEETrigger API. Rename downEvent
parameter for consistency.

ICeCoffEE.xcodeproj: Added files.

ICeCoffEEParser.m: Handle multiline URLs.

ICeCoffEETTView.[hm]: Terminal 2.0 support (thank you for having a
usable NSTextInput implementation!)

ICeCoffEETTViewTrigger.[hm]: ICeCoffEETrigger implementation for
TTView. Can't set range as we do for NSTextView because you can't
have an arbitrary empty selection range in Terminal, so we pass it
directly to ICCF_LaunchURLFromTTView.

ICeCoffEETerminal.[hm]: Fix capitalization on ICeCoffEETermSubviewSuper.
Pass downEvent to ICCF_HandleException so it can bring the triggering
window to the front.

ICeCoffEETextViewTrigger.[hm]: Moved from ICeCoffEETrigger.

ICeCoffEETrigger.[hm]: Now an abstract superclass. Replace direct
access to ICCF_sharedTrigger with +cancel. Create 0-character range
(if click outside selectedRange) or save selectedRange. Move
debugging logs here from ICeCoffEE.m. Add description method.

ICeCoffEEWebKit.m: Pass downEvent to ICCF_HandleException so it can
bring the triggering window to the front.

Installer components/ui/ui.plist: Updated for 1.5d3.

TestParser?.m: Handle multiline URLs; newlines are printed as \ and
tabs as >. Implement ICCF_StringByRemovingCharactersInSet, which will
move elsewhere once Internet Config support is removed.

VERSION.xcconfig: Updated for 1.5d3.

urls.plist: Test for multiline URLs.

File size: 2.0 KB
Line 
1/* ICeCoffEE */
2
3#import "ICeCoffEESuper.h"
4#import "ICeCoffEEShared.h"
5#import "ICeCoffEEConfig.h"
6
7#define ICCF_OSErrAssert(err, context) NSAssert(err == noErr || err == userCanceledErr, ICCF_ErrString(err, context));
8#define ICCF_OSErrCAssert(err, context) NSCAssert(err == noErr || err == userCanceledErr, ICCF_ErrString(err, context));
9
10// search for: (?<!ICCF_LocalizedString\()(?<!ICLog\()(?<!ICapeprintf("\()(?<!%)(@"(?!Internal error: )[^"]+") replace with: ICCF_LocalizedString(\1)
11#define ICCF_LocalizedString(key) \
12    [(NSString *)CFBundleCopyLocalizedString(ICCF_bundle, (CFStringRef)(key), CFSTR(""), NULL) autorelease]
13
14// XXX temporary for 1.5 development; gone when we remove Internet Config dependency
15ICInstance ICCF_GetInst();
16void ICCF_StartIC();
17void ICCF_StopIC();
18
19// returns an explanation for the provided OSStatus in the supplied
20// if nil is returned, the error is harmless (e.g., user cancelled)
21NSString *ICCF_ErrString(OSStatus err, NSString *context);
22
23// handles an exception as specified by ICError* preferences
24// if NO is returned, the exception is harmless (e.g., user cancelled)
25BOOL ICCF_HandleException(NSException *e, NSEvent *event);
26
27// returns YES if the event is a Command-mouse down
28BOOL ICCF_EventIsCommandMouseDown(NSEvent *e);
29
30// returns the action determined by the event's keyboard modifiers
31iccfURLAction ICCF_KeyboardAction(NSEvent *e);
32
33// throws an exception if the URL range is nonexistent or too big
34void ICCF_CheckRange(NSRange range);
35
36// calls ICCF_DoURLAction
37// returns YES unless the user cancelled
38BOOL ICCF_LaunchURL(NSString *string, iccfURLAction action);
39
40// launch URL from selected text view cursor position or selection
41void ICCF_LaunchURLFromTextView(NSTextView *self, NSEvent *triggeringEvent);
42
43// returns contextual menu with Services item added, if selected
44NSMenu *ICCF_MenuForEvent(NSView *self, NSMenu *contextMenu, NSEvent *e);
45
46// adds or removes services menu in menu bar
47void ICCF_AddRemoveServicesMenu();
48
49@interface ICeCoffEE : ICeCoffEESuper
50
51@end
Note: See TracBrowser for help on using the repository browser.