24 #ifndef __IKBSCSetsManager__ 25 #define __IKBSCSetsManager__ 30 #include "IPMUnknown.h" 31 #include "KBSCEditorDlgID.h" 32 #include "WidgetDefs.h" 37 #define kKBSCInvalidSetIndex -1 38 #define kKBSCDefaultSetIndex 0 40 #define kKBSCNameMaxCharLength kPMNamedItemMaxChars 47 enum { kDefaultIID = IID_IKBSCSETSMANAGER };
53 typedef enum { kDefaultKBSCArea = 0, kUserKBSCArea = 1 } KBSCArea;
56 virtual bool16 ReadSetFiles() = 0;
59 virtual bool16 SaveCurrentSetFile() = 0;
62 virtual PMString GetCurrentSetName() = 0;
65 virtual IKBSCSetsManager::KBSCArea GetCurrentSetKBSCArea() = 0;
68 virtual bool16 SwitchToSet(
const PMString& setName, KBSCArea area)
const = 0;
71 virtual bool16 SwitchToSet(
const int32 index, KBSCArea area)
const = 0;
74 virtual int32 GetNumSets(KBSCArea area)
const = 0;
77 virtual PMString GetSetName(
const int32 index, KBSCArea area)
const = 0;
80 virtual int32 GetSetIndex(
const PMString& setName, KBSCArea area)
const = 0;
83 virtual bool16 IsSetEditable(
const int32 index, KBSCArea area)
const = 0;
86 virtual bool16 IsSetEditable(
const PMString& setName, KBSCArea area)
const = 0;
89 virtual bool16 IsSetDirty(
const int32 index, KBSCArea area)
const = 0;
92 virtual bool16 IsSetDirty(
const PMString& setName, KBSCArea area)
const = 0;
95 virtual void DirtySet(
const int32 index, KBSCArea area) = 0;
98 virtual void DirtySet(
const PMString& setName, KBSCArea area) = 0;
101 virtual bool16 DuplicateSet(
const PMString& origName, KBSCArea origArea,
const PMString& destName, bool16 desEditable) = 0;
104 virtual bool16 DeleteSet(
const PMString& setName) = 0;
107 virtual bool16 EqualSetNames(
const PMString& name1,
const PMString& name2) = 0;
110 virtual bool16 GetKBSCDirectory(
IDFile& folderFileSpec, KBSCArea area) = 0;