diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-22 16:13:43 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-22 16:13:43 (GMT) |
| commit | e38fd405af5f07667203c6f584a5cdb00ed20ca2 (patch) | |
| tree | f5630c0e43cb848bb36a29c0d20599dcc324161c /src/interface/Button.cpp | |
| parent | 553cf6552070aae93e1db031b57afdc8c9ba19e0 (diff) | |
| download | powder-e38fd405af5f07667203c6f584a5cdb00ed20ca2.zip powder-e38fd405af5f07667203c6f584a5cdb00ed20ca2.tar.gz | |
Correct quirks with drawrect and fillrect, change UI components accordingly, shorten save name in save button
Diffstat (limited to 'src/interface/Button.cpp')
| -rw-r--r-- | src/interface/Button.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/interface/Button.cpp b/src/interface/Button.cpp index 5444cdc..3bf302b 100644 --- a/src/interface/Button.cpp +++ b/src/interface/Button.cpp @@ -45,6 +45,8 @@ void Button::TextPosition() buttonDisplayText += "..."; } } + + // Values 3 and 10 are for vertical padding of 3 pixels, middle uses 7 as that's the height of a capital switch(textVAlign) { case AlignTop: @@ -54,7 +56,7 @@ void Button::TextPosition() textPosition.Y = (Size.Y-10)/2; break; case AlignBottom: - textPosition.Y = Size.Y-12; + textPosition.Y = Size.Y-10; break; } @@ -131,20 +133,20 @@ void Button::Draw(const Point& screenPos) { if(isButtonDown || (isTogglable && toggle)) { - g->fillrect(Position.X-1, Position.Y-1, Size.X+2, Size.Y+2, activeBackground.Red, activeBackground.Green, activeBackground.Blue, 255); + g->fillrect(Position.X+1, Position.Y+1, Size.X-2, Size.Y-2, activeBackground.Red, activeBackground.Green, activeBackground.Blue, 255); g->drawrect(Position.X, Position.Y, Size.X, Size.Y, activeBorder.Red, activeBorder.Green, activeBorder.Blue, 255); g->drawtext(Position.X+textPosition.X, Position.Y+textPosition.Y+1, buttonDisplayText, activeText.Red, activeText.Green, activeText.Blue, 255); } else { - g->fillrect(Position.X, Position.Y, Size.X, Size.Y, background.Red, background.Green, background.Blue, 255); + g->fillrect(Position.X+1, Position.Y+1, Size.X-2, Size.Y-2, background.Red, background.Green, background.Blue, 255); g->drawrect(Position.X, Position.Y, Size.X, Size.Y, border.Red, border.Green, border.Blue, 255); g->drawtext(Position.X+textPosition.X, Position.Y+textPosition.Y+1, buttonDisplayText, text.Red, text.Green, text.Blue, 255); } } else { - g->fillrect(Position.X, Position.Y, Size.X, Size.Y, background.Red, background.Green, background.Blue, 180); + g->fillrect(Position.X+1, Position.Y+1, Size.X-2, Size.Y-2, background.Red, background.Green, background.Blue, 180); g->drawrect(Position.X, Position.Y, Size.X, Size.Y, 180, 180, 180, 255); g->drawtext(Position.X+textPosition.X, Position.Y+textPosition.Y+1, buttonDisplayText, 180, 180, 180, 255); } |
