]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/math.h
Add correct wxArgNormalizer code for signed char.
[wxWidgets.git] / include / wx / math.h
index 611971d471e5d04ee3bc62bd36f9636f0aec3fbb..33831c274df6f4f12653e54e0b0c24e3f26ef7a8 100644 (file)
@@ -24,7 +24,7 @@
 
 /* Scaling factors for various unit conversions: 1 inch = 2.54 cm */
 #ifndef METRIC_CONVERSION_CONSTANT
-    #define METRIC_CONVERSION_CONSTANT (1./254)
+    #define METRIC_CONVERSION_CONSTANT (1/25.4)
 #endif
 
 #ifndef mm2inches
@@ -93,7 +93,7 @@
             //     shouldn't be used with doubles, but we get too many of them and
             //     removing these operators is probably not a good idea
             //
-            //     Maybe we should alway compare doubles up to some "epsilon" precision
+            //     Maybe we should always compare doubles up to some "epsilon" precision
             #pragma warning(push)
 
             // floating-point equality and inequality comparisons are unreliable
     inline int wxRound(double x)
     {
         wxASSERT_MSG( x > INT_MIN - 0.5 && x < INT_MAX + 0.5,
-                      _T("argument out of supported range") );
+                      wxT("argument out of supported range") );
 
         #if defined(HAVE_ROUND)
             return int(round(x));
 
 #if defined(__WXMSW__) && !defined(__WXWINCE__)
     #define wxMulDivInt32( a , b , c ) ::MulDiv( a , b , c )
-#elif defined( __WXMAC__ )
-    #define wxMulDivInt32( a , b , c ) ( (wxInt32) ( ( (wxInt64)(a) * (wxInt64)(b) ) / (wxInt64)(c) ) )
 #else
-    #define wxMulDivInt32( a , b , c ) ((wxInt32)((a)*(((wxDouble)b)/((wxDouble)c))))
+    #define wxMulDivInt32( a , b , c ) (wxRound((a)*(((wxDouble)b)/((wxDouble)c))))
 #endif
 
 #if wxUSE_APPLE_IEEE