From 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d Mon Sep 17 00:00:00 2001 From: Jef Date: Tue, 24 Sep 2024 14:54:57 +0200 Subject: Initial community commit --- Src/Wasabi/api/skin/widgets/edit.h | 100 +++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 Src/Wasabi/api/skin/widgets/edit.h (limited to 'Src/Wasabi/api/skin/widgets/edit.h') diff --git a/Src/Wasabi/api/skin/widgets/edit.h b/Src/Wasabi/api/skin/widgets/edit.h new file mode 100644 index 00000000..82b81776 --- /dev/null +++ b/Src/Wasabi/api/skin/widgets/edit.h @@ -0,0 +1,100 @@ +#ifndef __EDIT_H +#define __EDIT_H + +#include +#include + +#define EDIT_PARENT EditWnd + +class EditScriptController : public GuiObjectScriptController { + public: + + virtual const wchar_t *getClassName(); + virtual const wchar_t *getAncestorClassName(); + virtual ScriptObjectController *getAncestorController() { return guiController; } + virtual int getNumFunctions(); + virtual const function_descriptor_struct *getExportedFunctions(); + virtual GUID getClassGuid(); + virtual ScriptObject *instantiate(); + virtual void destroy(ScriptObject *o); + virtual void *encapsulate(ScriptObject *o); + virtual void deencapsulate(void *o); + + private: + + static function_descriptor_struct exportedFunction[]; + +}; + +extern EditScriptController *editController; + +#ifndef _NOSTUDIO + +#include + +class Edit : public EDIT_PARENT { +public: + Edit(); + ~Edit(); + + virtual void onEditUpdate(); + virtual void onIdleEditUpdate(); + virtual int onEnter(); // user hit enter.. return 1 to close window + virtual int onAbort(); // user hit escape.. return 1 to close window + virtual int onInit(); +#ifdef WASABI_COMPILE_CONFIG + virtual int onReloadConfig(); +#endif + + virtual int setXuiParam(int _xuihandle, int xmlattrid, const wchar_t *name, const wchar_t *value); + + void setText(const wchar_t *t); + void setAutoUrl(int a); + +protected: + /*static */void CreateXMLParameters(int master_handle); +private: + wchar_t *my_buffer; + int autourl; + int xuihandle; + +#else +class Edit : public EDIT_SCRIPTPARENT { +#endif + +public: + + static scriptVar script_vcpu_setText(SCRIPT_FUNCTION_PARAMS, ScriptObject *o, scriptVar t); + static scriptVar script_vcpu_setAutoEnter(SCRIPT_FUNCTION_PARAMS, ScriptObject *o, scriptVar t); + static scriptVar script_vcpu_getAutoEnter(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_setIdleEnabled(SCRIPT_FUNCTION_PARAMS, ScriptObject *o, scriptVar t); + static scriptVar script_vcpu_getIdleEnabled(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_getText(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_onEnter(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_onAbort(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_onEditUpdate(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_onIdleEditUpdate(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_selectAll(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + static scriptVar script_vcpu_enter(SCRIPT_FUNCTION_PARAMS, ScriptObject *o); + +protected: + enum { + EDIT_TEXT=0, + EDIT_ACTION, + EDIT_MULTILINE, + EDIT_VSCROLL, + EDIT_AUTOHSCROLL, + EDIT_AUTOENTER, + EDIT_PASSWORD, + EDIT_AUTOSELECT, +}; +private: + static XMLParamPair params[]; +}; + +extern const wchar_t editXuiObjectStr[]; +extern char editXuiSvcName[]; +class EditXuiSvc : public XuiObjectSvc {}; + + +#endif -- cgit