]> Dogcows Code - chaz/tint2/blob - src/panel.h
tint2 looks good for me. if you see bugs, report it.
[chaz/tint2] / src / panel.h
1 /**************************************************************************
2 * Copyright (C) 2008 Pål Staurland (staura@gmail.com)
3 * Modified (C) 2008/2009 thierry lorthiois (lorthiois@bbsoft.fr)
4 *
5 * panel :
6 * - draw panel and all objects according to panel_layout
7 *
8 *
9 **************************************************************************/
10
11 #ifndef PANEL_H
12 #define PANEL_H
13
14 #include <pango/pangocairo.h>
15 #include <sys/time.h>
16
17 #include "common.h"
18 #include "clock.h"
19 #include "task.h"
20 #include "taskbar.h"
21 #include "systraybar.h"
22
23
24
25 extern int signal_pending;
26 // --------------------------------------------------
27 // mouse events
28 extern int mouse_middle;
29 extern int mouse_right;
30 extern int mouse_scroll_up;
31 extern int mouse_scroll_down;
32
33 //panel mode
34 enum { SINGLE_DESKTOP=0, MULTI_DESKTOP, SINGLE_MONITOR };
35 extern int panel_mode;
36
37 //panel position
38 enum { LEFT=0x01, RIGHT=0x02, CENTER=0X04, TOP=0X08, BOTTOM=0x10 };
39 extern int panel_position;
40
41 extern int panel_refresh;
42
43 extern Task *task_active;
44 extern Task *task_drag;
45
46
47 typedef struct {
48 // always start with area
49 // area.list own all objects of the panel according to config file
50 Area area;
51
52 // list of visible objects
53 GSList *list_visible;
54
55 // --------------------------------------------------
56 // panel
57 Window main_win;
58 Pixmap temp_pmap;
59
60 // position relative to root window
61 int posx, posy;
62 int marginx, marginy;
63 float initial_width, initial_height;
64 int pourcentx, pourcenty;
65 // location of the panel (monitor number)
66 int monitor;
67
68 // --------------------------------------------------
69 // task and taskbar parameter per panel
70 Area g_taskbar;
71 Global_task g_task;
72
73 // --------------------------------------------------
74 // taskbar point to the first taskbar in panel.area.list.
75 // number of tasbar == nb_desktop
76 Taskbar *taskbar;
77 int nb_desktop;
78
79 // --------------------------------------------------
80 // clock
81 Clock clock;
82
83 // --------------------------------------------------
84 // systray
85 Systraybar trayer;
86
87 // global taskbar parameter
88 //Area g_systraybar;
89 } Panel;
90
91
92 extern Panel *panel1;
93 extern int nb_panel;
94
95
96 void init_panel();
97 void cleanup_panel();
98 void resize_panel(void *obj);
99
100 void set_panel_properties(Panel *p);
101 void visible_object();
102
103 // draw background panel
104 void set_panel_background(Panel *p);
105
106 // detect witch panel
107 Panel *get_panel(Window win);
108
109 #endif
110
This page took 0.039004 seconds and 5 git commands to generate.