summaryrefslogtreecommitdiffstats
path: root/include/swaybar/status_line.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/swaybar/status_line.h')
-rw-r--r--include/swaybar/status_line.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/include/swaybar/status_line.h b/include/swaybar/status_line.h
new file mode 100644
index 00000000..9b77e8a7
--- /dev/null
+++ b/include/swaybar/status_line.h
@@ -0,0 +1,51 @@
1#ifndef _SWAYBAR_STATUS_LINE_H
2#define _SWAYBAR_STATUS_LINE_H
3
4#include <stdint.h>
5#include <stdbool.h>
6
7#include "list.h"
8#include "bar.h"
9
10typedef enum {UNDEF, TEXT, I3BAR} command_protocol;
11
12struct status_line {
13 list_t *block_line;
14 const char *text_line;
15 command_protocol protocol;
16};
17
18struct status_block {
19 char *full_text, *short_text, *align;
20 bool urgent;
21 uint32_t color;
22 int min_width;
23 char *name, *instance;
24 bool separator;
25 int separator_block_width;
26 bool markup;
27 // Airblader features
28 uint32_t background;
29 uint32_t border;
30 int border_top;
31 int border_bottom;
32 int border_left;
33 int border_right;
34};
35
36/**
37 * Initialize status line struct.
38 */
39struct status_line *init_status_line();
40
41/**
42 * handle status line activity.
43 */
44bool handle_status_line(struct bar *bar);
45
46/**
47 * Free status line struct.
48 */
49void free_status_line(struct status_line *line);
50
51#endif /* _SWAYBAR_STATUS_LINE_H */