xuistatus.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #ifndef __XUISTATUS_H
  2. #define __XUISTATUS_H
  3. #include <api/wnd/wndclass/status.h>
  4. #include <api/script/objcontroller.h>
  5. #define XUISTATUS_PARENT StatusBar
  6. class XuiStatus : public XUISTATUS_PARENT {
  7. public:
  8. XuiStatus();
  9. virtual int setXuiParam(int xuihandle, int xmlattributeid, const wchar_t *xmlattributename, const wchar_t *value);
  10. virtual void callme(const wchar_t *txt);
  11. protected:
  12. /*static */void CreateXMLParameters(int master_handle);
  13. private:
  14. enum {
  15. EXCLUDE, INCLUDE
  16. };
  17. static XMLParamPair params[];
  18. int myxuihandle;
  19. };
  20. extern const wchar_t StatusXuiObjectStr[];
  21. extern char StatusXuiSvcName[];
  22. class LayoutStatusXuiSvc : public XuiObjectSvc<XuiStatus, StatusXuiObjectStr, StatusXuiSvcName> {};
  23. // -----------------------------------------------------------------------------------------------------
  24. class LayoutStatusController : public ScriptObjectControllerI {
  25. public:
  26. virtual const wchar_t *getClassName() { return L"LayoutStatus"; }
  27. virtual const wchar_t *getAncestorClassName() { return L"GuiObject"; }
  28. virtual ScriptObjectController *getAncestorController() { return WASABI_API_MAKI->maki_getController(guiObjectGuid); }
  29. virtual int getNumFunctions();
  30. virtual const function_descriptor_struct *getExportedFunctions();
  31. virtual GUID getClassGuid() { return layoutStatusGuid; }
  32. virtual ScriptObject *instantiate();
  33. virtual void destroy(ScriptObject *o);
  34. virtual void *encapsulate(ScriptObject *o);
  35. virtual void deencapsulate(void *o);
  36. public:
  37. static scriptVar layoutstatus_callme(SCRIPT_FUNCTION_PARAMS, ScriptObject *o, scriptVar str);
  38. private:
  39. static function_descriptor_struct exportedFunction[];
  40. };
  41. extern LayoutStatusController *layoutStatusController;
  42. #endif