[ros-diffs] [tkreuzer] 34552: Add MATRIX accelerator flag MX_SCALE and set it in XForm2MatrixS, when off-diagonal elements are zero.
tkreuzer at svn.reactos.org
tkreuzer at svn.reactos.org
Wed Jul 16 20:57:23 CEST 2008
Author: tkreuzer
Date: Wed Jul 16 13:57:23 2008
New Revision: 34552
URL: http://svn.reactos.org/svn/reactos?rev=34552&view=rev
Log:
Add MATRIX accelerator flag MX_SCALE and set it in XForm2MatrixS, when off-diagonal elements are zero.
Modified:
trunk/reactos/include/reactos/win32k/ntgdityp.h
trunk/reactos/subsystems/win32/win32k/eng/float.c
Modified: trunk/reactos/include/reactos/win32k/ntgdityp.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/win32k/ntgdityp.h?rev=34552&r1=34551&r2=34552&view=diff
==============================================================================
--- trunk/reactos/include/reactos/win32k/ntgdityp.h [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/win32k/ntgdityp.h [iso-8859-1] Wed Jul 16 13:57:23 2008
@@ -96,6 +96,12 @@
GdiDpToLp,
GdiLpToDp,
} TRANSFORMTYPE, *PTRANSFORMTYPE;
+
+/* MATRIX flAccel flags */
+enum
+{
+ MX_SCALE = 1,
+};
typedef enum GDIObjType
{
@@ -335,7 +341,7 @@
LONG lMant;
LONG lExp;
} EFLOAT_S;
-
+
/* XFORM Structures */
typedef struct _MATRIX_S
{
Modified: trunk/reactos/subsystems/win32/win32k/eng/float.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/eng/float.c?rev=34552&r1=34551&r2=34552&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/float.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/float.c [iso-8859-1] Wed Jul 16 13:57:23 2008
@@ -219,6 +219,11 @@
FtoEF( &Matrix->efDx, f.l);
f.f = XForm->eDy;
FtoEF( &Matrix->efDy, f.l);
+ Matrix->flAccel = 0;
+ if (XForm->eM12 == 0. && XForm->eM21 == 0.)
+ {
+ Matrix->flAccel |= MX_SCALE;
+ }
}
VOID FASTCALL
More information about the Ros-diffs
mailing list