diff options
Diffstat (limited to 'Src/Wasabi/api/wac/compon.h')
-rw-r--r-- | Src/Wasabi/api/wac/compon.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/Src/Wasabi/api/wac/compon.h b/Src/Wasabi/api/wac/compon.h new file mode 100644 index 00000000..3dcae3b4 --- /dev/null +++ b/Src/Wasabi/api/wac/compon.h @@ -0,0 +1,56 @@ +//PORTABLE +#ifndef _COMPON_H +#define _COMPON_H + +#include <bfc/wasabi_std.h> +#include <bfc/string/bfcstring.h> +#include <bfc/ptrlist.h> + +class ifc_canvas; +class CfgItem; // see cfgitem.h +class CompWnd; +class ComponentObject; +class Container; +class WaComponent; +class ComponPostEntry; + + +class ComponentManager { +public: + static void addStaticComponent(WaComponent *component); + static void addPreloadComponent(const wchar_t *filename); + static void loadPreloads(); + + static void loadAll(const wchar_t *path); + + static void postLoad(int f=TRUE); + + static void unloadAll(); + + static int checkGUID(GUID &g, int invalid_ok=FALSE); // boolean of if we should load it + + static WaComponent *enumComponent(int component); + + static void broadcastNotify(int cmd, int param1=0, int param2=0); + static void sendNotify(GUID guid, int cmd, int param1=0, int param2=0); + static int sendCommand(GUID guid, const wchar_t *command, int p1=0, int p2=0, void *ptr=NULL, int ptrlen=0); + static int postCommand(GUID guid, const wchar_t *command, int p1, int p2, void *ptr, int ptrlen, int waitforanswer); + static void broadcastCommand(const wchar_t *command, int p1=0, int p2=0, void *ptr=NULL, int ptrlen=0); + static int getNumComponents(); + static GUID getComponentGUID(int c); + static const wchar_t *getComponentName(GUID g); + static CfgItem *getCfgInterface(GUID g); + static WaComponent *getComponentFromGuid(GUID g); + + static void load(const wchar_t *filename); + + static const wchar_t *getComponentPath(GUID g); + + static void startupDBs(); + static void shutdownDBs(); + + static void mainThread_handlePostCommands(); + static PtrList<ComponPostEntry> componPostEntries; +}; + +#endif |