//************************************************************************************** // Filename: CMPluginImpl.h // Part of Contextual Menu Workshop by Abracode Inc. // http://free.abracode.com/cmworkshop/ // Copyright © 2002-2003 Abracode, Inc. All rights reserved. // // Description: // //************************************************************************************** #ifndef __CMPluginImpl__ #define __CMPluginImpl__ //concrete plugin implementation constants //you must change these #define kCMImplPluginFactoryID ( CFUUIDGetConstantUUIDWithBytes( NULL, 0xBC, 0x11, 0xAE, 0x36, 0x53, 0x2D, 0x11, 0xD6, 0x84, 0x19, 0x00, 0x05, 0x02, 0x89, 0xEC, 0x9F ) ) // "DEADBEEF-08E8-11D6-A5BB-00050289EC9F" #define CM_IMPL_PLUGIN_BUNDLE_INDENTIFIER "com.abracode.QuickAccessCM" #define CM_IMPL_PLUGIN_PREFS_INDENTIFIER "com.abracode.QuickAccessCMPrefs" class CFAliasAndNameArray; typedef struct CMPluginImplData { CFAliasAndNameArray *qaItems; CFAliasAndNameArray *mtItems; CFAliasAndNameArray *ctItems; CFAliasAndNameArray *atItems; SInt32 sysVersion; //OS version we are running in (10.2 == 0x1020) UInt16 currContext; //kCCQuickAccess, kCCMoveTo UInt16 checkFlags; Boolean qaActive; Boolean mtActive; Boolean ctActive; Boolean atActive; Boolean mtShowDest; Boolean ctShowDest; Boolean atShowDest; Boolean qaUseHierMenus; Boolean mtUseHierMenus; Boolean ctUseHierMenus; Boolean atUseHierMenus; } CMPluginImplData; enum { kChFFolderItem = 0x0001, kChFNonFolderItem = 0x0002, kChFVolLocked = 0x0004 }; enum QACurrentContext { kCCNothing = 0, kCCQuickAccess, kCCMoveTo, kCCCopyTo, kCCAliasTo }; //command ID - change it and use your command(s) enum { kNoCommand = 0, kQAAddItemCommand = 100,//"Quick Access" Add Item kMTAddFolderCommand = 101,//"Move To" Add Item kCTAddFolderCommand = 102,//"Copy To" Add Item kATAddFolderCommand = 103,//"Alias To" Add Item kQAItemStartCommand = 200,//"Quick Access" items commands kMTItemStartCommand = 400,//"Move To" items commands kCTItemStartCommand = 600,//"Copy To" items commands kATItemStartCommand = 800//"Alias To" items commands }; // Strings enum { kCommandStrings = 130, // STR# id kQuickAcessStrIndex = 1, kMoveToStrIndex, kCopyToStrIndex, kAliasToStrIndex, kAddItemStrIndx, kAddItemsStrIndx, kAddFolderStrIndx, kAddFoldersStrIndx, kSeparatorStrIndx, kItemsNotAddedToQAStrIndx, kItemsNotAddedToMTStrIndx, kItemsNotAddedToCTStrIndx, kItemsNotAddedToATStrIndx, kRemoveStrIndx }; enum { kDialogStrings = 131, // STR# id kCancelStrIndex = 1, kReplaceStrIndex, kRemoveStrIndex, kTooBadStrIndex, kItemsExistStrIndex, kDestNoFoundStrIndex, kCouldNotDeleteStrIndex }; #endif //__CMPluginImpl__