summaryrefslogtreecommitdiff
path: root/src/interface
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-07-24 14:38:18 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-07-24 14:38:18 (GMT)
commitda77cb809bf692794a70b680f24455f73ce7a396 (patch)
tree93ff18319944cd595be92eac581897a838ac77aa /src/interface
parentbc2e4ab23faa02164ba7e029c90868484184ec3b (diff)
downloadpowder-da77cb809bf692794a70b680f24455f73ce7a396.zip
powder-da77cb809bf692794a70b680f24455f73ce7a396.tar.gz
Inverted icon state
Diffstat (limited to 'src/interface')
-rw-r--r--src/interface/Button.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/interface/Button.cpp b/src/interface/Button.cpp
index b70d41e..e2af565 100644
--- a/src/interface/Button.cpp
+++ b/src/interface/Button.cpp
@@ -107,7 +107,19 @@ void Button::Draw(const Point& screenPos)
g->drawtext(Position.X+textPosition.X, Position.Y+textPosition.Y, buttonDisplayText, 180, 180, 180, 255);
}
if(Appearance.icon)
- g->draw_icon(Position.X+iconPosition.X, Position.Y+iconPosition.Y, Appearance.icon);
+ {
+ if(Enabled)
+ if(isButtonDown || (isTogglable && toggle))
+ {
+ g->draw_icon(Position.X+iconPosition.X, Position.Y+iconPosition.Y, Appearance.icon, 255, true);
+ }
+ else
+ {
+ g->draw_icon(Position.X+iconPosition.X, Position.Y+iconPosition.Y, Appearance.icon, 255);
+ }
+ else
+ g->draw_icon(Position.X+iconPosition.X, Position.Y+iconPosition.Y, Appearance.icon, 180);
+ }
}
void Button::OnMouseUp(int x, int y, unsigned int button)