void WidgetCheckBox::load(const Aurora::GFF3Struct &gff) { KotORWidget::load(gff); Border border = createBorder(gff); Graphics::Aurora::TextureHandle texture = TextureMan.get(border.fill); float squareLength = _quad->getHeight(); float _quadPosCorrect = (squareLength - (texture.getTexture().getHeight() * 0.625f)) / 2; float x, y, z; if (_quad) { _quad->getPosition(x, y, z); _quad->setPosition(x + _quadPosCorrect, y + _quadPosCorrect, z); _quad->setHeight(texture.getTexture().getHeight() * 0.625f); _quad->setWidth(texture.getTexture().getWidth() * 0.625f); } if (_text) { _text->getPosition(x, y, z); _text->setPosition(x + squareLength, y, z); _text->setSize(_text->getWidth() - squareLength, _text->getHeight()); } if (getTextHighlightableComponent() != 0) { setTextHighlighting(getTextHighlightableComponent()); } if (getQuadHighlightableComponent() != 0) { setQuadHighlighting(getQuadHighlightableComponent()); } }
void WidgetButton::load(const Aurora::GFFStruct &gff) { KotORWidget::load(gff); if (getTextHighlightableComponent() != 0) { setDefaultHighlighting(getTextHighlightableComponent()); } if (getQuadHighlightableComponent() != 0) { setDefaultHighlighting(getQuadHighlightableComponent()); } }
void WidgetCheckBox::leave() { SoundMan.stopChannel(_sound); if (getTextHighlightableComponent() && getTextHighlightableComponent()->isHighlightable()) { _text->setHighlighted(false); _text->setColor(_unselectedR, _unselectedG, _unselectedB, _unselectedA); } if (getQuadHighlightableComponent() && getQuadHighlightableComponent()->isHighlightable()) { getQuadHighlightableComponent()->setHighlighted(false); _quad->setColor(_unselectedR, _unselectedG, _unselectedB, _unselectedA); } }
void WidgetCheckBox::load(const Aurora::GFF3Struct &gff) { gff.getVector("COLOR", _r, _g, _b); _a = gff.getDouble("ALPHA", 1.0); Extend extend = createExtend(gff); _width = extend.w; _height = extend.h; Widget::setPosition(extend.x, extend.y, 0.0f); Border border = createBorder(gff); if (!border.fill.empty()) { _quad = new Graphics::Aurora::HighlightableGUIQuad(border.fill, 0.0f, 0.0f, extend.h * .62, extend.h * .62); } else { _quad = new Graphics::Aurora::GUIQuad(border.fill, 0.0f, 0.0f, extend.h * .62, extend.h * .62); } _quad->setPosition(extend.x, extend.y, 0.0f); _quad->setTag(getTag()); _quad->setClickable(true); if (border.fill.empty()) _quad->setColor(0.0f, 0.0f, 0.0f, 0.0f); Text text = createText(gff); if (!text.text.empty() && !text.font.empty()) { _text = new Graphics::Aurora::HighlightableText(FontMan.get(text.font), text.text, text.r, text.g, text.b, 1.0f); const float hspan = extend.w - _text->getWidth(); const float vspan = extend.h - _text->getHeight(); const float x = extend.x + text.halign * hspan; const float y = extend.y + text.valign * vspan; _text->setPosition(x, y, -1.0f); _text->setTag(getTag()); _text->setClickable(true); } if (getTextHighlightableComponent() != 0) { setDefaultHighlighting(getTextHighlightableComponent()); } if (getQuadHighlightableComponent() != 0) { setDefaultHighlighting(getQuadHighlightableComponent()); } }
void WidgetCheckBox::enter() { float r, g, b, a; _sound = playSound("gui_actscroll", Sound::kSoundTypeSFX); if (getTextHighlightableComponent() && getTextHighlightableComponent()->isHighlightable()) { _text->getColor(_unselectedR, _unselectedG, _unselectedB, _unselectedA); _text->getHighlightedLowerBound(r, g, b, a); _text->setColor(r, g, b, a); _text->setHighlighted(true); } if (getQuadHighlightableComponent() && getQuadHighlightableComponent()->isHighlightable()) { _quad->getColor(_unselectedR, _unselectedG, _unselectedB, _unselectedA); getQuadHighlightableComponent()->getHighlightedLowerBound(r, g, b, a); _quad->setColor(r, g, b, a); getQuadHighlightableComponent()->setHighlighted(true); } }
void WidgetLabel::enableHighlight() { Graphics::Aurora::Highlightable *highlightable = getTextHighlightableComponent(); if (highlightable) { highlightable->setHighlightable(true); highlightable->setHighlightDelta(0, 0, 0, .05); highlightable->setHighlightLowerBound(1, 1, 0, .2); highlightable->setHighlightUpperBound(1, 1, 0, 1); } }
void WidgetButton::load(const Aurora::GFF3Struct &gff) { Widget::load(gff); Graphics::Aurora::Highlightable *highlightable = getTextHighlightableComponent(); if (highlightable) setDefaultHighlighting(highlightable); highlightable = getQuadHighlightableComponent(); if (highlightable) setDefaultHighlighting(highlightable); }