X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23f826bdf98d9f1570248cb926e7b7f233ed44dd..93928d517b4f748fb8bdbd7e0ae5334e2e3a8562:/include/wx/math.h diff --git a/include/wx/math.h b/include/wx/math.h index e99b37a6d6..b7096cbfdb 100644 --- a/include/wx/math.h +++ b/include/wx/math.h @@ -22,9 +22,9 @@ #define M_PI 3.1415926535897932384626433832795 #endif -/* Scaling factors for various unit conversions */ +/* Scaling factors for various unit conversions: 1 inch = 2.54 cm */ #ifndef METRIC_CONVERSION_CONSTANT - #define METRIC_CONVERSION_CONSTANT 0.0393700787 + #define METRIC_CONVERSION_CONSTANT (1./254) #endif #ifndef mm2inches @@ -60,6 +60,9 @@ #elif defined(__GNUG__)||defined(__GNUWIN32__)||defined(__DJGPP__)|| \ defined(__SGI_CC__)||defined(__SUNCC__)||defined(__XLC__)|| \ defined(__HPUX__)||defined(__MWERKS__) +#ifdef __SOLARIS__ +#include +#endif #define wxFinite(x) finite(x) #else #define wxFinite(x) ((x) == (x)) @@ -105,13 +108,12 @@ inline bool wxIsNullDouble(double x) { return wxIsSameDouble(x, 0.); } - #ifdef __VMS - //Missing definition in OpenVMS C++ header files. - double round(double __x); - #endif inline int wxRound(double x) { - #ifdef __VMS + wxASSERT_MSG( x > INT_MIN - 0.5 && x < INT_MAX + 0.5, + _T("argument out of supported range") ); + + #if defined(HAVE_ROUND) return int(round(x)); #else return (int)(x < 0 ? x - 0.5 : x + 0.5); @@ -133,8 +135,15 @@ extern "C" { #endif /* functions from common/extended.c */ - extern wxFloat64 ConvertFromIeeeExtended(const wxInt8 *bytes); - extern void ConvertToIeeeExtended(wxFloat64 num, wxInt8 *bytes); + WXDLLIMPEXP_BASE wxFloat64 wxConvertFromIeeeExtended(const wxInt8 *bytes); + WXDLLIMPEXP_BASE void wxConvertToIeeeExtended(wxFloat64 num, wxInt8 *bytes); + + /* use wxConvertFromIeeeExtended() and wxConvertToIeeeExtended() instead */ +#if WXWIN_COMPATIBILITY_2_8 + wxDEPRECATED( WXDLLIMPEXP_BASE wxFloat64 ConvertFromIeeeExtended(const wxInt8 *bytes) ); + wxDEPRECATED( WXDLLIMPEXP_BASE void ConvertToIeeeExtended(wxFloat64 num, wxInt8 *bytes) ); +#endif // WXWIN_COMPATIBILITY_2_8 + #ifdef __cplusplus } #endif