root/Trunk/Adium.framework/Versions/A/Headers/AIAdiumProtocol.h @ 2

Revision 2, 4.8 KB (checked in by jon, 16 years ago)

Initial commit of skeletal project.

Line 
1/*
2 *  AIAdiumProtocol.h
3 *  Adium
4 *
5 *  Created by Evan Schoenberg on 9/10/06.
6 */
7
8
9@class AICoreComponentLoader, AICorePluginLoader;
10
11typedef enum {
12        AIQuitConfirmAlways = 0,
13        AIQuitConfirmSelective
14} AIQuitConfirmationType;
15
16@protocol AIAccountController, AIChatController, AIContactAlertsController, AIDebugController, AIEmoticonController,
17                  AIPreferenceController, AIMenuController, AIApplescriptabilityController, AIStatusController,
18                  AIContentController, AIToolbarController, AISoundController, AIDockController,
19                  AIFileTransferController, AILoginController, AIInterfaceController, AIContactController;
20
21@protocol AIAdium <NSObject>
22- (NSObject <AIAccountController> *)accountController;
23- (NSObject <AIChatController> *)chatController;
24- (NSObject <AIContactController> *)contactController;
25- (NSObject <AIContentController> *)contentController;
26- (NSObject <AIDockController> *)dockController;
27- (NSObject <AIEmoticonController> *)emoticonController;
28- (NSObject <AIInterfaceController> *)interfaceController;
29- (NSObject <AILoginController> *)loginController;
30- (NSObject <AIMenuController> *)menuController;
31- (NSObject <AIPreferenceController> *)preferenceController;
32- (NSObject <AISoundController> *)soundController;
33- (NSObject <AIStatusController> *)statusController;
34- (NSObject <AIToolbarController> *)toolbarController;
35- (NSObject <AIContactAlertsController> *)contactAlertsController;
36- (NSObject <AIFileTransferController> *)fileTransferController;
37
38- (NSObject <AIDebugController> *)debugController;
39- (NSObject <AIApplescriptabilityController> *)applescriptabilityController;
40
41- (NSNotificationCenter *)notificationCenter;
42- (AICoreComponentLoader *)componentLoader;
43- (AICorePluginLoader *)pluginLoader;
44
45- (NSString *)applicationSupportDirectory;
46- (NSString *)createResourcePathForName:(NSString *)name;
47- (NSArray *)resourcePathsForName:(NSString *)name;
48- (NSArray *)allResourcesForName:(NSString *)name withExtensions:(id)extensions;
49- (NSString *)pathOfPackWithName:(NSString *)name extension:(NSString *)extension resourceFolderName:(NSString *)folderName;
50- (NSString *)cachesPath;
51- (NSComparisonResult)compareVersionString:(NSString *)versionA toVersionString:(NSString *)versionB;
52
53- (BOOL)isQuitting;
54
55@end
56
57//Adium events
58#define KEY_EVENT_DISPLAY_NAME          @"DisplayName"
59#define KEY_EVENT_NOTIFICATION          @"Notification"
60
61//Adium Notifications
62#define CONTACT_STATUS_ONLINE_YES                       @"Contact_StatusOnlineYes"      // Contact signs on
63#define CONTACT_STATUS_ONLINE_NO                        @"Contact_StatusOnlineNo"       // Contact signs off
64#define CONTACT_STATUS_AWAY_YES                         @"Contact_StatusAwayYes"
65#define CONTACT_STATUS_AWAY_NO                          @"Contact_StatusAwayNo"
66#define CONTACT_STATUS_IDLE_YES                         @"Contact_StatusIdleYes"
67#define CONTACT_STATUS_IDLE_NO                          @"Contact_StatusIdleNo"
68#define CONTACT_STATUS_MESSAGE                          @"Contact_StatusMessage"
69#define CONTACT_SEEN_ONLINE_YES                         @"Contact_SeenOnlineYes"
70#define CONTACT_SEEN_ONLINE_NO                          @"Contact_SeenOnlineNo"
71#define CONTENT_MESSAGE_SENT                            @"Content_MessageSent"
72#define CONTENT_MESSAGE_RECEIVED                        @"Content_MessageReceived"
73#define CONTENT_MESSAGE_RECEIVED_GROUP          @"Content_MessageReceivedGroup"
74#define CONTENT_MESSAGE_RECEIVED_FIRST          @"Content_MessageReceivedFirst"
75#define CONTENT_MESSAGE_RECEIVED_BACKGROUND     @"Content_MessageReceivedBackground"
76#define CONTENT_MESSAGE_RECEIVED_BACKGROUND_GROUP               @"Content_MessageReceivedBackgroundGroup"
77#define CONTENT_NUDGE_BUZZ_OCCURED                      @"Content_NudgeBuzzOccured"
78#define CONTENT_CONTACT_JOINED_CHAT                     @"Content_ContactJoinedChat"
79#define CONTENT_CONTACT_LEFT_CHAT                       @"Content_ContactLeftChat"
80#define CONTENT_GROUP_CHAT_INVITE                       @"Content_GroupChatInvite"
81#define CONTENT_GROUP_CHAT_MENTION                      @"Content_GroupChatMention"
82#define INTERFACE_ERROR_MESSAGE                         @"Interface_ErrorMessageReceived"
83
84/* Note: The account connected/disconnected events are aggregated for many accounts connecting simultaneously.
85 * Use a list object observer (see AIContactController) if you are concerned about specific account connectivity changes.
86 */
87#define ACCOUNT_CONNECTED                                       @"Account_Connected"
88#define ACCOUNT_DISCONNECTED                            @"Account_Disconnected"
89
90#define ACCOUNT_RECEIVED_EMAIL                          @"Account_NewMailReceived"
91#define FILE_TRANSFER_REQUEST                           @"FileTransfer_Request"
92#define FILE_TRANSFER_CHECKSUMMING                      @"FileTransfer_Checksumming"
93#define FILE_TRANSFER_WAITING_REMOTE            @"File_Transfer_WaitingRemote"
94#define FILE_TRANSFER_BEGAN                                     @"FileTransfer_Began"
95#define FILE_TRANSFER_CANCELLED                         @"FileTransfer_Cancelled"
96#define FILE_TRANSFER_FAILED                            @"FileTransfer_Failed"
97#define FILE_TRANSFER_COMPLETE                          @"FileTransfer_Complete"
98
99#define AIXtrasDidChangeNotification                            @"AIXtrasDidChange"
100#define AIApplicationDidFinishLoadingNotification       @"AIApplicationDidFinishLoading"
101#define AIAppWillTerminateNotification                          @"AIAppWillTerminate"
102#define AIShowLogAtPathNotification                                     @"AIShowLogAtPath"
103#define AINetworkDidChangeNotification                          @"AINetworkDidChange"
Note: See TracBrowser for help on using the browser.