#include "common.h"
#include "server.h"
+#include "panel.h"
#include "task.h"
#include "taskbar.h"
#include "systraybar.h"
#include "clock.h"
-#include "panel.h"
#include "config.h"
#include "window.h"
#include "tooltip.h"
void init_config()
{
- cleanup_panel();
-
- // get monitor and desktop config
- get_monitors();
- get_desktops();
-
// append full transparency background
list_back = g_slist_append(0, calloc(1, sizeof(Area)));
b[0] = '\0';
panel_config.pourcentx = 1;
}
- panel_config.initial_width = atof(value1);
+ panel_config.area.width = atoi(value1);
+ if (panel_config.area.width == 0) {
+ // full width mode
+ panel_config.area.width = 100;
+ panel_config.pourcentx = 1;
+ }
if (value2) {
if ((b = strchr (value2, '%'))) {
b[0] = '\0';
panel_config.pourcenty = 1;
}
- panel_config.initial_height = atof(value2);
+ panel_config.area.height = atoi(value2);
}
}
else if (strcmp (key, "panel_margin") == 0) {
// TODO: user can configure layout => ordered objects in panel.area.list
// clock and systray before taskbar because resize(clock) can resize others object ??
- init_panel();
+ init_tooltip();
init_clock();
#ifdef ENABLE_BATTERY
init_battery();
#endif
init_systray();
- init_taskbar();
- init_tooltip();
- visible_object();
+ init_panel();
cleanup_config();
-
- task_refresh_tasklist();
}
FILE *fp;
if (old_task_icon_size) {
- panel_config.g_task.area.paddingy = ((int)panel_config.initial_height - (2 * panel_config.area.paddingy) - old_task_icon_size) / 2;
+ panel_config.g_task.area.paddingy = ((int)panel_config.area.height - (2 * panel_config.area.paddingy) - old_task_icon_size) / 2;
}
dir = g_build_filename (g_get_user_config_dir(), "tint2", NULL);
if (panel_position & LEFT) fputs(" left horizontal\n", fp);
else if (panel_position & RIGHT) fputs(" right horizontal\n", fp);
else fputs(" center horizontal\n", fp);
- fprintf(fp, "panel_size = %d %d\n", (int)panel_config.initial_width, (int)panel_config.initial_height);
+ fprintf(fp, "panel_size = %d %d\n", panel_config.area.width, panel_config.area.height);
fprintf(fp, "panel_margin = %d %d\n", panel_config.marginx, panel_config.marginy);
fprintf(fp, "panel_padding = %d %d %d\n", panel_config.area.paddingxlr, panel_config.area.paddingy, panel_config.area.paddingx);
fprintf(fp, "font_shadow = %d\n", panel_config.g_task.font_shadow);