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