[winecfg 13] More x11drv sheet work

Mike Hearn mike at theoretic.com
Sat Sep 20 12:00:27 CDT 2003


Remove Managed option. Add DXGrab, DesktopDoubleBuffer, UseTakeFocus
(need natural language for this).

diff -ur --exclude-from=diff-exclusions ../head/programs/winecfg/En.rc programs/winecfg/En.rc
--- ../head/programs/winecfg/En.rc	2003-09-19 18:46:13.000000000 +0100
+++ programs/winecfg/En.rc	2003-09-20 17:58:06.000000000 +0100
@@ -62,33 +62,26 @@
 STYLE WS_CHILD | WS_DISABLED
 FONT 8, "MS Sans Serif"
 BEGIN
-/** DGA control is disabled until this feature isn't totally broken **/
-/*
-    CONTROL         "Use XFree DGA extension",IDC_XDGA,"Button",
-                    BS_AUTOCHECKBOX | WS_TABSTOP,145,44,97,10
- */
-
     LTEXT	    "Screen color depth: ",IDC_STATIC,8,10,60,30
     COMBOBOX	    IDC_SCREEN_DEPTH,70,8,180,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- 
-    EDITTEXT        IDC_DESKTOP_WIDTH,64,125,40,14,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
-    EDITTEXT        IDC_DESKTOP_HEIGHT,117,125,40,14,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
+
+    CONTROL	    "Can DirectX programs prevent the mouse leaving their window?",IDC_DX_MOUSE_GRAB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,35,242,8
+    CONTROL	    "Enable desktop double buffering",IDC_DOUBLE_BUFFER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,45,242,8
+    CONTROL	    "UseTakeFocus (FIXME)",IDC_USE_TAKE_FOCUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,55,242,8
     
