Allow custom ScrollPanel button styles.

This commit is contained in:
Paul Chote
2014-10-13 17:21:19 +13:00
parent d117faa48d
commit 0b875e2ca2
5 changed files with 194 additions and 144 deletions

View File

@@ -34,6 +34,7 @@ namespace OpenRA.Widgets
public int ItemSpacing = 2;
public int ButtonDepth = ChromeMetrics.Get<int>("ButtonDepth");
public string Background = "scrollpanel-bg";
public string Button = "scrollpanel-button";
public int ContentHeight;
public ILayout Layout;
public int MinimumThumbSize = 10;
@@ -140,12 +141,12 @@ namespace OpenRA.Widgets
var thumbHover = Ui.MouseOverWidget == this && thumbRect.Contains(Viewport.LastMousePos);
WidgetUtils.DrawPanel(Background, backgroundRect);
WidgetUtils.DrawPanel("scrollpanel-bg", scrollbarRect);
ButtonWidget.DrawBackground("button", upButtonRect, UpDisabled, UpPressed, upHover, false);
ButtonWidget.DrawBackground("button", downButtonRect, DownDisabled, DownPressed, downHover, false);
WidgetUtils.DrawPanel(Background, scrollbarRect);
ButtonWidget.DrawBackground(Button, upButtonRect, UpDisabled, UpPressed, upHover, false);
ButtonWidget.DrawBackground(Button, downButtonRect, DownDisabled, DownPressed, downHover, false);
if (thumbHeight > 0)
ButtonWidget.DrawBackground("scrollthumb", thumbRect, false, HasMouseFocus && thumbHover, thumbHover, false);
ButtonWidget.DrawBackground(Button, thumbRect, false, HasMouseFocus && thumbHover, thumbHover, false);
var upOffset = !UpPressed || UpDisabled ? 4 : 4 + ButtonDepth;
var downOffset = !DownPressed || DownDisabled ? 4 : 4 + ButtonDepth;

View File

@@ -98,50 +98,6 @@ button-highlighted-disabled: chrome.png
corner-bl: 288,191,1,1
corner-br: 319,191,1,1
scrollthumb: chrome.png
background: 2,194,60,60
border-r: 62,194,2,60
border-l: 0,194,2,60
border-b: 2,254,60,2
border-t: 2,192,60,2
corner-tl: 0,192,2,2
corner-tr: 62,192,2,2
corner-bl: 0,254,2,2
corner-br: 62,254,2,2
scrollthumb-hover: chrome.png
background: 2,130,60,60
border-r: 62,130,2,60
border-l: 0,130,2,60
border-b: 2,190,60,2
border-t: 2,128,60,2
corner-tl: 0,128,2,2
corner-tr: 62,128,2,2
corner-bl: 0,190,2,2
corner-br: 62,190,2,2
scrollthumb-disabled: chrome.png
background: 66,130,60,60
border-r: 126,130,2,60
border-l: 64,130,2,60
border-b: 66,190,60,2
border-t: 66,128,60,2
corner-tl: 64,128,2,2
corner-tr: 126,128,2,2
corner-bl: 64,190,2,2
corner-br: 126,190,2,2
scrollthumb-pressed: chrome.png
background: 66,194,60,60
border-r: 126,194,2,60
border-l: 64,194,2,60
border-b: 66,254,60,2
border-t: 66,192,60,2
corner-tl: 64,192,2,2
corner-tr: 126,192,2,2
corner-bl: 64,254,2,2
corner-br: 126,254,2,2
# A copy of button
textfield: chrome.png
background: 2,194,60,60
@@ -227,6 +183,50 @@ scrollpanel-bg: chrome.png
corner-bl: 64,126,2,2
corner-br: 126,126,2,2
scrollpanel-button: chrome.png
background: 2,194,60,60
border-r: 62,194,2,60
border-l: 0,194,2,60
border-b: 2,254,60,2
border-t: 2,192,60,2
corner-tl: 0,192,2,2
corner-tr: 62,192,2,2
corner-bl: 0,254,2,2
corner-br: 62,254,2,2
scrollpanel-button-hover: chrome.png
background: 2,130,60,60
border-r: 62,130,2,60
border-l: 0,130,2,60
border-b: 2,190,60,2
border-t: 2,128,60,2
corner-tl: 0,128,2,2
corner-tr: 62,128,2,2
corner-bl: 0,190,2,2
corner-br: 62,190,2,2
scrollpanel-button-disabled: chrome.png
background: 66,130,60,60
border-r: 126,130,2,60
border-l: 64,130,2,60
border-b: 66,190,60,2
border-t: 66,128,60,2
corner-tl: 64,128,2,2
corner-tr: 126,128,2,2
corner-bl: 64,190,2,2
corner-br: 126,190,2,2
scrollpanel-button-pressed: chrome.png
background: 66,194,60,60
border-r: 126,194,2,60
border-l: 64,194,2,60
border-b: 66,254,60,2
border-t: 66,192,60,2
corner-tl: 64,192,2,2
corner-tr: 126,192,2,2
corner-bl: 64,254,2,2
corner-br: 126,254,2,2
# A copy of button-hover
scrollitem-hover: chrome.png
background: 2,130,60,60

