aboutsummaryrefslogtreecommitdiff
path: root/gui/ThemeEngine.h
diff options
context:
space:
mode:
authorBastien Bouclet2019-11-13 21:09:21 +0100
committerBastien Bouclet2019-11-24 14:06:25 +0100
commit2c812a6b7a0b24b9012379118867fb4f64f32c14 (patch)
tree6f4225127305dbdae8f3a0dc7dfe61e51af51b1a /gui/ThemeEngine.h
parent3db6aed4e474d5b16639ee4958d1cd13504d12fb (diff)
downloadscummvm-rg350-2c812a6b7a0b24b9012379118867fb4f64f32c14.tar.gz
scummvm-rg350-2c812a6b7a0b24b9012379118867fb4f64f32c14.tar.bz2
scummvm-rg350-2c812a6b7a0b24b9012379118867fb4f64f32c14.zip
GUI: Add DropdownButtonWidget and use it in the launcher for mass add
DropdownButtonWidget is a button split in two parts vertically. Clicking the left part triggers a default action. Clicking the right part shows a list of other actions the user can choose from. Using this widget on the launcher lets 'Mass add' be a secondary action of the 'Add' button, removing the necessity of pressing the shift key to access the feature.
Diffstat (limited to 'gui/ThemeEngine.h')
-rw-r--r--gui/ThemeEngine.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/gui/ThemeEngine.h b/gui/ThemeEngine.h
index 1c35b1ea03..827ec197f9 100644
--- a/gui/ThemeEngine.h
+++ b/gui/ThemeEngine.h
@@ -80,6 +80,13 @@ enum DrawData {
kDDButtonDisabled,
kDDButtonPressed,
+ kDDDropDownButtonIdle,
+ kDDDropDownButtonHoverLeft,
+ kDDDropDownButtonHoverRight,
+ kDDDropDownButtonDisabled,
+ kDDDropDownButtonPressedLeft,
+ kDDDropDownButtonPressedRight,
+
kDDSliderFull,
kDDSliderHover,
kDDSliderDisabled,
@@ -400,6 +407,9 @@ public:
void drawButton(const Common::Rect &r, const Common::String &str, WidgetStateInfo state = kStateEnabled,
uint16 hints = 0);
+ void drawDropDownButton(const Common::Rect &r, uint32 dropdownWidth, const Common::String &str,
+ WidgetStateInfo buttonState, bool inButton, bool inDropdown);
+
void drawSurface(const Common::Point &p, const Graphics::Surface &surface, bool themeTrans = false);
void drawSlider(const Common::Rect &r, int width, WidgetStateInfo state = kStateEnabled);