-    GROUPBOX        " Window settings ",IDC_STATIC,8,65,244,170
+    GROUPBOX        " Window settings ",IDC_STATIC,8,25,244,120
 
     /* 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,77,228,28
-    LTEXT           "Desktop size:",IDC_DESKTOP_SIZE,17,125,44,8,WS_DISABLED
-    LTEXT           "X",IDC_DESKTOP_BY,108,125,8,8,WS_DISABLED
+                    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
     CONTROL         "Emulate a virtual desktop",IDC_ENABLE_DESKTOP,"Button",
-                    BS_AUTOCHECKBOX | WS_TABSTOP,17,110,84,10
-
-    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,145,228,50
-    CONTROL	    "Allow the window manager to control the windows", IDC_ENABLE_MANAGED, "Button",
-    		    BS_AUTOCHECKBOX | WS_TABSTOP, 17,215,154,10
-    
+                    BS_AUTOCHECKBOX | WS_TABSTOP,15,100,84,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
+		    
 END
 
 IDD_DLLCFG DIALOG DISCARDABLE  0, 0, 260, 250
diff -ur --exclude-from=diff-exclusions ../head/programs/winecfg/resource.h programs/winecfg/resource.h
--- ../head/programs/winecfg/resource.h	2003-09-19 18:46:13.000000000 +0100
+++ programs/winecfg/resource.h	2003-09-20 17:52:32.000000000 +0100
@@ -104,3 +104,6 @@
 #define IDS_DRIVE_NO_C                  1075
 #define IDC_ENABLE_MANAGED              1076
 #define IDC_SCREEN_DEPTH                1077
+#define IDC_DX_MOUSE_GRAB               1078
+#define IDC_USE_TAKE_FOCUS              1079
+#define IDC_DOUBLE_BUFFER               1080
diff -ur --exclude-from=diff-exclusions ../head/programs/winecfg/x11drvdlg.c programs/winecfg/x11drvdlg.c
--- ../head/programs/winecfg/x11drvdlg.c	2003-09-19 18:46:13.000000000 +0100
+++ programs/winecfg/x11drvdlg.c	2003-09-20 17:55:18.000000000 +0100
@@ -109,11 +109,26 @@
     SendDlgItemMessage(hDlg, IDC_DESKTOP_WIDTH, EM_LIMITTEXT, RES_MAXLEN, 0);
     SendDlgItemMessage(hDlg, IDC_DESKTOP_HEIGHT, EM_LIMITTEXT, RES_MAXLEN, 0);
 
-    buf = getConfigValue("x11drv", "Managed", "Y");
+    buf = getConfigValue("x11drv", "DXGrab", "Y");
     if (IS_OPTION_TRUE(*buf))
-	CheckDlgButton(hDlg, IDC_ENABLE_MANAGED, BST_CHECKED);
+	CheckDlgButton(hDlg, IDC_DX_MOUSE_GRAB, BST_CHECKED);
     else
-	CheckDlgButton(hDlg, IDC_ENABLE_MANAGED, BST_UNCHECKED);
+	CheckDlgButton(hDlg, IDC_DX_MOUSE_GRAB, BST_UNCHECKED);
+    free(buf);
+
+    buf = getConfigValue("x11drv", "DesktopDoubleBuffered", "Y");
+    if (IS_OPTION_TRUE(*buf))
+	CheckDlgButton(hDlg, IDC_DOUBLE_BUFFER, BST_CHECKED);
+    else
+	CheckDlgButton(hDlg, IDC_DOUBLE_BUFFER, BST_UNCHECKED);
+    free(buf);
+    
+    buf = getConfigValue("x11drv", "UseTakeFocus", "N");
+    if (IS_OPTION_TRUE(*buf))
+	CheckDlgButton(hDlg, IDC_USE_TAKE_FOCUS, BST_CHECKED);
+    else
+	CheckDlgButton(hDlg, IDC_USE_TAKE_FOCUS, BST_UNCHECKED);
+    free(buf);
     
     updatingUI = FALSE;
 }
@@ -167,13 +182,29 @@
     free(newvalue);
 }
 
-void onEnableManagedClicked(HWND hDlg) {
-    if (IsDlgButtonChecked(hDlg, IDC_ENABLE_MANAGED) == BST_CHECKED)
-	addTransaction("x11drv", "Managed", ACTION_SET, "Y");
+void onDXMouseGrabClicked(HWND hDlg) {
+    if (IsDlgButtonChecked(hDlg, IDC_DX_MOUSE_GRAB) == BST_CHECKED)
+	addTransaction("x11drv", "DXGrab", ACTION_SET, "Y");
+    else
+	addTransaction("x11drv", "DXGrab", ACTION_SET, "N");
+}
+
+
+void onDoubleBufferClicked(HWND hDlg) {
+    if (IsDlgButtonChecked(hDlg, IDC_DOUBLE_BUFFER) == BST_CHECKED)
+	addTransaction("x11drv", "DesktopDoubleBuffered", ACTION_SET, "Y");
     else
-	addTransaction("x11drv", "Managed", ACTION_SET, "N");
+	addTransaction("x11drv", "DesktopDoubleBuffered", ACTION_SET, "N");
 }
 
+void onUseTakeFocusClicked(HWND hDlg) {
+    if (IsDlgButtonChecked(hDlg, IDC_USE_TAKE_FOCUS) == BST_CHECKED)
+	addTransaction("x11drv", "UseTakeFocus", ACTION_SET, "Y");
+    else
+	addTransaction("x11drv", "UseTakeFocus", ACTION_SET, "N");
+}
+
+
 INT_PTR CALLBACK
 X11DrvDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
 {
@@ -192,7 +223,9 @@
 		    WINE_TRACE("%d\n", LOWORD(wParam));
 		    switch(LOWORD(wParam)) {
 			case IDC_ENABLE_DESKTOP: onEnableDesktopClicked(hDlg); break;
-			case IDC_ENABLE_MANAGED: onEnableManagedClicked(hDlg); break;
+			case IDC_DX_MOUSE_GRAB:  onDXMouseGrabClicked(hDlg); break;
+			case IDC_USE_TAKE_FOCUS: onUseTakeFocusClicked(hDlg); break;
+			case IDC_DOUBLE_BUFFER:  onDoubleBufferClicked(hDlg); break;
 		    };
 		    break;
 		}





More information about the wine-patches mailing list