[PATCH] programs/winecfg: enable CSMT checkbox on Graphics tab
Donat Enikeev
donat at enikeev.net
Mon Apr 24 16:01:06 CDT 2017
Signed-off-by: Donat Enikeev <donat at enikeev.net>
---
programs/winecfg/resource.h | 2 ++
programs/winecfg/winecfg.rc | 7 +++++--
programs/winecfg/x11drvdlg.c | 18 ++++++++++++++++++
3 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/programs/winecfg/resource.h b/programs/winecfg/resource.h
index 0c0b038..55d13d0 100644
--- a/programs/winecfg/resource.h
+++ b/programs/winecfg/resource.h
@@ -131,6 +131,8 @@
#define IDC_RES_DPIEDIT 1108
#define IDC_RES_FONT_PREVIEW 1109
+#define IDC_ENABLE_CSMT 1110
+
/* applications tab */
#define IDC_APP_LISTVIEW 1200
#define IDC_APP_ADDAPP 1201
diff --git a/programs/winecfg/winecfg.rc b/programs/winecfg/winecfg.rc
index 72c3e1b..52d70e0 100644
--- a/programs/winecfg/winecfg.rc
+++ b/programs/winecfg/winecfg.rc
@@ -158,7 +158,7 @@ BEGIN
PUSHBUTTON "Add appli&cation...",IDC_APP_ADDAPP, 15,174,112,14
PUSHBUTTON "&Remove application",IDC_APP_REMOVEAPP, 133,174,112,14
LTEXT "&Windows Version:",IDC_STATIC,17,196,80,8
- COMBOBOX IDC_WINVER,100,194,145,56,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ COMBOBOX IDC_WINVER,100,194,145,56,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
END
IDD_GRAPHCFG DIALOG 0, 0, 260, 220
@@ -181,6 +181,9 @@ BEGIN
EDITTEXT IDC_RES_DPIEDIT,188,105,23,13,ES_NUMBER|WS_TABSTOP
LTEXT "#msgctxt#unit: dots/inch#dpi",IDC_STATIC,215,107,30,8
LTEXT "This is a sample text using 10 point Tahoma",IDC_RES_FONT_PREVIEW,15,124,230,49
+
+ GROUPBOX "CSMT",IDC_STATIC,8,186,244,32
+ CONTROL "Enable multi-threaded command stream in Direct3D",IDC_ENABLE_CSMT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,202,230,8
END
IDD_DLLCFG DIALOG 0, 0, 260, 220
@@ -196,7 +199,7 @@ BEGIN
LTEXT "Existing &overrides:",IDC_STATIC,16,86,100,8
LISTBOX IDC_DLLS_LIST,16,96,140,112,WS_BORDER | WS_TABSTOP | WS_VSCROLL
PUSHBUTTON "&Edit...",IDC_DLLS_EDITDLL,164,96,82,14
- PUSHBUTTON "&Remove",IDC_DLLS_REMOVEDLL,164,114,82,14
+ PUSHBUTTON "&Remove",IDC_DLLS_REMOVEDLL,164,114,82,14
END
IDD_LOADORDER DIALOG 80, 90, 160, 92
diff --git a/programs/winecfg/x11drvdlg.c b/programs/winecfg/x11drvdlg.c
index 9a14fb6..9cc3781 100644
--- a/programs/winecfg/x11drvdlg.c
+++ b/programs/winecfg/x11drvdlg.c
@@ -142,6 +142,13 @@ static void init_dialog(HWND dialog)
CheckDlgButton(dialog, IDC_ENABLE_DECORATED, BST_UNCHECKED);
HeapFree(GetProcessHeap(), 0, buf);
+ buf = get_reg_key(config_key, keypath("Direct3D"), "csmt", NULL);
+ if (buf && *buf==1)
+ CheckDlgButton(dialog, IDC_ENABLE_CSMT, BST_CHECKED);
+ else
+ CheckDlgButton(dialog, IDC_ENABLE_CSMT, BST_UNCHECKED);
+ HeapFree(GetProcessHeap(), 0, buf);
+
updating_ui = FALSE;
}
@@ -215,6 +222,16 @@ static void on_enable_managed_clicked(HWND dialog) {
}
}
+static void on_enable_csmt_clicked(HWND dialog) {
+ WINE_TRACE("\n");
+
+ if (IsDlgButtonChecked(dialog, IDC_ENABLE_CSMT) == BST_CHECKED) {
+ set_reg_key_dword(config_key, keypath("Direct3D"), "csmt", 1);
+ } else {
+ set_reg_key_dword(config_key, keypath("Direct3D"), "csmt", 0);
+ }
+}
+
static void on_enable_decorated_clicked(HWND dialog) {
WINE_TRACE("\n");
@@ -377,6 +394,7 @@ GraphDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
case IDC_ENABLE_DESKTOP: on_enable_desktop_clicked(hDlg); break;
case IDC_ENABLE_MANAGED: on_enable_managed_clicked(hDlg); break;
case IDC_ENABLE_DECORATED: on_enable_decorated_clicked(hDlg); break;
+ case IDC_ENABLE_CSMT: on_enable_csmt_clicked(hDlg); break;
case IDC_FULLSCREEN_GRAB: on_fullscreen_grab_clicked(hDlg); break;
}
break;
--
2.7.4
More information about the wine-patches
mailing list