00001
00002
00003 #import <Cocoa/Cocoa.h>
00004 #import "GDCarbonEvent.h"
00005
00026 @interface GDCarbonEventManager : NSObject {
00027
00031 NSMutableDictionary * eventsLookup;
00032
00036 NSMutableDictionary * eventGroups;
00037
00041 NSMutableDictionary * eventInstallQueueDict;
00042
00046 NSMutableArray * eventInstallQueueArray;
00047
00051 NSMutableDictionary * eventInstallQueueForGroupDict;
00052
00056 NSMutableDictionary * eventInstallQueueForGroups;
00057 }
00058
00062 + (GDCarbonEventManager *) sharedInstance;
00063
00068 + (NSUInteger) carbonToCocoaModifierFlags:(NSUInteger) carbonFlags;
00069
00074 + (NSUInteger) cocoaToCarbonModifierFlags:(NSUInteger) cocoaFlags;
00075
00082 - (void) queueForInstall:(GDCarbonEvent *) event unique:(Boolean) unique;
00083
00087 - (void) queueForInstall:(GDCarbonEvent *) event intoGroup:(NSString *) groupName unique:(Boolean) unique;
00088
00097 - (void) registerGDCarbonEvent:(GDCarbonEvent *) event uninstallIfExists:(Boolean) uninstall;
00098
00106 - (void) registerAndInstallGDCarbonEvent:(GDCarbonEvent *) event uninstallIfExists:(Boolean) uninstall;
00107
00116 - (void) registerGDCarbonEvent:(GDCarbonEvent *) event inGroup:(NSString *) groupName uninstallIfExists:(Boolean) uninstall;
00117
00126 - (void) registerAndInstallGDCarbonEvent:(GDCarbonEvent *) event inGroup:(NSString *) groupName uninstallIfExists:(Boolean) uninstall;
00127
00134 - (void) unregisterGDCarbonEvent:(GDCarbonEvent *) event shouldUninstall:(Boolean) uninstall;
00135
00141 - (void) releaseGroup:(NSString *) groupName;
00142
00147 - (void) uninstallAndReleaseGroup:(NSString *) groupName;
00148
00152 - (void) registerAndInstallQueuedEvents;
00153
00157 - (void) registerAndInstallQueuedEventsForGroup:(NSString *) groupName;
00158
00162 - (void) flushQueuedInstall;
00163
00169 - (void) flushQueuedInstallForGroup:(NSString *) groupName;
00170
00174 - (void) flushAllQueuedGroupInstalls;
00175
00185 - (void) releaseAll;
00186
00194 - (void) uninstallAndReleaseAll;
00195
00200 - (void) uninstallAll;
00201
00205 - (void) installAll;
00206
00207 @end
00208