X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fpanel.h;h=b9915e66a3d1d98c287805547a4c0d77275009a6;hb=b68d4db999a5912c2fc7f29aef8ab75e2f742706;hp=54a74e9792c356c820d20684d869bbbe446112c9;hpb=8269d3d140bce7dafde5c8448a96d4a90bc557e7;p=chaz%2Ftint2 diff --git a/src/panel.h b/src/panel.h index 54a74e9..b9915e6 100644 --- a/src/panel.h +++ b/src/panel.h @@ -1,8 +1,10 @@ /************************************************************************** -* panel : +* Copyright (C) 2008 PÃ¥l Staurland (staura@gmail.com) +* Modified (C) 2008/2009 thierry lorthiois (lorthiois@bbsoft.fr) +* +* panel : * - draw panel and all objects according to panel_layout -* -* Check COPYING file for Copyright +* * **************************************************************************/ @@ -16,68 +18,97 @@ #include "clock.h" #include "task.h" #include "taskbar.h" +#include "systraybar.h" + +#ifdef ENABLE_BATTERY +#include "battery.h" +#endif + +extern int signal_pending; +// -------------------------------------------------- +// mouse events +extern int mouse_middle; +extern int mouse_right; +extern int mouse_scroll_up; +extern int mouse_scroll_down; //panel mode -enum { SINGLE_DESKTOP=0, MULTI_DESKTOP, MULTI_MONITOR }; +enum { SINGLE_DESKTOP=0, MULTI_DESKTOP }; +extern int panel_mode; +extern int wm_menu; -//panel alignment +//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 Task *task_urgent; +extern int tick_urgent; +extern int max_tick_urgent; typedef struct { // always start with area + // area.list own all objects of the panel according to config file Area area; - // -------------------------------------------------- - // backward compatibility - int old_config_file; - int old_task_icon; - int old_panel_background; - int old_task_background; - char *old_task_font; - // -------------------------------------------------- // panel - int signal_pending; - int sleep_mode; - int refresh; - int monitor; - int position; + Window main_win; + Pixmap temp_pmap; + + // 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 + Area g_taskbar; + Global_task g_task; // -------------------------------------------------- - // taskbar point to the first taskbar in panel.area.list. number of tasbar == nb_desktop x nb_monitor. + // taskbar point to the first taskbar in panel.area.list. + // number of tasbar == nb_desktop Taskbar *taskbar; - int mode; - int nb_desktop; - int nb_monitor; - Task *task_active; - Task *task_drag; - + int nb_desktop; + // -------------------------------------------------- // clock Clock clock; - // -------------------------------------------------- - // systray - - // -------------------------------------------------- - // mouse events - int mouse_middle; - int mouse_right; - int mouse_scroll_up; - int mouse_scroll_down; + // -------------------------------------------------- + // battery +#ifdef ENABLE_BATTERY + Battery battery; +#endif } Panel; -Panel panel; +extern Panel *panel1; +extern int nb_panel; + +void init_panel(); +void cleanup_panel(); +void resize_panel(void *obj); -void visual_refresh (); -void set_panel_properties (Window win); -void window_draw_panel (); +void set_panel_properties(Panel *p); void visible_object(); +// draw background panel +void set_panel_background(Panel *p); + +// detect witch panel +Panel *get_panel(Window win); #endif +