aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/api/config/items/cfgitemx.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Wasabi/api/config/items/cfgitemx.h')
-rw-r--r--Src/Wasabi/api/config/items/cfgitemx.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/Src/Wasabi/api/config/items/cfgitemx.h b/Src/Wasabi/api/config/items/cfgitemx.h
new file mode 100644
index 00000000..6d5a9408
--- /dev/null
+++ b/Src/Wasabi/api/config/items/cfgitemx.h
@@ -0,0 +1,42 @@
+#ifndef NULLSOFT_WASABI_CFGITEMX_H
+#define NULLSOFT_WASABI_CFGITEMX_H
+
+#include "cfgitem.h"
+
+class CfgItemX : public CfgItem
+{
+public:
+ virtual ~CfgItemX() {}
+ virtual const wchar_t *cfgitem_getName()=0;
+ virtual GUID cfgitem_getGuid()=0;
+ virtual int cfgitem_getNumAttributes()=0;
+ virtual const wchar_t *cfgitem_enumAttribute(int n)=0;
+ virtual const wchar_t *cfgitem_getConfigXML()=0;
+ virtual void cfgitem_onCfgGroupCreate(ifc_window *cfggroup, const wchar_t *attrname)=0;
+ virtual void cfgitem_onCfgGroupDelete(ifc_window *cfggroup)=0;
+
+ virtual int cfgitem_getNumChildren()=0;
+ virtual CfgItem *cfgitem_enumChild(int n)=0;
+ virtual GUID cfgitem_getParentGuid()=0;
+
+ virtual void cfgitem_onRegister()=0;
+ virtual void cfgitem_onDeregister()=0;
+
+ virtual int cfgitem_getAttributeType(const wchar_t *name)=0;
+ virtual const wchar_t *cfgitem_getAttributeConfigGroup(const wchar_t *name)=0;
+
+ virtual int cfgitem_getDataLen(const wchar_t *name)=0;
+ virtual int cfgitem_getData(const wchar_t *name, wchar_t *data, int data_len)=0;
+ virtual int cfgitem_setData(const wchar_t *name, const wchar_t *data)=0;
+ virtual ifc_dependent *cfgitem_getDependencyPtr()=0;
+ virtual int cfgitem_delAttribute(const wchar_t *name)=0;
+ virtual int cfgitem_addAttribute(const wchar_t *name, const wchar_t *defval)=0;
+
+protected:
+ RECVS_DISPATCH;
+
+
+};
+
+
+#endif \ No newline at end of file