X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fconfig.h;h=e959a2dc6f6f4787dc190b2ca02970bb9ba3ca1f;hb=206b96202c6cae83a1867e3266edafa5a10e327f;hp=a4a274cf9fd39008b827eaa8fbe1ff8d22276b4a;hpb=c2c6ca25d5d14f7c9c280ad3b74577ff6b1569fa;p=i3%2Fi3 diff --git a/include/config.h b/include/config.h index a4a274cf..e959a2dc 100644 --- a/include/config.h +++ b/include/config.h @@ -2,10 +2,7 @@ * vim:ts=4:sw=4:expandtab * * i3 - an improved dynamic tiling window manager - * - * © 2009-2010 Michael Stapelberg and contributors - * - * See file LICENSE for license information. + * © 2009-2012 Michael Stapelberg and contributors (see also: LICENSE) * * include/config.h: Contains all structs/variables for the configurable * part of i3 as well as functions handling the configuration file (calling @@ -13,13 +10,13 @@ * mode). * */ - #ifndef _CONFIG_H #define _CONFIG_H #include #include "queue.h" #include "i3.h" +#include "libi3.h" typedef struct Config Config; typedef struct Barconfig Barconfig; @@ -35,6 +32,7 @@ extern TAILQ_HEAD(barconfig_head, Barconfig) barconfigs; */ struct context { bool has_errors; + bool has_warnings; int line_number; char *line_copy; @@ -56,6 +54,7 @@ struct Colortriple { uint32_t border; uint32_t background; uint32_t text; + uint32_t indicator; }; /** @@ -151,6 +150,12 @@ struct Config { * buttons to do things with floating windows (move, resize) */ uint32_t floating_modifier; + /** Maximum and minimum dimensions of a floating window */ + int32_t floating_maximum_width; + int32_t floating_maximum_height; + int32_t floating_minimum_width; + int32_t floating_minimum_height; + /* Color codes are stored here */ struct config_client { uint32_t background; @@ -198,11 +203,28 @@ struct Barconfig { char *socket_path; /** Bar display mode (hide unless modifier is pressed or show in dock mode) */ - enum { M_HIDE = 0, M_DOCK = 1 } mode; + enum { M_DOCK = 0, M_HIDE = 1 } mode; + + /** Bar modifier (to show bar when in hide mode). */ + enum { + M_NONE = 0, + M_CONTROL = 1, + M_SHIFT = 2, + M_MOD1 = 3, + M_MOD2 = 4, + M_MOD3 = 5, + M_MOD4 = 6, + M_MOD5 = 7 + } modifier; /** Bar position (bottom by default). */ enum { P_BOTTOM = 0, P_TOP = 1 } position; + /** Command that should be run to execute i3bar, give a full path if i3bar is not + * in your $PATH. + * By default just 'i3bar' is executed. */ + char *i3bar_command; + /** Command that should be run to get a statusline, for example 'i3status'. * Will be passed to the shell. */ char *status_command; @@ -222,17 +244,21 @@ struct Barconfig { char *background; char *statusline; - char *focused_workspace_text; + char *focused_workspace_border; char *focused_workspace_bg; + char *focused_workspace_text; - char *active_workspace_text; + char *active_workspace_border; char *active_workspace_bg; + char *active_workspace_text; - char *inactive_workspace_text; + char *inactive_workspace_border; char *inactive_workspace_bg; + char *inactive_workspace_text; - char *urgent_workspace_text; + char *urgent_workspace_border; char *urgent_workspace_bg; + char *urgent_workspace_text; } colors; TAILQ_ENTRY(Barconfig) configs; @@ -251,7 +277,7 @@ void load_configuration(xcb_connection_t *conn, const char *override_configfile, * Translates keysymbols to keycodes for all bindings which use keysyms. * */ -void translate_keysyms(); +void translate_keysyms(void); /** * Ungrabs all keys, to be called before re-grabbing the keys because of a