X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin2_src%2FWM%2Fwm.h;h=5977fd689a3459b6834c58350955d7a1b5c3d31e;hb=aaa8a3751e4ae214a1f1794510fa88fbba697dac;hp=ab2a629c5106e242f5d22fabaa4b5933a464bcbe;hpb=b43ed8d15c86ff9b7f5abc9f47e1385503dcdf35;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin2_src/WM/wm.h b/Usermode/Applications/axwin2_src/WM/wm.h index ab2a629c..5977fd68 100644 --- a/Usermode/Applications/axwin2_src/WM/wm.h +++ b/Usermode/Applications/axwin2_src/WM/wm.h @@ -15,6 +15,8 @@ #define DEFAULT_ELEMENTS_PER_APP 128 typedef struct sAxWin_Element tElement; +typedef struct sMenuItem tMenuItem; +typedef struct sWindow tWindow; typedef struct sApplication tApplication; struct sAxWin_Element @@ -38,7 +40,7 @@ struct sAxWin_Element uint32_t Flags; - short FixedWith; //!< Fixed Long Size attribute (height) + short FixedWith; //!< Fixed lengthways Size attribute (height) short FixedCross; //!< Fixed Cross Size attribute (width) char *Text; @@ -56,6 +58,30 @@ struct sAxWin_Element char DebugName[]; }; +struct sMenuItem +{ + tMenuItem *Next; + int Flags; + int ID; //!< ID number sent to application + const char *Label; + const char *Right; + tMenuItem *FirstChild; +}; + +struct sWindow +{ + int X, Y, W, H; + void *Icon; + + tApplication *App; + + tWindow *OrderNext; // Render order + + tMenuItem *Menus; + + tElement RootElement; +}; + struct sApplication { tApplication *Next; @@ -68,7 +94,7 @@ struct sApplication int MaxElementIndex; //!< Number of entries in \a EleIndex tElement **EleIndex; //!< Array of pointers to elements owned by this application - tElement MetaElement; //!< Windows child off this + tElement MetaElement; //!< Tabs child off this }; // === FUNCTIONS ===