22da1f2f8652138cddf347a7c39ce07bd6b96f79
[mikachu/rspanel.git] / rspanel.h
1 typedef struct task
2 {
3         struct task *next;
4         Window win;
5         Pixmap icon;
6         Pixmap mask;
7         char *name;
8 //      char *locale;
9         int pos_x;
10         int width;
11         unsigned int focused:1;
12         unsigned int iconified:1;
13         unsigned int shaded:1;
14         unsigned int hidden:1;
15         unsigned int icon_copied:1;
16 }
17 task;
18
19 typedef struct taskbar
20 {
21         Window win;
22         task *task_list;
23         int num_tasks;
24         int num_shown_tasks;
25         int my_desktop;
26         unsigned int hidden:1;
27         unsigned int at_top:1;
28 }
29 taskbar;
30
31 #define MWM_HINTS_DECORATIONS         (1L << 1)
32 typedef struct _mwmhints
33 {
34         unsigned long flags;
35         unsigned long functions;
36         unsigned long decorations;
37         long inputMode;
38         unsigned long status;
39 }
40 MWMHints;
41
42 #define WIN_STATE_STICKY          (1<<0)        /* everyone knows sticky */
43 #define WIN_STATE_MINIMIZED       (1<<1)        /* ??? */
44 #define WIN_STATE_MAXIMIZED_VERT  (1<<2)        /* window in maximized V state */
45 #define WIN_STATE_MAXIMIZED_HORIZ (1<<3)        /* window in maximized H state */
46 #define WIN_STATE_HIDDEN          (1<<4)        /* not on taskbar but window visible */
47 #define WIN_STATE_SHADED          (1<<5)        /* shaded (NeXT style) */
48 #define WIN_STATE_HID_WORKSPACE   (1<<6)        /* not on current desktop */
49 #define WIN_STATE_HID_TRANSIENT   (1<<7)        /* owner of transient is hidden */
50 #define WIN_STATE_FIXED_POSITION  (1<<8)        /* window is fixed in position even */
51 #define WIN_STATE_ARRANGE_IGNORE  (1<<9)        /* ignore for auto arranging */
52
53 #define WIN_HINTS_SKIP_FOCUS      (1<<0)        /* "alt-tab" skips this win */
54 #define WIN_HINTS_SKIP_WINLIST    (1<<1)        /* not in win list */
55 #define WIN_HINTS_SKIP_TASKBAR    (1<<2)        /* not on taskbar */
56 #define WIN_HINTS_GROUP_TRANSIENT (1<<3)        /* ??????? */
57 #define WIN_HINTS_FOCUS_ON_CLICK  (1<<4)        /* app only accepts focus when clicked */
58 #define WIN_HINTS_DO_NOT_COVER    (1<<5)        /* attempt to not cover this window */