[PATCH 4/5] uxtheme: Support parsing more scrollbar parts and states.

Zhiyi Zhang wine at gitlab.winehq.org
Tue Jun 21 21:59:41 CDT 2022


From: Zhiyi Zhang <zzhang at codeweavers.com>

Signed-off-by: Zhiyi Zhang <zzhang at codeweavers.com>
---
 dlls/uxtheme/stylemap.c | 27 +++++++++++++++++++++++++++
 include/vsstyle.h       |  1 +
 2 files changed, 28 insertions(+)

diff --git a/dlls/uxtheme/stylemap.c b/dlls/uxtheme/stylemap.c
index 2d8ea05bb5c..b8e9eb95e43 100644
--- a/dlls/uxtheme/stylemap.c
+++ b/dlls/uxtheme/stylemap.c
@@ -841,41 +841,68 @@ static const MSSTYLES_CLASS_MAP classScrollbar[] = {
     {SBP_ARROWBTN, ABS_RIGHTHOT, L"RIGHTHOT"},
     {SBP_ARROWBTN, ABS_RIGHTPRESSED, L"RIGHTPRESSED"},
     {SBP_ARROWBTN, ABS_RIGHTDISABLED, L"RIGHTDISABLED"},
+    {SBP_ARROWBTN, ABS_UPHOVER, L"UPHOVER"},
+    {SBP_ARROWBTN, ABS_DOWNHOVER, L"DOWNHOVER"},
+    {SBP_ARROWBTN, ABS_LEFTHOVER, L"LEFTHOVER"},
+    {SBP_ARROWBTN, ABS_RIGHTHOVER, L"RIGHTHOVER"},
     {SBP_THUMBBTNHORZ, 0, L"THUMBBTNHORZ"},
     {SBP_THUMBBTNHORZ, SCRBS_NORMAL, L"NORMAL"},
     {SBP_THUMBBTNHORZ, SCRBS_HOT, L"HOT"},
     {SBP_THUMBBTNHORZ, SCRBS_PRESSED, L"PRESSED"},
     {SBP_THUMBBTNHORZ, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_THUMBBTNHORZ, SCRBS_HOVER, L"HOVER"},
     {SBP_THUMBBTNVERT, 0, L"THUMBBTNVERT"},
     {SBP_THUMBBTNVERT, SCRBS_NORMAL, L"NORMAL"},
     {SBP_THUMBBTNVERT, SCRBS_HOT, L"HOT"},
     {SBP_THUMBBTNVERT, SCRBS_PRESSED, L"PRESSED"},
     {SBP_THUMBBTNVERT, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_THUMBBTNVERT, SCRBS_HOVER, L"HOVER"},
     {SBP_LOWERTRACKHORZ, 0, L"LOWERTRACKHORZ"},
     {SBP_LOWERTRACKHORZ, SCRBS_NORMAL, L"NORMAL"},
     {SBP_LOWERTRACKHORZ, SCRBS_HOT, L"HOT"},
     {SBP_LOWERTRACKHORZ, SCRBS_PRESSED, L"PRESSED"},
     {SBP_LOWERTRACKHORZ, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_LOWERTRACKHORZ, SCRBS_HOVER, L"HOVER"},
     {SBP_UPPERTRACKHORZ, 0, L"UPPERTRACKHORZ"},
     {SBP_UPPERTRACKHORZ, SCRBS_NORMAL, L"NORMAL"},
     {SBP_UPPERTRACKHORZ, SCRBS_HOT, L"HOT"},
     {SBP_UPPERTRACKHORZ, SCRBS_PRESSED, L"PRESSED"},
     {SBP_UPPERTRACKHORZ, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_UPPERTRACKHORZ, SCRBS_HOVER, L"HOVER"},
     {SBP_LOWERTRACKVERT, 0, L"LOWERTRACKVERT"},
     {SBP_LOWERTRACKVERT, SCRBS_NORMAL, L"NORMAL"},
     {SBP_LOWERTRACKVERT, SCRBS_HOT, L"HOT"},
     {SBP_LOWERTRACKVERT, SCRBS_PRESSED, L"PRESSED"},
     {SBP_LOWERTRACKVERT, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_LOWERTRACKVERT, SCRBS_HOVER, L"HOVER"},
     {SBP_UPPERTRACKVERT, 0, L"UPPERTRACKVERT"},
     {SBP_UPPERTRACKVERT, SCRBS_NORMAL, L"NORMAL"},
     {SBP_UPPERTRACKVERT, SCRBS_HOT, L"HOT"},
     {SBP_UPPERTRACKVERT, SCRBS_PRESSED, L"PRESSED"},
     {SBP_UPPERTRACKVERT, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_UPPERTRACKVERT, SCRBS_HOVER, L"HOVER"},
     {SBP_GRIPPERHORZ, 0, L"GRIPPERHORZ"},
+    {SBP_GRIPPERHORZ, SCRBS_NORMAL, L"NORMAL"},
+    {SBP_GRIPPERHORZ, SCRBS_HOT, L"HOT"},
+    {SBP_GRIPPERHORZ, SCRBS_PRESSED, L"PRESSED"},
+    {SBP_GRIPPERHORZ, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_GRIPPERHORZ, SCRBS_HOVER, L"HOVER"},
     {SBP_GRIPPERVERT, 0, L"GRIPPERVERT"},
+    {SBP_GRIPPERVERT, SCRBS_NORMAL, L"NORMAL"},
+    {SBP_GRIPPERVERT, SCRBS_HOT, L"HOT"},
+    {SBP_GRIPPERVERT, SCRBS_PRESSED, L"PRESSED"},
+    {SBP_GRIPPERVERT, SCRBS_DISABLED, L"DISABLED"},
+    {SBP_GRIPPERVERT, SCRBS_HOVER, L"HOVER"},
     {SBP_SIZEBOX, 0, L"SIZEBOX"},
     {SBP_SIZEBOX, SZB_RIGHTALIGN, L"RIGHTALIGN"},
     {SBP_SIZEBOX, SZB_LEFTALIGN, L"LEFTALIGN"},
+    {SBP_SIZEBOX, SZB_TOPRIGHTALIGN, L"TOPRIGHTALIGN"},
+    {SBP_SIZEBOX, SZB_TOPLEFTALIGN, L"TOPLEFTALIGN"},
+    {SBP_SIZEBOX, SZB_HALFBOTTOMRIGHTALIGN, L"HALFBOTTOMRIGHTALIGN"},
+    {SBP_SIZEBOX, SZB_HALFBOTTOMLEFTALIGN, L"HALFBOTTOMLEFTALIGN"},
+    {SBP_SIZEBOX, SZB_HALFTOPRIGHTALIGN, L"HALFTOPRIGHTALIGN"},
+    {SBP_SIZEBOX, SZB_HALFTOPLEFTALIGN, L"HALFTOPLEFTALIGN"},
+    {SBP_SIZEBOXBKGND, 0, L"SIZEBOXBKGND"},
     {0, 0, L""}
 };
 
diff --git a/include/vsstyle.h b/include/vsstyle.h
index 3075b4cdc08..b527c15a29a 100644
--- a/include/vsstyle.h
+++ b/include/vsstyle.h
@@ -1045,6 +1045,7 @@ enum SCROLLBARPARTS {
     SBP_GRIPPERHORZ = 8,
     SBP_GRIPPERVERT = 9,
     SBP_SIZEBOX = 10,
+    SBP_SIZEBOXBKGND = 11,
 };
 
 #define SCROLLBARSTYLEPARTS SCROLLBARPARTS;
-- 
GitLab


https://gitlab.winehq.org/wine/wine/-/merge_requests/297



More information about the wine-devel mailing list