View File

@@ -384,55 +384,7 @@ button-highlighted-disabled: dialog.png
corner-tr: 639,0,1,1
corner-bl: 768,127,1,1
corner-br: 639,127,1,1
# A copy of dialog2 (normal button)
scrollthumb: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of button-hover
scrollthumb-hover: dialog.png
background: 513,129,126,126
border-r: 639,129,1,126
border-l: 512,129,1,126
border-b: 513,255,126,1
border-t: 513,128,126,1
corner-tl: 512,128,1,1
corner-tr: 639,128,1,1
corner-bl: 512,255,1,1
corner-br: 639,255,1,1
# A copy of dialog3 (pressed button)
scrollthumb-pressed: dialog.png
background: 641,1,126,126
border-r: 767,1,1,126
border-l: 640,1,1,126
border-b: 641,127,126,1
border-t: 641,0,126,1
corner-tl: 640,0,1,1
corner-tr: 767,0,1,1
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollthumb-disabled: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of dialog3 (pressed button)
textfield: dialog.png
background: 641,1,126,126
@@ -493,6 +445,54 @@ scrollpanel-bg: dialog.png
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollpanel-button: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of button-hover
scrollpanel-button-hover: dialog.png
background: 513,129,126,126
border-r: 639,129,1,126
border-l: 512,129,1,126
border-b: 513,255,126,1
border-t: 513,128,126,1
corner-tl: 512,128,1,1
corner-tr: 639,128,1,1
corner-bl: 512,255,1,1
corner-br: 639,255,1,1
# A copy of dialog3 (pressed button)
scrollpanel-button-pressed: dialog.png
background: 641,1,126,126
border-r: 767,1,1,126
border-l: 640,1,1,126
border-b: 641,127,126,1
border-t: 641,0,126,1
corner-tl: 640,0,1,1
corner-tr: 767,0,1,1
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollpanel-button-disabled: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
slider: dialog.png
tick: 512,1,2,4

View File

@@ -483,6 +483,55 @@ scrollpanel-bg: dialog.png
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollpanel-button: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of button-hover
scrollpanel-button-hover: dialog.png
background: 513,129,126,126
border-r: 639,129,1,126
border-l: 512,129,1,126
border-b: 513,255,126,1
border-t: 513,128,126,1
corner-tl: 512,128,1,1
corner-tr: 639,128,1,1
corner-bl: 512,255,1,1
corner-br: 639,255,1,1
# A copy of dialog3 (pressed button)
scrollpanel-button-pressed: dialog.png
background: 641,1,126,126
border-r: 767,1,1,126
border-l: 640,1,1,126
border-b: 641,127,126,1
border-t: 641,0,126,1
corner-tl: 640,0,1,1
corner-tr: 767,0,1,1
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollpanel-button-disabled: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
slider: dialog.png
tick: 512,1,2,4

View File

@@ -397,54 +397,6 @@ newsbutton-pressed: dialog.png
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollthumb: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of button-hover
scrollthumb-hover: dialog.png
background: 513,129,126,126
border-r: 639,129,1,126
border-l: 512,129,1,126
border-b: 513,255,126,1
border-t: 513,128,126,1
corner-tl: 512,128,1,1
corner-tr: 639,128,1,1
corner-bl: 512,255,1,1
corner-br: 639,255,1,1
# A copy of dialog3 (pressed button)
scrollthumb-pressed: dialog.png
background: 641,1,126,126
border-r: 767,1,1,126
border-l: 640,1,1,126
border-b: 641,127,126,1
border-t: 641,0,126,1
corner-tl: 640,0,1,1
corner-tr: 767,0,1,1
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollthumb-disabled: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of dialog3 (pressed button)
textfield: dialog.png
background: 641,1,126,126
@@ -505,6 +457,54 @@ scrollpanel-bg: dialog.png
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollpanel-button: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
# A copy of button-hover
scrollpanel-button-hover: dialog.png
background: 513,129,126,126
border-r: 639,129,1,126
border-l: 512,129,1,126
border-b: 513,255,126,1
border-t: 513,128,126,1
corner-tl: 512,128,1,1
corner-tr: 639,128,1,1
corner-bl: 512,255,1,1
corner-br: 639,255,1,1
# A copy of dialog3 (pressed button)
scrollpanel-button-pressed: dialog.png
background: 641,1,126,126
border-r: 767,1,1,126
border-l: 640,1,1,126
border-b: 641,127,126,1
border-t: 641,0,126,1
corner-tl: 640,0,1,1
corner-tr: 767,0,1,1
corner-bl: 640,127,1,1
corner-br: 767,127,1,1
# A copy of dialog2 (normal button)
scrollpanel-button-disabled: dialog.png
background: 513,1,126,126
border-r: 639,1,1,126
border-l: 512,1,1,126
border-b: 513,127,126,1
border-t: 513,0,126,1
corner-tl: 512,0,1,1
corner-tr: 639,0,1,1
corner-bl: 512,127,1,1
corner-br: 639,127,1,1
slider: dialog.png
tick: 512,1,1,4