From f2fbc4bbface72a15d2b1d25114135f1458148c4 Mon Sep 17 00:00:00 2001 From: speedie Date: Mon, 17 Apr 2023 14:14:58 +0200 Subject: [PATCH] add alpha int --- libs/colors.h | 34 +++++++++++++++++----------------- libs/schemes.c | 35 ++++++++++++++++++++++++++++++++++- options.h | 5 ++--- 3 files changed, 53 insertions(+), 21 deletions(-) diff --git a/libs/colors.h b/libs/colors.h index 171cae4..eb9c89f 100644 --- a/libs/colors.h +++ b/libs/colors.h @@ -1,21 +1,21 @@ // alpha array -static unsigned int alphas[][3] = { - // fg bg border - [SchemeLArrow] = { fgalpha, bgalpha, borderalpha }, - [SchemeRArrow] = { fgalpha, bgalpha, borderalpha }, - [SchemeItemNorm] = { fgalpha, bgalpha, borderalpha }, - [SchemeItemSel] = { fgalpha, bgalpha, borderalpha }, - [SchemeItemNormPri] = { fgalpha, bgalpha, borderalpha }, - [SchemeItemSelPri] = { fgalpha, bgalpha, borderalpha }, - [SchemeMenu] = { fgalpha, bgalpha, borderalpha }, - [SchemeInput] = { fgalpha, bgalpha, borderalpha }, - [SchemePrompt] = { fgalpha, bgalpha, borderalpha }, - [SchemeNormHighlight] = { fgalpha, bgalpha, borderalpha }, - [SchemeSelHighlight] = { fgalpha, bgalpha, borderalpha }, - [SchemeMode] = { fgalpha, bgalpha, borderalpha }, - [SchemeCaret] = { fgalpha, bgalpha, borderalpha }, - [SchemeNumber] = { fgalpha, bgalpha, borderalpha }, - [SchemeBorder] = { fgalpha, bgalpha, borderalpha }, +static unsigned int alphas[][2] = { + // fg bg + [SchemeLArrow] = { opaque, 200 }, + [SchemeRArrow] = { opaque, 200 }, + [SchemeItemNorm] = { opaque, 200 }, + [SchemeItemSel] = { opaque, 200 }, + [SchemeItemNormPri] = { opaque, 200 }, + [SchemeItemSelPri] = { opaque, 200 }, + [SchemeMenu] = { opaque, 200 }, + [SchemeInput] = { opaque, 200 }, + [SchemePrompt] = { opaque, 200 }, + [SchemeNormHighlight] = { opaque, 200 }, + [SchemeSelHighlight] = { opaque, 200 }, + [SchemeMode] = { opaque, 200 }, + [SchemeCaret] = { opaque, 200 }, + [SchemeNumber] = { opaque, 200 }, + [SchemeBorder] = { opaque, 200 }, }; // colorscheme array diff --git a/libs/schemes.c b/libs/schemes.c index 27685ad..3ad183f 100644 --- a/libs/schemes.c +++ b/libs/schemes.c @@ -7,10 +7,43 @@ sixd_to_8bit(int x) void init_appearance(void) { - int i, j; + int i, j, k; char cbuf[8]; + // set alpha + // TODO: allow these to be individually set, instead of all using fg/bgalpha + alphas[SchemeLArrow][ColFg] = fgalpha; + alphas[SchemeLArrow][ColBg] = bgalpha; + alphas[SchemeRArrow][ColFg] = fgalpha; + alphas[SchemeRArrow][ColBg] = bgalpha; + alphas[SchemeItemNorm][ColFg] = fgalpha; + alphas[SchemeItemNorm][ColBg] = bgalpha; + alphas[SchemeItemSel][ColFg] = fgalpha; + alphas[SchemeItemSel][ColBg] = bgalpha; + alphas[SchemeItemNormPri][ColFg] = fgalpha; + alphas[SchemeItemNormPri][ColBg] = bgalpha; + alphas[SchemeItemSelPri][ColFg] = fgalpha; + alphas[SchemeItemSelPri][ColBg] = bgalpha; + alphas[SchemeMenu][ColBg] = bgalpha; + alphas[SchemeMenu][ColFg] = fgalpha; // this one isn't actually used + alphas[SchemeInput][ColFg] = fgalpha; + alphas[SchemeInput][ColBg] = bgalpha; + alphas[SchemePrompt][ColFg] = fgalpha; + alphas[SchemePrompt][ColBg] = bgalpha; + alphas[SchemeNormHighlight][ColFg] = fgalpha; + alphas[SchemeNormHighlight][ColBg] = bgalpha; + alphas[SchemeSelHighlight][ColFg] = fgalpha; + alphas[SchemeSelHighlight][ColBg] = bgalpha; + alphas[SchemeCaret][ColFg] = fgalpha; + alphas[SchemeCaret][ColBg] = bgalpha; + alphas[SchemeNumber][ColFg] = fgalpha; + alphas[SchemeNumber][ColBg] = bgalpha; + alphas[SchemeMode][ColFg] = fgalpha; + alphas[SchemeMode][ColBg] = bgalpha; + alphas[SchemeBorder][ColFg] = fgalpha; // this one isn't actually used + alphas[SchemeBorder][ColBg] = bgalpha; + // create color schemes from array for (j = 0; j < SchemeLast; j++) { scheme[j] = drw_scm_create(drw, colors[j], alphas[j], 2); diff --git a/options.h b/options.h index 71403c8..960170a 100644 --- a/options.h +++ b/options.h @@ -178,9 +178,8 @@ static int pango_mode = 0; /* Enable support for pango markup f static int pango_password = 0; /* Enable support for pango markup for the password text */ /* Alpha options */ -#define fgalpha opaque /* Foreground alpha */ -#define bgalpha 200 /* Background alpha */ -#define borderalpha opaque /* Border alpha */ +static int fgalpha = opaque; +static int bgalpha = 200; /* Misc */ static int coloritems = 1; /* Color items or not */