-
+/*
+ * Acess2 Window Manager (AxWin2)
+ */
#ifndef _WM_H_
#define _WM_H_
#include <axwin2/axwin.h>
+#include "common.h"
typedef struct sAxWin_Element tElement;
+typedef struct sTab tTab;
+typedef struct sApplication tApplication;
struct sAxWin_Element
{
tElement *FirstChild;
tElement *LastChild;
tElement *NextSibling;
-
+
+ // User modifiable attributes
short PaddingL, PaddingR;
short PaddingT, PaddingB;
short GapSize;
+ uint32_t Flags;
+
short FixedWith; // Fixed Long Size attribute (height)
short FixedCross; // Fixed Cross Size attribute (width)
short MinCross; // Minimum cross size
void *Data;
- uint32_t Flags;
-
// -- Render Cache
short CachedX, CachedY;
short CachedW, CachedH;
char DebugName[];
};
-typedef struct sTab
+struct sApplication
{
- int Type; // Should be zero, allows a tab to be the parent of an element
-
- tElement *Parent;
- tElement *FirstChild;
- tElement *LastChild;
- struct sTab *NextTab;
+ tApplication *Next;
+
+ void *Ident;
+ tMessages_Handle_Callback *SendMessage;
char *Name;
-
- tElement *RootElement;
-} tTab;
+ tElement MetaElement;
-typedef struct sApplication
-{
- pid_t PID;
-
- int nTabs;
- tTab *Tabs;
-
- char Name[];
-} tApplication;
+};
#endif