diff options
Diffstat (limited to 'source/Irrlicht/CGUIButton.cpp')
-rw-r--r-- | source/Irrlicht/CGUIButton.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/source/Irrlicht/CGUIButton.cpp b/source/Irrlicht/CGUIButton.cpp index 895e31a..95d2b37 100644 --- a/source/Irrlicht/CGUIButton.cpp +++ b/source/Irrlicht/CGUIButton.cpp @@ -327,7 +327,7 @@ void CGUIButton::draw() if (font)
font->draw(Text.c_str(), rect,
- OverrideColorEnabled ? OverrideColor : skin->getColor(isEnabled() ? EGDC_BUTTON_TEXT : EGDC_GRAY_TEXT),
+ getActiveColor(),
true, true, &AbsoluteClippingRect);
}
@@ -466,6 +466,16 @@ video::SColor CGUIButton::getOverrideColor() const return OverrideColor;
}
+irr::video::SColor CGUIButton::getActiveColor() const
+{
+ if ( OverrideColorEnabled )
+ return OverrideColor;
+ IGUISkin* skin = Environment->getSkin();
+ if (skin)
+ return OverrideColorEnabled ? OverrideColor : skin->getColor(isEnabled() ? EGDC_BUTTON_TEXT : EGDC_GRAY_TEXT);
+ return OverrideColor;
+}
+
void CGUIButton::enableOverrideColor(bool enable)
{
OverrideColorEnabled = enable;
|