aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/api/imgldr/imggen/shadowwnd.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Wasabi/api/imgldr/imggen/shadowwnd.h')
-rw-r--r--Src/Wasabi/api/imgldr/imggen/shadowwnd.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/Src/Wasabi/api/imgldr/imggen/shadowwnd.h b/Src/Wasabi/api/imgldr/imggen/shadowwnd.h
new file mode 100644
index 00000000..8082dba5
--- /dev/null
+++ b/Src/Wasabi/api/imgldr/imggen/shadowwnd.h
@@ -0,0 +1,40 @@
+#ifndef _SHADOW_H
+#define _SHADOW_H
+
+#include "../common/guiobjwnd.h"
+#include "../bfc/paintcb.h"
+
+#define XUISHADOWWND_PARENT GuiObjectWnd
+class XuiShadowWnd : public XUISHADOWWND_PARENT, public PaintCallback {
+public:
+ static const wchar_t *xuiobject_getXmlTag() { return "Shadow"; }
+ static const char *xuiobject_getServiceName() { return "Shadow XuiObject"; }
+
+ XuiShadowWnd();
+ virtual ~XuiShadowWnd();
+
+ virtual int onInit();
+
+ virtual int onPaint(Canvas *canvas);
+
+ virtual int setXuiParam(int xuihandle, int xmlattributeid, const wchar_t *xmlattributename, const wchar_t *value);
+
+ virtual void onAfterPaint(PaintCallbackInfo *info);
+ virtual void onInvalidation(PaintCallbackInfo *info);
+protected:
+ virtual void onWindowDeleted(BaseWnd *w);
+ void attachToGroup();
+ virtual void timerclient_timerCallback(int id);
+
+private:
+ int myxuihandle;
+ StringW targetname;
+ api_window *group;
+ BltCanvas *bltcanvas;
+ int c_w, c_h;
+ int in_paint;
+};
+
+class XuiShadowWndSvc : public XuiObjectSvc2<XuiShadowWnd> {};
+
+#endif