bool ThemeParser::parserCallback_text_color(ParserNode *node) { int red, green, blue; TextColor colorId = parseTextColorId(node->values["id"]); if (colorId == kTextColorMAX) return parserError("Error text color is not defined."); if (_palette.contains(node->values["color"])) getPaletteColor(node->values["color"], red, green, blue); else if (!parseIntegerKey(node->values["color"], 3, &red, &green, &blue)) return parserError("Error parsing color value for text color definition."); if (!_theme->addTextColor(colorId, red, green, blue)) return parserError("Error while adding text color information."); return true; }
bool ThemeParser::parserCallback_font(ParserNode *node) { int red, green, blue; if (resolutionCheck(node->values["resolution"]) == false) { node->ignore = true; return true; } if (_palette.contains(node->values["color"])) getPaletteColor(node->values["color"], red, green, blue); else if (!parseIntegerKey(node->values["color"].c_str(), 3, &red, &green, &blue)) return parserError("Error parsing color value for font definition."); TextData textDataId = parseTextDataId(node->values["id"]); if (!_theme->addFont(textDataId, node->values["file"], red, green, blue)) return parserError("Error loading Font in theme engine."); return true; }