[PATCH 3/5] uxtheme: Support parsing more combobox parts and states.
Zhiyi Zhang
wine at gitlab.winehq.org
Mon Jun 20 22:10:59 CDT 2022
From: Zhiyi Zhang <zzhang at codeweavers.com>
Signed-off-by: Zhiyi Zhang <zzhang at codeweavers.com>
---
dlls/uxtheme/stylemap.c | 34 ++++++++++++++++++++++++++++++++++
include/vsstyle.h | 6 ++++++
2 files changed, 40 insertions(+)
diff --git a/dlls/uxtheme/stylemap.c b/dlls/uxtheme/stylemap.c
index 8597be2b40e..b5063f3a6ed 100644
--- a/dlls/uxtheme/stylemap.c
+++ b/dlls/uxtheme/stylemap.c
@@ -442,6 +442,40 @@ static const MSSTYLES_CLASS_MAP classCombobox[] = {
{CP_DROPDOWNBUTTON, CBXS_HOT, L"HOT"},
{CP_DROPDOWNBUTTON, CBXS_PRESSED, L"PRESSED"},
{CP_DROPDOWNBUTTON, CBXS_DISABLED, L"DISABLED"},
+ {CP_BACKGROUND, 0, L"BACKGROUND"},
+ {CP_TRANSPARENTBACKGROUND, 0, L"TRANSPARENTBACKGROUND"},
+ {CP_TRANSPARENTBACKGROUND, CBTBS_NORMAL, L"NORMAL"},
+ {CP_TRANSPARENTBACKGROUND, CBTBS_HOT, L"HOT"},
+ {CP_TRANSPARENTBACKGROUND, CBTBS_DISABLED, L"DISABLED"},
+ {CP_TRANSPARENTBACKGROUND, CBTBS_FOCUSED, L"FOCUSED"},
+ {CP_BORDER, 0, L"BORDER"},
+ {CP_BORDER, CBB_NORMAL, L"NORMAL"},
+ {CP_BORDER, CBB_HOT, L"HOT"},
+ {CP_BORDER, CBB_FOCUSED, L"FOCUSED"},
+ {CP_BORDER, CBB_DISABLED, L"DISABLED"},
+ {CP_READONLY, 0, L"READONLY"},
+ {CP_READONLY, CBRO_NORMAL, L"NORMAL"},
+ {CP_READONLY, CBRO_HOT, L"HOT"},
+ {CP_READONLY, CBRO_PRESSED, L"PRESSED"},
+ {CP_READONLY, CBRO_DISABLED, L"DISABLED"},
+ {CP_DROPDOWNBUTTONRIGHT, 0, L"DROPDOWNBUTTONRIGHT"},
+ {CP_DROPDOWNBUTTONRIGHT, CBXSR_NORMAL, L"NORMAL"},
+ {CP_DROPDOWNBUTTONRIGHT, CBXSR_HOT, L"HOT"},
+ {CP_DROPDOWNBUTTONRIGHT, CBXSR_PRESSED, L"PRESSED"},
+ {CP_DROPDOWNBUTTONRIGHT, CBXSR_DISABLED, L"DISABLED"},
+ {CP_DROPDOWNBUTTONLEFT, 0, L"DROPDOWNBUTTONLEFT"},
+ {CP_DROPDOWNBUTTONLEFT, CBXSL_NORMAL, L"NORMAL"},
+ {CP_DROPDOWNBUTTONLEFT, CBXSL_HOT, L"HOT"},
+ {CP_DROPDOWNBUTTONLEFT, CBXSL_PRESSED, L"PRESSED"},
+ {CP_DROPDOWNBUTTONLEFT, CBXSL_DISABLED, L"DISABLED"},
+ {CP_CUEBANNER, 0, L"CUEBANNER"},
+ {CP_CUEBANNER, CBCB_NORMAL, L"NORMAL"},
+ {CP_CUEBANNER, CBCB_HOT, L"HOT"},
+ {CP_CUEBANNER, CBCB_PRESSED, L"PRESSED"},
+ {CP_CUEBANNER, CBCB_DISABLED, L"DISABLED"},
+ {CP_DROPDOWNITEM, 0, L"DROPDOWNITEM"},
+ {CP_DROPDOWNITEM, CBDI_NORMAL, L"NORMAL"},
+ {CP_DROPDOWNITEM, CBDI_HIGHLIGHTED, L"HIGHLIGHTED"},
{0, 0, L""}
};
diff --git a/include/vsstyle.h b/include/vsstyle.h
index f5af8492aef..3075b4cdc08 100644
--- a/include/vsstyle.h
+++ b/include/vsstyle.h
@@ -168,6 +168,7 @@ enum COMBOBOXPARTS {
CP_DROPDOWNBUTTONRIGHT = 6,
CP_DROPDOWNBUTTONLEFT = 7,
CP_CUEBANNER = 8,
+ CP_DROPDOWNITEM = 9,
};
#define COMBOBOXSTYLEPARTS COMBOBOXPARTS;
@@ -221,6 +222,11 @@ enum CUEBANNERSTATES {
CBCB_DISABLED = 4,
};
+enum DROPDOWNITEMSTATES {
+ CBDI_NORMAL = 1,
+ CBDI_HIGHLIGHTED = 2,
+};
+
/* COMMUNICATIONSSTYLE class */
#if defined(_MSC_VER) || defined(__MINGW32__)
#define VSCLASS_COMMUNICATIONSSTYLE L"COMMUNICATIONSSTYLE"
--
GitLab
https://gitlab.winehq.org/wine/wine/-/merge_requests/287
More information about the wine-devel
mailing list