mirror of
https://github.com/labwc/labwc.git
synced 2025-11-04 13:30:07 -05:00
rcxml: allow <theme><font> without place="" attribute
The construct below will set the font for all supported places. Currently
that's only ActiveWindow, but is likely to include InactiveWindow,
MenuHeader, MenuItem and OnScreenDisplay at some point.
<theme>
<font>
<name></name>
<size></size>
</font>
</theme>
This commit is contained in:
parent
ec2c67338a
commit
2e4f931469
2 changed files with 25 additions and 9 deletions
|
|
@ -80,14 +80,30 @@ fill_font(char *nodename, char *content, enum font_place place)
|
|||
}
|
||||
string_truncate_at_pattern(nodename, ".font.theme");
|
||||
|
||||
switch (place) {
|
||||
case FONT_PLACE_UNKNOWN:
|
||||
/*
|
||||
* If <theme><font></font></theme> is used without a place=""
|
||||
* attribute, we set all font variables
|
||||
*/
|
||||
if (!strcmp(nodename, "name")) {
|
||||
rc.font_name_activewindow = strdup(content);
|
||||
} else if (!strcmp(nodename, "size")) {
|
||||
rc.font_size_activewindow = atoi(content);
|
||||
}
|
||||
break;
|
||||
case FONT_PLACE_ACTIVEWINDOW:
|
||||
if (!strcmp(nodename, "name")) {
|
||||
rc.font_name_activewindow = strdup(content);
|
||||
} else if (!strcmp(nodename, "size")) {
|
||||
rc.font_size_activewindow = atoi(content);
|
||||
}
|
||||
break;
|
||||
|
||||
/* TODO: implement for all font places */
|
||||
if (place != FONT_PLACE_ACTIVEWINDOW) {
|
||||
return;
|
||||
}
|
||||
if (!strcmp(nodename, "name")) {
|
||||
rc.font_name_activewindow = strdup(content);
|
||||
} else if (!strcmp(nodename, "size")) {
|
||||
rc.font_size_activewindow = atoi(content);
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -108,7 +124,7 @@ enum_font_place(const char *place)
|
|||
static void
|
||||
entry(xmlNode *node, char *nodename, char *content)
|
||||
{
|
||||
/* current <theme><font place=""></theme> */
|
||||
/* current <theme><font place=""></font></theme> */
|
||||
static enum font_place font_place = FONT_PLACE_UNKNOWN;
|
||||
|
||||
if (!nodename) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue