diff options
| -rw-r--r-- | Makefile | 13 | ||||
| -rw-r--r-- | src/bardata.c | 40 |
2 files changed, 33 insertions, 20 deletions
@@ -2,6 +2,8 @@ CC=cc CFLAGS+=-std=c99 -pedantic -Wall -Wextra -O2 -I/usr/include/freetype2 LDFLAGS+=-lX11 -lXft +INSTALL=/usr/local/bin + TSAR_OUT=tsarbar HEADERS=src/pipe.h src/bardata.h @@ -24,11 +26,10 @@ run: $(TSAR_OUT) clean: rm $(TSAR_OUT) -install: $(SRC) - $(CC) $(SRC) -o $(TSAR_OUT) $(CFLAGS) $(LDFLAGS) - cp tsarbar /usr/bin/tsarbar - cp tsarc /usr/bin/tsarc +install: $(TSAR_OUT) + cp tsarbar $(INSTALL)/tsarbar + cp tsarc $(INSTALL)/tsarc uninstall: - rm /usr/bin/tsarbar - rm /usr/bin/tsarc + rm $(INSTALL)/tsarbar + rm $(INSTALL)/tsarc diff --git a/src/bardata.c b/src/bardata.c index 9742385..43e8443 100644 --- a/src/bardata.c +++ b/src/bardata.c @@ -25,8 +25,11 @@ comp_t *find_comp(char *name) { } } - strcpy(comps[comps_size++].name, name); - return &comps[comps_size - 1]; + comp_t *comp = &comps[comps_size++]; + strcpy(comp->name, name); + comp->fg = default_fg; + comp->bg = default_bg; + return comp; } void add_component(comp_side_t side, char *name) { @@ -48,6 +51,22 @@ void add_component(comp_side_t side, char *name) { } } +color_t parse_color(const char* col_str) { + color_t col = {0}; + + if (col_str[0] == '#') { + col_str++; + } + + col.pixel = strtol(col_str, NULL, 16); + col.color.red = (col.pixel >> 16) & 0xFF; + col.color.green = (col.pixel >> 8) & 0xFF; + col.color.blue = (col.pixel) & 0xFF; + col.color.alpha = 255; + + return col; +} + void set_component(char argv[MAX_ARGS][MAX_ARG_LEN], int argc) { comp_t* comp = find_comp(argv[1]); @@ -57,6 +76,11 @@ void set_component(char argv[MAX_ARGS][MAX_ARG_LEN], int argc) { i++; continue; } + if (strcmp(argv[i], "-fg") == 0) { + const char* col_str = argv[++i]; + comp->fg = parse_color(col_str); + continue; + } } } @@ -96,18 +120,6 @@ color_t parse_color(const char* col_str) { col.color.blue = (col.pixel) & 0xFF; col.color.alpha = 255; - printf( - "%lx %lx %lx %lx %d %d %d %d\n", - col.pixel, - col.pixel >> 16 & 0xFF, - col.pixel >> 8 & 0xFF, - col.pixel & 0xFF, - col.color.red, - col.color.green, - col.color.blue, - col.color.alpha - ); - return col; } |
