diff --git a/indra/llcommon/llapr.h b/indra/llcommon/llapr.h index 286fc43a77fbb77a9c7f8ed2d453d256419aba70..3f846f13145034e0d26c33b5f50a09064ddff737 100644 --- a/indra/llcommon/llapr.h +++ b/indra/llcommon/llapr.h @@ -37,9 +37,6 @@ // If you get undefined symbols, find the appropriate // Windows header file and include that in your .cpp file. #define WIN32_LEAN_AND_MEAN - // do not define min() and max() macros, which collide with - // things like numeric_limits<T> - #define NOMINMAX #include <winsock2.h> #include <windows.h> #endif diff --git a/indra/llcommon/llprocesslauncher.h b/indra/llcommon/llprocesslauncher.h index 23e48b1823ee87c96cc108a75fa25a80b9f8790c..954c2491472eb2e17b11122fe7d95eeb53348fff 100644 --- a/indra/llcommon/llprocesslauncher.h +++ b/indra/llcommon/llprocesslauncher.h @@ -28,7 +28,6 @@ #define LL_LLPROCESSLAUNCHER_H #if LL_WINDOWS -#define NOMINMAX #include <windows.h> #endif diff --git a/indra/llrender/llglheaders.h b/indra/llrender/llglheaders.h index b936fd30f8494a3b9701aa6fc939b948c4a93318..851a75629e184e60767390c843360156d7d8515a 100644 --- a/indra/llrender/llglheaders.h +++ b/indra/llrender/llglheaders.h @@ -520,7 +520,6 @@ extern PFNGLSAMPLEMASKIPROC glSampleMaski; // windows gl headers depend on things like APIENTRY, so include windows. #define WIN32_LEAN_AND_MEAN -#define NOMINMAX #include <winsock2.h> #include <windows.h> diff --git a/indra/llui/lltoolbar.h b/indra/llui/lltoolbar.h index 407cbde7d27461ae209349070c07fdfaa67918d7..3c317e10a2b5a01b506465f304dd516f0774a7ba 100644 --- a/indra/llui/lltoolbar.h +++ b/indra/llui/lltoolbar.h @@ -45,7 +45,7 @@ class LLToolBarButton : public LLButton public: struct Params : public LLInitParam::Block<Params, LLButton::Params> { - Optional<LLUI::Range<S32> > button_width; + Optional<LLUI::RangeS32> button_width; Optional<S32> desired_height; Params() @@ -67,7 +67,7 @@ class LLToolBarButton : public LLButton LLCommandId mId; S32 mMouseDownX; S32 mMouseDownY; - LLUI::Range<S32> mWidthRange; + LLUI::RangeS32 mWidthRange; S32 mDesiredHeight; bool mIsDragged; startdrag_callback_t mStartDragItemCallback; diff --git a/indra/llui/llui.h b/indra/llui/llui.h index af8f23965760f42b6b6eb11bc56011440c99fd1c..28e84fa44410e55174ea478d1600f1786cc631c3 100644 --- a/indra/llui/llui.h +++ b/indra/llui/llui.h @@ -151,46 +151,43 @@ class LLUI // // Classes // - template <typename T> - struct RangeParams : public LLInitParam::Block<RangeParams<T> > - { - Optional<T> minimum, - maximum; - RangeParams() - : minimum("min", T()), - maximum("max", std::numeric_limits<T>::max()) - {} - }; - - template <typename T> - struct Range + struct RangeS32 { - typedef Range<T> self_t; + struct Params : public LLInitParam::Block<Params> + { + Optional<S32> minimum, + maximum; + + Params() + : minimum("min", 0), + maximum("max", S32_MAX) + {} + }; // correct for inverted params - Range(const RangeParams<T>& p = RangeParams<T>()) - : mMin(p.minimum), + RangeS32(const Params& p = Params()) + : mMin(p.minimum), mMax(p.maximum) { sanitizeRange(); } - Range(T minimum, T maximum) - : mMin(minimum), + RangeS32(S32 minimum, S32 maximum) + : mMin(minimum), mMax(maximum) { sanitizeRange(); } - S32 clamp(T input) + S32 clamp(S32 input) { if (input < mMin) return mMin; if (input > mMax) return mMax; return input; } - void setRange(T minimum, T maximum) + void setRange(S32 minimum, S32 maximum) { mMin = minimum; mMax = maximum; @@ -200,7 +197,7 @@ class LLUI S32 getMin() { return mMin; } S32 getMax() { return mMax; } - bool operator==(const self_t& other) const + bool operator==(const RangeS32& other) const { return mMin == other.mMin && mMax == other.mMax; @@ -218,60 +215,55 @@ class LLUI } - T mMin, + S32 mMin, mMax; }; - template<typename T> - struct ClampedValue : public Range<T> + struct ClampedS32 : public RangeS32 { - typedef Range<T> range_t; - - struct Params : public LLInitParam::Block<Params, RangeParams<T> > + struct Params : public LLInitParam::Block<Params, RangeS32::Params> { - Mandatory<T> value; + Mandatory<S32> value; Params() - : value("", T()) + : value("", 0) { addSynonym(value, "value"); } }; - ClampedValue(const Params& p) - : range_t(p) + ClampedS32(const Params& p) + : RangeS32(p) {} - ClampedValue(const range_t& range) - : range_t(range) + ClampedS32(const RangeS32& range) + : RangeS32(range) { // set value here, after range has been sanitized mValue = clamp(0); } - ClampedValue(T value, const range_t& range = range_t()) - : range_t(range) + ClampedS32(S32 value, const RangeS32& range = RangeS32()) + : RangeS32(range) { mValue = clamp(value); } - T get() + S32 get() { return mValue; } - void set(T value) + void set(S32 value) { mValue = clamp(value); } private: - T mValue; + S32 mValue; }; - typedef ClampedValue<S32> ClampedS32; - // // Methods // diff --git a/indra/llwindow/lldragdropwin32.h b/indra/llwindow/lldragdropwin32.h index 63054bffec3998e6f7fe066f53ba2bfa2cf097cd..929e7f9e377f3a0d480e3b55047bb9fb35b193d0 100644 --- a/indra/llwindow/lldragdropwin32.h +++ b/indra/llwindow/lldragdropwin32.h @@ -31,7 +31,6 @@ #ifndef LL_LLDRAGDROP32_H #define LL_LLDRAGDROP32_H -#define NOMINMAX #include <windows.h> #include <ole2.h> @@ -55,7 +54,6 @@ class LLDragDropWin32 #ifndef LL_LLDRAGDROP32_H #define LL_LLDRAGDROP32_H -#define NOMINMAX #include <windows.h> #include <ole2.h> diff --git a/indra/llwindow/llwindowwin32.h b/indra/llwindow/llwindowwin32.h index dc1950fb315f8a081c78eea312a86386ee66b10b..387e4cbdb65a8767ecf8ddf220b4438669ff6111 100644 --- a/indra/llwindow/llwindowwin32.h +++ b/indra/llwindow/llwindowwin32.h @@ -29,7 +29,6 @@ // Limit Windows API to small and manageable set. #define WIN32_LEAN_AND_MEAN -#define NOMINMAX #include <winsock2.h> #include <windows.h> diff --git a/indra/win_crash_logger/StdAfx.h b/indra/win_crash_logger/StdAfx.h index 71faf88bad8121bb48c868324cd0ad57c92dfa1a..35976658acb9b525c45d8a75842ac8bb6d8e92d9 100644 --- a/indra/win_crash_logger/StdAfx.h +++ b/indra/win_crash_logger/StdAfx.h @@ -37,7 +37,6 @@ #endif // _MSC_VER > 1000 #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -#define NOMINMAX // don't define min and max macros // Windows Header Files: #include <windows.h>