X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin2_src%2FWM%2Fwm.h;h=565697d71c528474c4b7d926ed9b879ee6dc2545;hb=338ddf3c1dc87e9e6f872e241e3f4486e80fe136;hp=96d488d588318a7726a01f9c196207213bd30866;hpb=b98fbd4e9c71447d81fc9bd643fb174c76346e0f;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin2_src/WM/wm.h b/Usermode/Applications/axwin2_src/WM/wm.h index 96d488d5..565697d7 100644 --- a/Usermode/Applications/axwin2_src/WM/wm.h +++ b/Usermode/Applications/axwin2_src/WM/wm.h @@ -31,6 +31,8 @@ typedef struct sElement // -- Render Cache short CachedX, CachedY; short CachedW, CachedH; + + char DebugName[]; } tElement; typedef struct sTab @@ -69,12 +71,12 @@ enum eElementFlags /** * \brief Element visibility * - * If set, the element is not drawn. + * If set, the element is not drawn (but still is used for size calculations) */ ELEFLAG_INVISIBLE = 0x002, /** - * \brief Position an element absulutely + * \brief Position an element absulutely (ignored in size calcs) */ ELEFLAG_ABSOLUTEPOS = 0x004, @@ -85,6 +87,9 @@ enum eElementFlags /** * \brief Element "orientation" + * + * Vertical means that the children of this element are stacked, + * otherwise they list horizontally */ ELEFLAG_VERTICAL = 0x010,// ELEFLAG_HORIZONTAL = 0x000, /** @@ -100,6 +105,11 @@ enum eElementFlags */ ELEFLAG_NOEXPAND = 0x040, + /** + * \brief With (length) size action + * If this flag is set, the element will only be as large as + * is required along it's parent + */ ELEFLAG_NOSTRETCH = 0x080, /** @@ -108,8 +118,11 @@ enum eElementFlags ELEFLAG_ALIGN_CENTER= 0x100, /** * \brief Right/Bottom alignment + * + * If set, the element aligns to the end of avaliable space (instead + * of the beginning) */ - ELEFLAG_ALIGN_END = 0x200 + ELEFLAG_ALIGN_END = 0x200 }; /** @@ -118,15 +131,16 @@ enum eElementTypes { ELETYPE_NONE, - ELETYPE_BOX, //!< Content box + ELETYPE_BOX, //!< Content box (invisible in itself) ELETYPE_TABBAR, //!< Tab Bar ELETYPE_TOOLBAR, //!< Tool Bar ELETYPE_BUTTON, //!< Push Button + ELETYPE_TEXT, //!< Text ELETYPE_IMAGE, //!< Image - ELETYPE_SPACER, //!< Visual Spacer + ELETYPE_SPACER, //!< Visual Spacer (horizontal / vertical rule) MAX_ELETYPES = 0x100 }; @@ -135,9 +149,9 @@ enum eElementTypes /** * \brief Create a new element as a child of \a Parent */ -extern tElement *WM_CreateElement(tElement *Parent, int Type, int Flags); +extern tElement *WM_CreateElement(tElement *Parent, int Type, int Flags, const char *DebugName); extern void WM_SetFlags(tElement *Element, int Flags); extern void WM_SetSize(tElement *Element, int Size); -extern void WM_SetText(tElement *Element, char *Text); +extern void WM_SetText(tElement *Element, const char *Text); #endif