]> Dogcows Code - chaz/tint2/blobdiff - src/panel.h
*add* multiple tasks can be urgent now
[chaz/tint2] / src / panel.h
index 64ffcdb93d862fa5eae01004807187cd2c6c34c1..30faf5faf11f83c12314a2f36d91c7c4cc9c045c 100644 (file)
@@ -20,6 +20,9 @@
 #include "taskbar.h"
 #include "systraybar.h"
 
+#ifdef ENABLE_BATTERY
+#include "battery.h"
+#endif
 
 
 extern int signal_pending;
@@ -29,71 +32,83 @@ extern int mouse_middle;
 extern int mouse_right;
 extern int mouse_scroll_up;
 extern int mouse_scroll_down;
+extern int mouse_tilt_left;
+extern int mouse_tilt_right;
 
 //panel mode
-enum { SINGLE_DESKTOP=0, MULTI_DESKTOP, SINGLE_MONITOR };
+enum { SINGLE_DESKTOP=0, MULTI_DESKTOP };
 extern int panel_mode;
+extern int wm_menu;
+extern int panel_dock;
 
 //panel position
 enum { LEFT=0x01, RIGHT=0x02, CENTER=0X04, TOP=0X08, BOTTOM=0x10 };
 extern int panel_position;
+extern int panel_horizontal;
 
 extern int panel_refresh;
 
 extern Task *task_active;
 extern Task *task_drag;
+extern GSList *urgent_list;
+extern int  tick_urgent;
+extern int  max_tick_urgent;
 
+extern Imlib_Image default_icon;
 
-typedef struct {
-   // always start with area
-   // area.list own all objects of the panel according to config file
-   Area area;
 
-   // list of visible objects
-   GSList *list_visible;
+// tint2 use one panel per monitor and one taskbar per desktop.
+typedef struct {
+       // always start with area
+       // area.list own all objects of the panel according to config file
+       Area area;
 
-   // --------------------------------------------------
-   // panel
-   Window main_win;
-   Pixmap temp_pmap;
+       // --------------------------------------------------
+       // panel
+       Window main_win;
+       Pixmap temp_pmap;
 
-   // position relative to root window
+       // position relative to root window
        int posx, posy;
-   int marginx, marginy;
-   float initial_width, initial_height;
-   int pourcentx, pourcenty;
-   // location of the panel (monitor number)
-   int monitor;
-
-   // --------------------------------------------------
-   // task and taskbar parameter per panel
+       int marginx, marginy;
+       int pourcentx, pourcenty;
+       // location of the panel (monitor number)
+       int monitor;
+
+       // --------------------------------------------------
+       // task and taskbar parameter per panel
        Area g_taskbar;
        Global_task g_task;
 
-   // --------------------------------------------------
-   // taskbar point to the first taskbar in panel.area.list.
-   // number of tasbar == nb_desktop
-   Taskbar *taskbar;
-   int  nb_desktop;
-
-   // --------------------------------------------------
-   // clock
-   Clock clock;
-
-   // --------------------------------------------------
-   // systray
-   Systraybar trayer;
-
-       // global taskbar parameter
-       //Area g_systraybar;
+       // --------------------------------------------------
+       // taskbar point to the first taskbar in panel.area.list.
+       // number of tasbar == nb_desktop. taskbar[i] is for desktop(i).
+       // taskbar[i] is used to loop over taskbar,
+       // while panel->area.list is used to loop over all panel's objects
+       Taskbar *taskbar;
+       int  nb_desktop;
+
+       // --------------------------------------------------
+       // clock
+       Clock clock;
+
+       // --------------------------------------------------
+       // battery
+#ifdef ENABLE_BATTERY
+       Battery battery;
+#endif
 } Panel;
 
 
+extern Panel panel_config;
 extern Panel *panel1;
 extern int  nb_panel;
 
-
+// realloc panels according to number of monitor
+// use panel_config as default value
 void init_panel();
+
+void init_panel_size_and_position(Panel *panel);
 void cleanup_panel();
 void resize_panel(void *obj);
 
This page took 0.027012 seconds and 4 git commands to generate.