2011-10-25 16:19:38 -04:00
|
|
|
/*
|
|
|
|
* vim:ts=4:sw=4:expandtab
|
|
|
|
*
|
|
|
|
* i3bar - an xcb-based status- and ws-bar for i3
|
|
|
|
* © 2010-2011 Axel Wagner and contributors (see also: LICENSE)
|
|
|
|
*
|
|
|
|
* config.c: Parses the configuration (received from i3).
|
|
|
|
*
|
|
|
|
*/
|
2010-08-25 18:02:35 -04:00
|
|
|
#ifndef CONFIG_H_
|
2010-11-04 07:27:10 -04:00
|
|
|
#define CONFIG_H_
|
|
|
|
|
|
|
|
#include "common.h"
|
2010-08-25 18:02:35 -04:00
|
|
|
|
2011-02-21 09:47:58 -05:00
|
|
|
typedef enum {
|
2011-10-21 14:59:25 -04:00
|
|
|
POS_NONE = 0,
|
|
|
|
POS_TOP,
|
|
|
|
POS_BOT
|
|
|
|
} position_t;
|
2011-02-21 09:47:58 -05:00
|
|
|
|
2010-08-25 18:02:35 -04:00
|
|
|
typedef struct config_t {
|
2010-11-04 07:27:10 -04:00
|
|
|
int hide_on_modifier;
|
2011-12-12 00:58:57 -05:00
|
|
|
int modifier;
|
2011-10-21 14:59:25 -04:00
|
|
|
position_t position;
|
2010-11-04 07:27:10 -04:00
|
|
|
int verbose;
|
2011-10-19 17:58:19 -04:00
|
|
|
struct xcb_color_strings_t colors;
|
2011-04-21 14:24:02 -04:00
|
|
|
int disable_ws;
|
2011-10-19 17:58:19 -04:00
|
|
|
char *bar_id;
|
|
|
|
char *command;
|
|
|
|
char *fontname;
|
2011-10-21 14:47:56 -04:00
|
|
|
char *tray_output;
|
2011-10-21 17:17:41 -04:00
|
|
|
int num_outputs;
|
|
|
|
char **outputs;
|
2010-08-25 18:02:35 -04:00
|
|
|
} config_t;
|
|
|
|
|
|
|
|
config_t config;
|
|
|
|
|
2011-10-19 17:58:19 -04:00
|
|
|
/**
|
|
|
|
* Start parsing the received bar configuration json-string
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void parse_config_json(char *json);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* free()s the color strings as soon as they are not needed anymore.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void free_colors(struct xcb_color_strings_t *colors);
|
|
|
|
|
2010-08-25 18:02:35 -04:00
|
|
|
#endif
|