struct sWindow
{
- tWindow *GlobalNext;
- tWindow *RenderNext;
+ tWindow *Owner;
+ // Render tree
+ tWindow *Parent;
tWindow *FirstChild;
tWindow *LastChild;
-
- tWMRenderer *Renderer;
-
- int X;
- int Y;
- int W;
- int H;
+ tWindow *NextSibling;
+ tWindow *PrevSibling;
+
+ tIPC_Client *Client;
+ uint32_t ID; //!< Client assigned ID
+ tWMRenderer *Renderer;
void *RendererInfo;
+ char *Title;
+
+ int Flags;
+
+ // Text Cursor
+ int CursorX, CursorY;
+ int CursorW, CursorH;
+
+ // Gutter sizes (cached from decorator)
+ int BorderL, BorderR;
+ int BorderT, BorderB;
+
+ // Position and dimensions
+ int X, Y;
+ int W, H;
+ int RealX, RealY;
+ int RealW, RealH;
+
+ void *RenderBuffer; //!< Cached copy of the rendered window
};
#endif