diff options
author | Dave Davenport <qball@gmpclient.org> | 2017-01-06 19:04:25 +0100 |
---|---|---|
committer | Dave Davenport <qball@gmpclient.org> | 2017-01-06 19:04:25 +0100 |
commit | 06c5f51e7dbaeee8723c3c2c8c753df37b860f85 (patch) | |
tree | 10b9c0fcceacaf55751f7cf5e3d7f629e2042c12 /lexer | |
parent | 8bc1831d172d17981449964e7f276096d94b28f1 (diff) |
Allow to set anchor position on normitor and anchor position on window.
Diffstat (limited to 'lexer')
-rw-r--r-- | lexer/theme-lexer.l | 47 | ||||
-rw-r--r-- | lexer/theme-parser.y | 6 |
2 files changed, 53 insertions, 0 deletions
diff --git a/lexer/theme-lexer.l b/lexer/theme-lexer.l index 5ace2d2a..e5995e25 100644 --- a/lexer/theme-lexer.l +++ b/lexer/theme-lexer.l @@ -31,6 +31,12 @@ PX (px) EM (em) PERCENT (\%) +CENTER "center" +NORTH "north" +SOUTH "south" +EAST "east" +WEST "west" + LS_DASH "dash" LS_SOLID "solid" @@ -213,6 +219,47 @@ if ( queue == NULL ){ yylval->colorval.alpha = 1.0; return T_COLOR; } + +<PROPERTIES>{CENTER} { + yylval->sval = WL_CENTER; + return T_POSITION; +} +<PROPERTIES>{EAST} { + yylval->sval = WL_EAST; + return T_POSITION; +} +<PROPERTIES>{WEST} { + yylval->sval = WL_WEST; + return T_POSITION; +} +<PROPERTIES>{SOUTH}{EAST} { + yylval->sval = WL_SOUTH_EAST; + return T_POSITION; +} +<PROPERTIES>{SOUTH}{WEST} { + yylval->sval = WL_SOUTH_WEST; + return T_POSITION; +} +<PROPERTIES>{SOUTH} { + yylval->sval = WL_SOUTH; + return T_POSITION; +} +<PROPERTIES>{NORTH}{EAST} { + yylval->sval = WL_NORTH_EAST; + return T_POSITION; +} +<PROPERTIES>{NORTH}{WEST} { + yylval->sval = WL_NORTH_WEST; + return T_POSITION; +} +<PROPERTIES>{NORTH} { + yylval->sval = WL_NORTH; + return T_POSITION; +} +<PROPERTIES>NORTH { + yylval->sval = WL_NORTH; + return T_POSITION; +} <INITIAL><<EOF>> { g_queue_free ( queue ); yyterminate(); diff --git a/lexer/theme-parser.y b/lexer/theme-parser.y index d520c299..81add24e 100644 --- a/lexer/theme-parser.y +++ b/lexer/theme-parser.y @@ -38,6 +38,7 @@ int yylex (YYSTYPE *, YYLTYPE *); %token <fval> T_DOUBLE %token <sval> T_STRING %token <sval> N_STRING +%token <sval> T_POSITION; %token <sval> NAME_ELEMENT %token <bval> T_BOOLEAN %token <colorval> T_COLOR @@ -177,6 +178,11 @@ property $$->name = $1; $$->value.padding = (Padding){ $3, $4, $5, $6 }; } +| pvalue PSEP T_POSITION PCLOSE{ + $$ = rofi_theme_property_create ( P_POSITION ); + $$->name = $1; + $$->value.i = $3; +} ; pvalue: N_STRING { $$ = $1; } |