aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bardata.c29
-rw-r--r--src/bardata.h19
-rw-r--r--src/pipe.c3
3 files changed, 37 insertions, 14 deletions
diff --git a/src/bardata.c b/src/bardata.c
index a35f3b5..3a4484c 100644
--- a/src/bardata.c
+++ b/src/bardata.c
@@ -1,23 +1,14 @@
#include <stdio.h>
#include <string.h>
+#include <inttypes.h>
+#include <stdlib.h>
#include "bardata.h"
#include "pipe.h"
-typedef enum {
- SIDE_LEFT,
- SIDE_CENTER,
- SIDE_RIGHT,
-} comp_side_t;
-
-typedef struct {
-} color_t;
-
-typedef struct {
- char name[16];
- char data[64];
- color_t fg, bg;
-} comp_t;
+int fontsize = 16;
+color_t default_fg, default_bg;
+int bar_height = 20;
// Global state, oh naur D:
comp_t comps[32];
@@ -77,3 +68,13 @@ void set_layout(char argv[MAX_ARGS][MAX_ARG_LEN], int argc) {
add_component(side, argv[i]);
}
}
+
+void set_var(char argv[MAX_ARGS][MAX_ARG_LEN], int argc) {
+ char *var = argv[1];
+ if (strcmp(var, "height")) {
+ bar_height = atoi(argv[2]);
+ }
+ if (strcmp(var, "fontsize")) {
+ fontsize = atoi(argv[2]);
+ }
+}
diff --git a/src/bardata.h b/src/bardata.h
index 0c4028b..a59c8b8 100644
--- a/src/bardata.h
+++ b/src/bardata.h
@@ -1,8 +1,27 @@
#ifndef BAR_H
#define BAR_H
#include "pipe.h"
+#include <inttypes.h>
+
+typedef uint32_t color_t;
+typedef enum {
+ SIDE_LEFT,
+ SIDE_CENTER,
+ SIDE_RIGHT,
+} comp_side_t;
+
+typedef struct {
+ char name[16];
+ char data[64];
+ color_t fg, bg;
+} comp_t;
+
+extern int fontsize;
+extern color_t default_fg, default_bg;
+extern int bar_height;
void new_component(char *name);
void set_layout(char argv[MAX_ARGS][MAX_ARG_LEN], int argc);
+void set_var(char argv[MAX_ARGS][MAX_ARG_LEN], int argc);
#endif
diff --git a/src/pipe.c b/src/pipe.c
index edce5de..997be2d 100644
--- a/src/pipe.c
+++ b/src/pipe.c
@@ -71,4 +71,7 @@ void make_change(char argv[MAX_ARGS][MAX_ARG_LEN], int argc) {
if (strcmp(cmd, "layout") == 0) {
set_layout(argv, argc);
}
+ if (strcmp(cmd, "set") == 0) {
+ set_var(argv, argc);
+ }
}