mirror of
https://github.com/vcmi/vcmi.git
synced 2025-07-03 00:46:55 +02:00
code review
This commit is contained in:
@ -56,6 +56,8 @@ InterfaceObjectConfigurable::InterfaceObjectConfigurable(int used, Point offset)
|
||||
REGISTER_BUILDER("layout", &InterfaceObjectConfigurable::buildLayout);
|
||||
REGISTER_BUILDER("comboBox", &InterfaceObjectConfigurable::buildComboBox);
|
||||
REGISTER_BUILDER("textInput", &InterfaceObjectConfigurable::buildTextInput);
|
||||
REGISTER_BUILDER("transparentFilledRectangle", &InterfaceObjectConfigurable::buildTransparentFilledRectangle);
|
||||
REGISTER_BUILDER("textBox", &InterfaceObjectConfigurable::buildTextBox);
|
||||
}
|
||||
|
||||
void InterfaceObjectConfigurable::registerBuilder(const std::string & type, BuilderFunction f)
|
||||
@ -684,6 +686,33 @@ std::shared_ptr<CShowableAnim> InterfaceObjectConfigurable::buildAnimation(const
|
||||
return anim;
|
||||
}
|
||||
|
||||
std::shared_ptr<TransparentFilledRectangle> InterfaceObjectConfigurable::buildTransparentFilledRectangle(const JsonNode & config) const
|
||||
{
|
||||
logGlobal->debug("Building widget TransparentFilledRectangle");
|
||||
|
||||
auto rect = readRect(config["rect"]);
|
||||
auto color = readColor(config["color"]);
|
||||
if(!config["colorLine"].isNull())
|
||||
{
|
||||
auto colorLine = readColor(config["colorLine"]);
|
||||
return std::make_shared<TransparentFilledRectangle>(rect, color, colorLine);
|
||||
}
|
||||
return std::make_shared<TransparentFilledRectangle>(rect, color);
|
||||
}
|
||||
|
||||
std::shared_ptr<CTextBox> InterfaceObjectConfigurable::buildTextBox(const JsonNode & config) const
|
||||
{
|
||||
logGlobal->debug("Building widget CTextBox");
|
||||
|
||||
auto rect = readRect(config["rect"]);
|
||||
auto font = readFont(config["font"]);
|
||||
auto alignment = readTextAlignment(config["alignment"]);
|
||||
auto color = readColor(config["color"]);
|
||||
auto text = readText(config["text"]);
|
||||
|
||||
return std::make_shared<CTextBox>(text, rect, 0, font, alignment, color);
|
||||
}
|
||||
|
||||
std::shared_ptr<CIntObject> InterfaceObjectConfigurable::buildWidget(JsonNode config) const
|
||||
{
|
||||
assert(!config.isNull());
|
||||
|
Reference in New Issue
Block a user