winecfg: Add unmanaged windows configuration.
This commit is contained in:
parent
87ab6e6cd8
commit
e998da5e07
|
@ -65,28 +65,31 @@ BEGIN
|
|||
LTEXT "Screen color depth: ",IDC_STATIC,8,10,70,30
|
||||
COMBOBOX IDC_SCREEN_DEPTH,80,8,170,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
|
||||
GROUPBOX " Window settings ",IDC_STATIC,8,25,244,110
|
||||
GROUPBOX " Window settings ",IDC_STATIC,8,25,244,180
|
||||
|
||||
CONTROL "Allow DirectX apps to stop the mouse leaving their window",IDC_DX_MOUSE_GRAB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,35,230,8
|
||||
CONTROL "Enable desktop double buffering",IDC_DOUBLE_BUFFER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,45,230,8
|
||||
LTEXT "If windows are managed by your window manager, then they will have the standard borders, they will respect your virtual desktop and appear in your window list. \n\nIf the windows are unmanaged, they will be disconnected from your window manager. This will mean the windows do not integrate as closely with your desktop, but the emulation will be more accurate so it can help some programs to work better.",
|
||||
IDC_STATIC,15,58,228,80
|
||||
CONTROL "Allow the window manager to control the windows",IDC_ENABLE_MANAGED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,132,230,8
|
||||
|
||||
/* FIXME: the wording of this explanation could be a lot better */
|
||||
LTEXT "You can choose to emulate a windows desktop, where all the windows are confined to one 'virtual screen', or you can have the windows placed on your standard desktop.",
|
||||
IDC_STATIC,15,73,228,28
|
||||
LTEXT "Desktop size:",IDC_DESKTOP_SIZE,15,115,44,8,WS_DISABLED
|
||||
LTEXT "X",IDC_DESKTOP_BY,108,115,8,8,WS_DISABLED
|
||||
IDC_STATIC,15,146,228,28
|
||||
LTEXT "Desktop size:",IDC_DESKTOP_SIZE,15,188,44,8,WS_DISABLED
|
||||
LTEXT "X",IDC_DESKTOP_BY,108,188,8,8,WS_DISABLED
|
||||
CONTROL "Emulate a virtual desktop",IDC_ENABLE_DESKTOP,"Button",
|
||||
BS_AUTOCHECKBOX | WS_TABSTOP,15,100,230,10
|
||||
BS_AUTOCHECKBOX | WS_TABSTOP,15,173,230,10
|
||||
|
||||
EDITTEXT IDC_DESKTOP_WIDTH,64,115,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
|
||||
EDITTEXT IDC_DESKTOP_HEIGHT,117,115,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
|
||||
EDITTEXT IDC_DESKTOP_WIDTH,64,188,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
|
||||
EDITTEXT IDC_DESKTOP_HEIGHT,117,188,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
|
||||
|
||||
GROUPBOX " Direct3D ",IDC_STATIC,8,140,244,120
|
||||
GROUPBOX " Direct3D ",IDC_STATIC,8,210,244,50
|
||||
|
||||
LTEXT "Vertex Shader Support: ",IDC_STATIC,15,150,80,30
|
||||
COMBOBOX IDC_D3D_VSHADER_MODE,100,148,150,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Vertex Shader Support: ",IDC_STATIC,15,220,80,30
|
||||
COMBOBOX IDC_D3D_VSHADER_MODE,100,218,150,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
|
||||
CONTROL "Allow Pixel Shader (if supported by hardware)",IDC_D3D_PSHADER_MODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,165,230,10
|
||||
CONTROL "Allow Pixel Shader (if supported by hardware)",IDC_D3D_PSHADER_MODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,237,230,10
|
||||
END
|
||||
|
||||
IDD_DLLCFG DIALOG DISCARDABLE 0, 0, 260, 250
|
||||
|
@ -219,6 +222,7 @@ BEGIN
|
|||
|
||||
CONTROL "Allow DirectX apps to stop the mouse leaving their window",IDC_DX_MOUSE_GRAB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,35,230,8
|
||||
CONTROL "Enable desktop double buffering",IDC_DOUBLE_BUFFER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,45,230,8
|
||||
CONTROL "Allow the window manager to manage created windows",IDC_ENABLE_MANAGED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,55,230,8
|
||||
|
||||
GROUPBOX " Window settings ",IDC_STATIC,8,25,244,110
|
||||
|
||||
|
|
|
@ -154,6 +154,13 @@ static void init_dialog(HWND dialog)
|
|||
}
|
||||
HeapFree(GetProcessHeap(), 0, buf);
|
||||
|
||||
buf = get_reg_key(config_key, keypath("X11 Driver"), "Managed", "Y");
|
||||
if (IS_OPTION_TRUE(*buf))
|
||||
CheckDlgButton(dialog, IDC_ENABLE_MANAGED, BST_CHECKED);
|
||||
else
|
||||
CheckDlgButton(dialog, IDC_ENABLE_MANAGED, BST_UNCHECKED);
|
||||
HeapFree(GetProcessHeap(), 0, buf);
|
||||
|
||||
SendDlgItemMessage(dialog, IDC_D3D_VSHADER_MODE, CB_RESETCONTENT, 0, 0);
|
||||
for (it = 0; NULL != D3D_VS_Modes[it]; ++it) {
|
||||
SendDlgItemMessage(dialog, IDC_D3D_VSHADER_MODE, CB_ADDSTRING, 0, (LPARAM) D3D_VS_Modes[it]);
|
||||
|
@ -221,6 +228,16 @@ static void on_enable_desktop_clicked(HWND dialog) {
|
|||
update_gui_for_desktop_mode(dialog);
|
||||
}
|
||||
|
||||
static void on_enable_managed_clicked(HWND dialog) {
|
||||
WINE_TRACE("\n");
|
||||
|
||||
if (IsDlgButtonChecked(dialog, IDC_ENABLE_MANAGED) == BST_CHECKED) {
|
||||
set_reg_key(config_key, keypath("X11 Driver"), "Managed", "Y");
|
||||
} else {
|
||||
set_reg_key(config_key, keypath("X11 Driver"), "Managed", "N");
|
||||
}
|
||||
}
|
||||
|
||||
static void on_screen_depth_changed(HWND dialog) {
|
||||
char *newvalue = get_text(dialog, IDC_SCREEN_DEPTH);
|
||||
char *spaceIndex = strchr(newvalue, ' ');
|
||||
|
@ -290,6 +307,7 @@ GraphDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);
|
||||
switch(LOWORD(wParam)) {
|
||||
case IDC_ENABLE_DESKTOP: on_enable_desktop_clicked(hDlg); break;
|
||||
case IDC_ENABLE_MANAGED: on_enable_managed_clicked(hDlg); break;
|
||||
case IDC_DX_MOUSE_GRAB: on_dx_mouse_grab_clicked(hDlg); break;
|
||||
case IDC_DOUBLE_BUFFER: on_double_buffer_clicked(hDlg); break;
|
||||
case IDC_D3D_PSHADER_MODE: on_d3d_pshader_mode_clicked(hDlg); break;
|
||||
|
|
Loading…
Reference in New Issue