]> git.sur5r.net Git - i3/i3/blob - include/config.h
Optimization: Get the colorpixels when loading configuration, make use of the new...
[i3/i3] / include / config.h
1 /*
2  * vim:ts=8:expandtab
3  *
4  * i3 - an improved dynamic tiling window manager
5  *
6  * (c) 2009 Michael Stapelberg and contributors
7  *
8  * See file LICENSE for license information.
9  *
10  * include/config.h: Contains all structs/variables for
11  * the configurable part of i3
12  *
13  */
14
15 #ifndef _CONFIG_H
16 #define _CONFIG_H
17
18 typedef struct Config Config;
19 extern Config config;
20
21 struct Colortriple {
22         uint32_t border;
23         uint32_t background;
24         uint32_t text;
25 };
26
27 struct Config {
28         const char *terminal;
29         const char *font;
30
31         /* Color codes are stored here */
32         struct config_client {
33                 struct Colortriple focused;
34                 struct Colortriple focused_inactive;
35                 struct Colortriple unfocused;
36         } client;
37         struct config_bar {
38                 struct Colortriple focused;
39                 struct Colortriple unfocused;
40         } bar;
41 };
42
43 /**
44  * Reads the configuration from ~/.i3/config or /etc/i3/config if not found.
45  *
46  * If you specify override_configpath, only this path is used to look for a
47  * configuration file.
48  *
49  */
50 void load_configuration(xcb_connection_t *conn, const char *override_configfile);
51
52 #endif