void FrameWindow::init(xml::node& node) { Panel::init(node); xml::node setting = node("Title"); if(!setting.empty()) { m_text = setting.first_child().value(); } setting = node("Font"); if(!setting.empty()) { m_font = m_system.getWindowManager().loadFont(setting.first_child().value()); } setting = node("Formatting"); if(!setting.empty()) { m_format = StringToFormatType(setting.first_child().value()); } setting = node("CaptionColor"); if(!setting.empty()) { m_captionColor = StringToColor(setting.first_child().value()); } setting = node("Movable"); if(!setting.empty()) { m_movable = StringToBool(setting.first_child().value()); } setting = node("ClampToScreen"); if(!setting.empty()) { m_clampToScreen = StringToBool(setting.first_child().value()); } xml::node frame = node("Caption"); if(!frame.empty()) { std::string setname = frame["Imageset"].value(); m_imgset = m_system.getWindowManager().loadImageset(setname); if(m_imgset) { const Imageset& set = *m_imgset; m_captionBackImg = set[frame("Background")["Image"].value()]; m_captionLeftImg = set[frame("Left")["Image"].value()]; m_captionRightImg = set[frame("Right")["Image"].value()]; } } }
void Label::init(xml::node& node) { base_window::init(node); xml::node setting = node("Font"); if(!setting.empty()) { m_font = m_system.getWindowManager().loadFont(setting.first_child().value()); m_shadow_enabled = setting["shadow"].as_bool(); m_shadow_scale = StringToSize(setting["shadow_scale"].value()); m_shadow_offset = StringToPoint(setting["shadow_offset"].value()); } setting = node("Formatting"); if(!setting.empty()) { m_format = StringToFormatType(setting.first_child().value()); } setting = node("Spacing"); if(!setting.empty()) { m_spacing = (float)atof(setting.first_child().value()); if(m_font) m_font->setSpacing(m_spacing); } setting = node("Centred"); if(!setting.empty()) { m_centred = StringToBool(setting.first_child().value()); } setting = node("Text"); if(!setting.empty()) { m_text = setting.first_child().value(); } }