[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12578] trunk/blender/intern/ghost/intern/ GHOST_SystemWin32.cpp: Bugfix 7733
Ton Roosendaal
ton at blender.org
Tue Nov 13 19:01:01 CET 2007
Revision: 12578
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12578
Author: ton
Date: 2007-11-13 19:01:01 +0100 (Tue, 13 Nov 2007)
Log Message:
-----------
Bugfix 7733
New mouse scrollwheels allowing higher precision didn't work in Windows.
Code was assuming only value of +120 or -120 were returned.
Modified Paths:
--------------
trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp
Modified: trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp 2007-11-13 16:50:43 UTC (rev 12577)
+++ trunk/blender/intern/ghost/intern/GHOST_SystemWin32.cpp 2007-11-13 18:01:01 UTC (rev 12578)
@@ -54,7 +54,7 @@
#define WM_MOUSEWHEEL 0x020A
#endif // WM_MOUSEWHEEL
#ifndef WHEEL_DELTA
-#define WHEEL_DELTA 120 /* Value for rolling one detent */
+#define WHEEL_DELTA 120 /* Value for rolling one detent, (old convention! MS changed it) */
#endif // WHEEL_DELTA
@@ -479,7 +479,11 @@
{
// short fwKeys = LOWORD(wParam); // key flags
int zDelta = (short) HIWORD(wParam); // wheel rotation
- zDelta /= WHEEL_DELTA;
+
+ // zDelta /= WHEEL_DELTA;
+ // temporary fix below: microsoft now has added more precision, making the above division not work
+ if (zDelta <= 0 ) zDelta= -1; else zDelta= 1;
+
// short xPos = (short) LOWORD(lParam); // horizontal position of pointer
// short yPos = (short) HIWORD(lParam); // vertical position of pointer
return new GHOST_EventWheel (getSystem()->getMilliSeconds(), window, zDelta);
More information about the Bf-blender-cvs
mailing list