| @@ -579,34 +579,32 @@ NVGcolor bndNodeWireColor(const BNDnodeTheme *theme, BNDwidgetState state); | |||
| #include <float.h> | |||
| #ifndef MSC_FMINF_DEFINED | |||
| #define MSC_FMINF_DEFINED | |||
| static float fminf ( float a, float b ) | |||
| static float bnd_fminf ( float a, float b ) | |||
| { | |||
| return _isnan(a) ? b : ( _isnan(b) ? a : ((a < b) ? a : b)); | |||
| } | |||
| static float fmaxf ( float a, float b ) | |||
| static float bnd_fmaxf ( float a, float b ) | |||
| { | |||
| return _isnan(a) ? b : ( _isnan(b) ? a : ((a > b) ? a : b)); | |||
| } | |||
| #endif // MSC_FMINF_DEFINED | |||
| #ifndef MSC_FMIN_DEFINED | |||
| #define MSC_FMIN_DEFINED | |||
| static double fmin ( double a, double b ) | |||
| static double bnd_fmin ( double a, double b ) | |||
| { | |||
| return _isnan(a) ? b : ( _isnan(b) ? a : ((a < b) ? a : b)); | |||
| } | |||
| static double fmax ( double a, double b ) | |||
| static double bnd_fmax ( double a, double b ) | |||
| { | |||
| return _isnan(a) ? b : ( _isnan(b) ? a : ((a > b) ? a : b)); | |||
| } | |||
| #endif // MSC_FMIN_DEFINED | |||
| #else | |||
| #define BND_INLINE inline | |||
| #define bnd_fminf(a, b) fminf(a, b) | |||
| #define bnd_fmaxf(a, b) fmaxf(a, b) | |||
| #define bnd_fmin(a, b) fmin(a, b) | |||
| #define bnd_fmax(a, b) fmax(a, b) | |||
| #endif | |||
| //////////////////////////////////////////////////////////////////////////////// | |||
| @@ -1351,15 +1349,15 @@ void bndRoundedBox(NVGcontext *ctx, float x, float y, float w, float h, | |||
| float cr0, float cr1, float cr2, float cr3) { | |||
| float d; | |||
| w = fmaxf(0, w); | |||
| h = fmaxf(0, h); | |||
| d = fminf(w, h); | |||
| w = bnd_fmaxf(0, w); | |||
| h = bnd_fmaxf(0, h); | |||
| d = bnd_fminf(w, h); | |||
| nvgMoveTo(ctx, x,y+h*0.5f); | |||
| nvgArcTo(ctx, x,y, x+w,y, fminf(cr0, d/2)); | |||
| nvgArcTo(ctx, x+w,y, x+w,y+h, fminf(cr1, d/2)); | |||
| nvgArcTo(ctx, x+w,y+h, x,y+h, fminf(cr2, d/2)); | |||
| nvgArcTo(ctx, x,y+h, x,y, fminf(cr3, d/2)); | |||
| nvgArcTo(ctx, x,y, x+w,y, bnd_fminf(cr0, d/2)); | |||
| nvgArcTo(ctx, x+w,y, x+w,y+h, bnd_fminf(cr1, d/2)); | |||
| nvgArcTo(ctx, x+w,y+h, x,y+h, bnd_fminf(cr2, d/2)); | |||
| nvgArcTo(ctx, x,y+h, x,y, bnd_fminf(cr3, d/2)); | |||
| nvgClosePath(ctx); | |||
| } | |||
| @@ -1409,9 +1407,9 @@ void bndBevelInset(NVGcontext *ctx, float x, float y, float w, float h, | |||
| float d; | |||
| y -= 0.5f; | |||
| d = fminf(w, h); | |||
| cr2 = fminf(cr2, d/2); | |||
| cr3 = fminf(cr3, d/2); | |||
| d = bnd_fminf(w, h); | |||
| cr2 = bnd_fminf(cr2, d/2); | |||
| cr3 = bnd_fminf(cr3, d/2); | |||
| nvgBeginPath(ctx); | |||
| nvgMoveTo(ctx, x+w,y+h-cr2); | |||
| @@ -1424,7 +1422,7 @@ void bndBevelInset(NVGcontext *ctx, float x, float y, float w, float h, | |||
| nvgStrokeWidth(ctx, 1); | |||
| nvgStrokePaint(ctx, | |||
| nvgLinearGradient(ctx, | |||
| x,y+h-fmaxf(cr2,cr3)-1, | |||
| x,y+h-bnd_fmaxf(cr2,cr3)-1, | |||
| x,y+h-1, | |||
| nvgRGBAf(bevelColor.r, bevelColor.g, bevelColor.b, 0), | |||
| bevelColor)); | |||
| @@ -1489,8 +1487,8 @@ void bndInnerBox(NVGcontext *ctx, float x, float y, float w, float h, | |||
| float cr0, float cr1, float cr2, float cr3, | |||
| NVGcolor shade_top, NVGcolor shade_down) { | |||
| nvgBeginPath(ctx); | |||
| bndRoundedBox(ctx,x+1,y+1,w-2,h-3, | |||
| fmaxf(0,cr0-1),fmaxf(0,cr1-1),fmaxf(0,cr2-1),fmaxf(0,cr3-1)); | |||
| bndRoundedBox(ctx,x+1,y+1,w-2,h-3,bnd_fmaxf(0,cr0-1), | |||
| bnd_fmaxf(0,cr1-1),bnd_fmaxf(0,cr2-1),bnd_fmaxf(0,cr3-1)); | |||
| nvgFillPaint(ctx,((h-2)>w)? | |||
| nvgLinearGradient(ctx,x,y,x+w,y,shade_top,shade_down): | |||
| nvgLinearGradient(ctx,x,y,x,y+h,shade_top,shade_down)); | |||
| @@ -1718,11 +1716,11 @@ void bndScrollHandleRect(float *x, float *y, float *w, float *h, | |||
| size = bnd_clamp(size,0,1); | |||
| offset = bnd_clamp(offset,0,1); | |||
| if ((*h) > (*w)) { | |||
| float hs = fmaxf(size*(*h), (*w)+1); | |||
| float hs = bnd_fmaxf(size*(*h), (*w)+1); | |||
| *y = (*y) + ((*h)-hs)*offset; | |||
| *h = hs; | |||
| } else { | |||
| float ws = fmaxf(size*(*w), (*h)-1); | |||
| float ws = bnd_fmaxf(size*(*w), (*h)-1); | |||
| *x = (*x) + ((*w)-ws)*offset; | |||
| *w = ws; | |||
| } | |||