irollupsettings.h

Go to the documentation of this file.
00001 /**********************************************************************
00002  *<
00003     FILE: IRollupSettings
00004 
00005     DESCRIPTION: Rollup Window Settings Interface
00006 
00007     CREATED BY: Nikolai Sander
00008 
00009     HISTORY: created 8/8/00
00010 
00011  *> Copyright (c) 2000, All Rights Reserved.
00012  **********************************************************************/
00013 
00014 #pragma once
00015 #include "maxheap.h"
00016 #include "ifnpub.h"
00017 #include "GetCOREInterface.h"
00018 
00019 // forward declarations
00020 class ICatRegistry;
00021 
00022 #define EFFECTS_ROLLUPCFG_CLASSID Class_ID(0x559c705d, 0x32573fe3)
00023 #define ATMOSPHERICS_ROLLUPCFG_CLASSID Class_ID(0x40ef5775, 0x5b5606f)
00024 #define DISPLAY_PANEL_ROLLUPCFG_CLASSID Class_ID(0x12d45445, 0x3a5779a2)
00025 #define MOTION_PANEL_ROLLUPCFG_CLASSID Class_ID(0xbea1816, 0x50de0291)
00026 #define HIERARCHY_PANEL_ROLLUPCFG_CLASSID Class_ID(0x5d6c08d4, 0x7e5e2c2b)
00027 #define UTILITY_PANEL_ROLLUPCFG_CLASSID   Class_ID(0x2e256000, 0x6a5b2b34)
00028 
00036 class IRollupSettings : public FPStaticInterface 
00037 {
00038     public:
00040     virtual ICatRegistry *GetCatReg()=0;
00041 };
00042 
00086 class ICatRegistry: public MaxHeapOperators
00087 {
00088 public:
00090     virtual ~ICatRegistry() {;}
00091     // This method gets the category (order field) for the given SuperClass ID, ClassID and Rollup Title
00105     virtual int  GetCat(SClass_ID sid, Class_ID cid, const MCHAR *title,int category)=0;
00106     // This method updates (sets) the category (order field) for the given SuperClass ID, ClassID and Rollup Title
00118     virtual void UpdateCat(SClass_ID sid, Class_ID cid, const MCHAR *title,int category)=0;
00119     // This method Saves the category settings in File "UI\RollupOrder.cfg"
00122     virtual void Save()=0;
00123     // This method Loads the category settings from File "UI\RollupOrder.cfg"
00126     virtual void Load()=0;
00127     // This method Erases all category settings (in memory only)
00129     virtual void EmptyRegistry()=0;
00130     // This method deletes a category list for a given superclass ID and class ID
00138     virtual void DeleteList(SClass_ID sid, Class_ID cid)=0;
00139 };
00140 
00141 #define ROLLUP_SETTINGS_INTERFACE Interface_ID(0x281a65e8, 0x12db025d)
00142 inline IRollupSettings* GetIRollupSettings() { return (IRollupSettings*)GetCOREInterface(ROLLUP_SETTINGS_INTERFACE); }
00143