commctl32 datetime fields mad editable with keyboard

Robert Shearman rob at codeweavers.com
Fri Jan 6 12:26:29 CST 2006


Siim Karus wrote:

>@@ -962,6 +1037,33 @@
> 	    DATETIME_IncreaseField (infoPtr, fieldNum, INT_MAX);
> 	    DATETIME_SendDateTimeChangeNotify (infoPtr);
> 	    break;
>+    	case VK_NUMPAD0:
>+    	case VK_NUMPAD1:
>+    	case VK_NUMPAD2:
>+    	case VK_NUMPAD3:
>+    	case VK_NUMPAD4:
>+    	case VK_NUMPAD5:
>+    	case VK_NUMPAD6:
>+    	case VK_NUMPAD7:
>+    	case VK_NUMPAD8:
>+    	case VK_NUMPAD9:
>+	    DATETIME_EditField (infoPtr, fieldNum, vkCode-VK_NUMPAD0);
>+	    DATETIME_SendDateTimeChangeNotify (infoPtr);
>+	    break;
>+    	case (WORD)'0':
>+    	case (WORD)'1':
>+    	case (WORD)'2':
>+    	case (WORD)'3':
>+    	case (WORD)'4':
>+    	case (WORD)'5':
>+    	case (WORD)'6':
>+    	case (WORD)'7':
>+    	case (WORD)'8':
>+    	case (WORD)'9':
>+	    DATETIME_EditField (infoPtr, fieldNum, vkCode-(WORD)('0'));
>+	    DATETIME_SendDateTimeChangeNotify (infoPtr);
>+	    break;
>+
> 	case VK_LEFT:
> 	    do {
> 		if (infoPtr->select == 0) {
>  
>

I think this would be better done in the processing for the WM_CHAR 
message instead. Then you wouldn't have the mess of having to handle the 
numpad keys as well.

-- 
Rob Shearman




More information about the wine-devel mailing list