From: John Hodge Date: Sat, 29 Oct 2011 01:26:50 +0000 (+0800) Subject: Usermode/AxWin3 - Fiddliing with things X-Git-Tag: rel0.14~171 X-Git-Url: https://git.ucc.asn.au/?a=commitdiff_plain;h=15f5b23f7fb36e99f38afdac4cded701e56984a1;p=tpg%2Facess2.git Usermode/AxWin3 - Fiddliing with things --- diff --git a/Usermode/Applications/axwin3_src/WM/include/renderer_widget.h b/Usermode/Applications/axwin3_src/WM/include/renderer_widget.h new file mode 100644 index 00000000..fbb3e02a --- /dev/null +++ b/Usermode/Applications/axwin3_src/WM/include/renderer_widget.h @@ -0,0 +1,21 @@ +/* + * Acess2 Window Manager v3 + * - By John Hodge (thePowersGang) + * + * render_widget.h + * - AxWin2 Widget port + */ +#ifndef _RENDERER_WIDGET_H_ +#define _RENDERER_WIDGET_H_ + +#include + +enum +{ + MSG_WIDGET_CREATE, + MSG_WIDGET_DELETE, + MSG_WIDGET_SETTEXT +}; + +#endif + diff --git a/Usermode/Applications/axwin3_src/WM/renderer_widget.c b/Usermode/Applications/axwin3_src/WM/renderer_widget.c index 94f983da..ddcb2437 100644 --- a/Usermode/Applications/axwin3_src/WM/renderer_widget.c +++ b/Usermode/Applications/axwin3_src/WM/renderer_widget.c @@ -7,11 +7,51 @@ */ #include #include +#include // === TYPES === typedef struct sWidgetWin tWidgetWin; +typedef struct sAxWin_Element tElement; // === STRUCTURES === +struct sAxWin_Element +{ + enum eElementTypes Type; + + // Element Tree + tElement *Parent; + tElement *FirstChild; + tElement *LastChild; + tElement *NextSibling; + + // Application + tApplication *Owner; //!< Owning application + uint16_t ApplicationID; //!< Index into sApplication::EleIndex + + // User modifiable attributes + short PaddingL, PaddingR; + short PaddingT, PaddingB; + short GapSize; + + uint32_t Flags; + + short FixedWith; //!< Fixed lengthways Size attribute (height) + short FixedCross; //!< Fixed Cross Size attribute (width) + + char *Text; + + // -- Attributes maitained by the element code + // Not touched by the user + short MinWith; //!< Minimum long size + short MinCross; //!< Minimum cross size + void *Data; //!< Per-type data + + // -- Render Cache + short CachedX, CachedY; + short CachedW, CachedH; + + char DebugName[]; +}; struct sWidgetWin { tElement RootElement;