use the theme. this might need work. heh! but ya.
[mikachu/rspanel.git] / rspanel.h
1 #ifndef rs_rspanel_h
2 #define rs_rspanel_h
3
4 #include "xprop.h"
5
6 #include <X11/Xlib.h>
7 #include <openbox/render.h>
8 #include <openbox/theme.h>
9
10 struct icon;
11
12 typedef struct screen
13 {
14     Display    *dd;
15     int         num;
16     int         width;
17     int         height;
18     Window      root;
19     RrInstance *rr;
20     RrTheme    *theme;              /* setup by gui_init */
21     Atom        atoms[XPROP_COUNT]; /* setup by xprop_init */
22     GC          fore_gc;            /* setup by gui_init */
23 }
24 screen;
25
26 typedef struct task
27 {
28         struct task *next;
29         Window win;
30         char *name;
31 //      char *locale;
32         int pos_x;
33         unsigned int width;
34         unsigned int nicons;
35         struct icon *icons;
36         unsigned int focused:1;
37         unsigned int iconified:1;
38         unsigned int shaded:1;
39         unsigned int hidden:1;
40         unsigned int icon_copied:1;
41 }
42 task;
43
44 typedef struct taskbar
45 {
46         Window win;
47         Window bgwin;
48         /* we draw stuff to this guy then set him as a window
49          * background pixmap, yay no flickering! */
50         Pixmap bg;
51         task *task_list;
52         int num_shown_tasks;
53         int my_desktop;
54         int x;
55         int y;
56         int w;
57         int h;
58         int draww;
59         int drawh;
60         unsigned int hidden:1;
61         unsigned int at_top:1;
62 }
63 taskbar;
64
65 int task_shown(task *tk);
66
67 #endif