bool GUIClippedRectangle::loadXMLClippedRectangleInfo(const TiXmlElement *element) { if(!element) return false; const TiXmlElement *absolutePriority = XMLArbiter::getChildElementByName(element, "Texture"); setVisibleBounds(XMLArbiter::analyzeBooleanAttr(element, "drawBounds", drawBounds)); enableBGColor(XMLArbiter::analyzeBooleanAttr(element, "drawBackground", drawBackground)); setClipSize(XMLArbiter::fillComponents1i(element, "clipSize", clipSize)); if(absolutePriority) texture.loadXMLSettings(absolutePriority); for(const TiXmlElement *child = element->FirstChildElement(); child; child = child->NextSiblingElement() ) { const char * value = child->Value(); if(!value) continue; if(!strcmp(value, "TextureRectangle")) setTextureRectangle(XMLArbiter::fillComponents4f(child, textureRectangle)); if(!strcmp(value, "BordersColor")) setBordersColor(XMLArbiter::fillComponents3f(child, bordersColor)); if(!strcmp(value, "BGColor")) setBGColor(XMLArbiter::fillComponents4f(child, bgColor)); } return true; }
bool GUITextBox::loadXMLSettings(const TiXmlElement* element) { if(!XMLArbiter::inspectElementInfo(element, "TextBox")) return Logger::writeErrorLog("Need a TextBox node in the xml file"); setBordersColor(XMLArbiter::fillComponents3f(XMLArbiter::getChildElementByName(element, "BordersColor"),bordersColor)); return GUIAlphaElement::loadXMLSettings(element); return false; }
GUIClippedRectangle::GUIClippedRectangle(int size) { setTextureRectangle(0,0,1,1); setBordersColor(0.0f, 0.9f, 0.0f); setClipSize(size); setBGColor(0.413f, 0.7f, 0.52f, 0.75f); drawBackground = false; drawBounds = false; }
GUIButton::GUIButton(const std::string &callback) : GUIAlphaElement(callback), GUIClippedRectangle() { setBordersColor(0.0f, 0.0f, 0.0f); setDimensions(40, 22); setPosition(0.5, 0.5); setColor(100, 150, 190); widgetType = WT_BUTTON; drawBackground = true; drawBounds = true; bounce = true; }
bool GUITextBox::loadXMLSettings(XMLElement *element) { if (!element || element->getName() != "TextBox") return Logger::writeErrorLog("Need a TextBox node in the xml file"); XMLElement *child = NULL, *subChild = NULL; if (child = element->getChildByName("BordersColor")) XMLElement::loadRX_GY_BZf(*child, bordersColor); setBordersColor(bordersColor); return GUIAlphaElement::loadXMLSettings(element); }
GUIButton::GUIButton(const char *cbs) : GUIAlphaElement(cbs), GUIClippedRectangle() { m_Translation=D3DXFROMWINEVECTOR3(0,0,0); setBordersColor(0.0f, 0.0f, 0.0f); setDimensions(40, 22); setPosition(0.5, 0.5); setColor(100, 150, 190); widgetType = BUTTON; drawBackground = true; drawBounds = true; bounce = true; }
GUITextBox::GUITextBox(const std::string &callback, const std::string &text) : GUIAlphaElement(callback) { setBordersColor(0.3f, 0.3f, 0.3f); setDimensions(80, 18); setPadding(2, 2); setColor(0.5f, 0.5f, 0.5f); label.setString(text); blinkerPosition = 2; blinkerTimer = 0.0f; blinkerOn = false; textStartIndex = 0; textEndIndex = 0; dimensions.y = GUIFontManager::getDefaultFont() ? GUIFontManager::getDefaultFont()->getFontObject()->getHeight() + padding.y : dimensions.y; widgetType = WT_TEXT_BOX; }
void GUITextBox::setBordersColor(const Tuple3f& color) { setBordersColor(color.x, color.y, color.z); }
void GUIClippedRectangle::setBordersColor(const Tuple3f& color) { setBordersColor(color.x, color.y, color.z); }