]> Dogcows Code - chaz/tint2/blob - src/taskbar/taskbar.h
52a7be0f153c831554a0d53c37f43debc7fb2280
[chaz/tint2] / src / taskbar / taskbar.h
1 /**************************************************************************
2 * Copyright (C) 2008 thierry lorthiois (lorthiois@bbsoft.fr)
3 *
4 * taskbar
5 *
6 **************************************************************************/
7
8 #ifndef TASKBAR_H
9 #define TASKBAR_H
10
11 #include "task.h"
12
13 enum { TASKBAR_NORMAL, TASKBAR_ACTIVE, TASKBAR_STATE_COUNT };
14 extern GHashTable* win_to_task_table;
15 extern Task *task_active;
16 extern Task *task_drag;
17 extern int taskbar_enabled;
18
19 // tint2 use one taskbar per desktop.
20 typedef struct {
21 // always start with area
22 Area area;
23
24 int desktop;
25 Pixmap state_pix[TASKBAR_STATE_COUNT];
26
27 // task parameters
28 int text_width;
29 } Taskbar;
30
31
32 typedef struct {
33 //always start with area
34 Area area;
35 Background* background[TASKBAR_STATE_COUNT];
36 } Global_taskbar;
37
38
39 // default global data
40 void default_taskbar();
41
42 // freed memory
43 void cleanup_taskbar();
44
45 void init_taskbar();
46 void init_taskbar_panel(void *p);
47
48 void draw_taskbar (void *obj, cairo_t *c);
49 void taskbar_remove_task(gpointer key, gpointer value, gpointer user_data);
50 Task *task_get_task (Window win);
51 GPtrArray* task_get_tasks(Window win);
52 void task_refresh_tasklist ();
53
54 int resize_taskbar(void *obj);
55 void on_change_taskbar (void *obj);
56 void set_taskbar_state(Taskbar *tskbar, int state);
57
58 // show/hide taskbar according to current desktop
59 void visible_taskbar(void *p);
60
61
62 #endif
63
This page took 0.032937 seconds and 3 git commands to generate.