Use the scrollbar arrow "pressed" variants

This commit is contained in:
Paul Chote
2011-05-20 22:49:36 +12:00
parent 75cee824be
commit e73248f55c
4 changed files with 14 additions and 11 deletions

View File

@@ -95,18 +95,18 @@ namespace OpenRA.Widgets
public override void DrawInner() public override void DrawInner()
{ {
var rb = RenderBounds; var rb = RenderBounds;
var disabled = IsDisabled();
if (Font == "Regular" && Bold) if (Font == "Regular" && Bold)
Font = "Bold"; Font = "Bold";
var font = Game.Renderer.Fonts[Font]; var font = Game.Renderer.Fonts[Font];
var text = GetText(); var text = GetText();
var s = font.Measure(text);
var stateOffset = (Depressed) ? new int2(VisualHeight, VisualHeight) : new int2(0, 0); var stateOffset = (Depressed) ? new int2(VisualHeight, VisualHeight) : new int2(0, 0);
DrawBackground(rb, IsDisabled(), Depressed, rb.Contains(Viewport.LastMousePos)); DrawBackground(rb, disabled, Depressed, rb.Contains(Viewport.LastMousePos));
font.DrawText(text, font.DrawText(text, new int2(rb.X + (UsableWidth - s.X)/ 2, rb.Y + (Bounds.Height - s.Y) / 2) + stateOffset,
new int2(rb.X + UsableWidth / 2, rb.Y + Bounds.Height / 2) disabled ? Color.Gray : Color.White);
- new int2(font.Measure(text).X / 2,
font.Measure(text).Y / 2) + stateOffset, IsDisabled() ? Color.Gray : Color.White);
} }
public override Widget Clone() { return new ButtonWidget(this); } public override Widget Clone() { return new ButtonWidget(this); }

View File

@@ -35,7 +35,7 @@ namespace OpenRA.Widgets
base.DrawInner(); base.DrawInner();
var stateOffset = (Depressed) ? new int2(VisualHeight, VisualHeight) : new int2(0, 0); var stateOffset = (Depressed) ? new int2(VisualHeight, VisualHeight) : new int2(0, 0);
var image = ChromeProvider.GetImage("scrollbar", "down_arrow"); var image = ChromeProvider.GetImage("scrollbar", IsDisabled() ? "down_pressed" : "down_arrow");
var rb = RenderBounds; var rb = RenderBounds;
WidgetUtils.DrawRGBA( image, WidgetUtils.DrawRGBA( image,

View File

@@ -88,13 +88,14 @@ namespace OpenRA.Widgets
ButtonWidget.DrawBackground(thumbRect, false, (Focused && thumbRect.Contains(Viewport.LastMousePos)), ButtonWidget.DrawBackground(thumbRect, false, (Focused && thumbRect.Contains(Viewport.LastMousePos)),
thumbRect.Contains(Viewport.LastMousePos)); thumbRect.Contains(Viewport.LastMousePos));
var upOffset = !UpPressed || thumbHeight == 0 || ListOffset >= 0 ? 4 : 4 + ButtonDepth; var upDisabled = thumbHeight == 0 || ListOffset >= 0;
var downOffset = !DownPressed || thumbHeight == 0 || ListOffset <= Bounds.Height - ContentHeight var downDisabled = thumbHeight == 0 || ListOffset <= Bounds.Height - ContentHeight;
? 4 : 4 + ButtonDepth; var upOffset = !UpPressed || upDisabled ? 4 : 4 + ButtonDepth;
var downOffset = !DownPressed || downDisabled ? 4 : 4 + ButtonDepth;
WidgetUtils.DrawRGBA(ChromeProvider.GetImage("scrollbar", "up_arrow"), WidgetUtils.DrawRGBA(ChromeProvider.GetImage("scrollbar", UpPressed || upDisabled ? "up_pressed" : "up_arrow"),
new float2(upButtonRect.Left + upOffset, upButtonRect.Top + upOffset)); new float2(upButtonRect.Left + upOffset, upButtonRect.Top + upOffset));
WidgetUtils.DrawRGBA(ChromeProvider.GetImage("scrollbar", "down_arrow"), WidgetUtils.DrawRGBA(ChromeProvider.GetImage("scrollbar", DownPressed || downDisabled ? "down_pressed" : "down_arrow"),
new float2(downButtonRect.Left + downOffset, downButtonRect.Top + downOffset)); new float2(downButtonRect.Left + downOffset, downButtonRect.Top + downOffset));
Game.Renderer.EnableScissor(backgroundRect.X + 1, backgroundRect.Y + 1, backgroundRect.Width - 2, backgroundRect.Height - 2); Game.Renderer.EnableScissor(backgroundRect.X + 1, backgroundRect.Y + 1, backgroundRect.Width - 2, backgroundRect.Height - 2);

View File

@@ -209,7 +209,9 @@ music: musicplayer.png
scrollbar: buttons.png scrollbar: buttons.png
down_arrow: 16,112,16,16 down_arrow: 16,112,16,16
down_pressed: 16,112,16,16
up_arrow: 32,112,16,16 up_arrow: 32,112,16,16
up_pressed: 32,112,16,16
# A copy of dialog3 # A copy of dialog3
progressbar-bg: dialog.png progressbar-bg: dialog.png