Author: ianmacarthur
Date: 2008-11-27 12:43:27 -0800 (Thu, 27 Nov 2008)
New Revision: 6530
Log:
STR #2097 - attempt to workaround fl_round_box not honouring colors passwed to 
it from fl_rgb_color(...) calls.



Modified:
   branches/branch-1.3/src/fl_round_box.cxx

Modified: branches/branch-1.3/src/fl_round_box.cxx
===================================================================
--- branches/branch-1.3/src/fl_round_box.cxx    2008-11-19 20:34:27 UTC (rev 
6529)
+++ branches/branch-1.3/src/fl_round_box.cxx    2008-11-27 20:43:27 UTC (rev 
6530)
@@ -41,7 +41,7 @@
 
 enum {UPPER_LEFT, LOWER_RIGHT, CLOSED, FILL};
 
-static void draw(int which, int x,int y,int w,int h, int inset, uchar color)
+static void draw(int which, int x,int y,int w,int h, int inset, Fl_Color color)
 {
   if (inset*2 >= w) inset = (w-1)/2;
   if (inset*2 >= h) inset = (h-1)/2;
@@ -51,7 +51,7 @@
   h -= 2*inset;
   int d = w <= h ? w : h;
   if (d <= 1) return;
-  fl_color((Fl_Color)color);
+  fl_color(color);
   void (*f)(int,int,int,int,double,double);
   f = (which==FILL) ? fl_pie : fl_arc_i;
   if (which >= CLOSED) {
@@ -85,29 +85,29 @@
 void fl_round_down_box(int x, int y, int w, int h, Fl_Color bgcolor) {
   uchar *g = fl_gray_ramp();
   draw(FILL,       x,   y, w,   h, 2, bgcolor);
-  draw(UPPER_LEFT,  x+1, y, w-2, h, 0, g['N']);
-  draw(UPPER_LEFT,  x+1, y, w-2, h, 1, g['H']);
-  draw(UPPER_LEFT,  x,   y, w,   h, 0, g['N']);
-  draw(UPPER_LEFT,  x,   y, w,   h, 1, g['H']);
-  draw(LOWER_RIGHT, x,   y, w,   h, 0, g['S']);
-  draw(LOWER_RIGHT, x+1, y, w-2, h, 0, g['U']);
-  draw(LOWER_RIGHT, x,   y, w,   h, 1, g['U']);
-  draw(LOWER_RIGHT, x+1, y, w-2, h, 1, g['W']);
-  draw(CLOSED,     x,   y, w,   h, 2, g['A']);
+  draw(UPPER_LEFT,  x+1, y, w-2, h, 0, (Fl_Color)g['N']);
+  draw(UPPER_LEFT,  x+1, y, w-2, h, 1, (Fl_Color)g['H']);
+  draw(UPPER_LEFT,  x,   y, w,   h, 0, (Fl_Color)g['N']);
+  draw(UPPER_LEFT,  x,   y, w,   h, 1, (Fl_Color)g['H']);
+  draw(LOWER_RIGHT, x,   y, w,   h, 0, (Fl_Color)g['S']);
+  draw(LOWER_RIGHT, x+1, y, w-2, h, 0, (Fl_Color)g['U']);
+  draw(LOWER_RIGHT, x,   y, w,   h, 1, (Fl_Color)g['U']);
+  draw(LOWER_RIGHT, x+1, y, w-2, h, 1, (Fl_Color)g['W']);
+  draw(CLOSED,     x,   y, w,   h, 2, (Fl_Color)g['A']);
 }
 
 void fl_round_up_box(int x, int y, int w, int h, Fl_Color bgcolor) {
   uchar *g = fl_gray_ramp();
   draw(FILL,       x,   y, w,   h, 2, bgcolor);
-  draw(LOWER_RIGHT, x+1, y, w-2, h, 0, g['H']);
-  draw(LOWER_RIGHT, x+1, y, w-2, h, 1, g['N']);
-  draw(LOWER_RIGHT, x,   y, w,   h, 1, g['H']);
-  draw(LOWER_RIGHT, x,   y, w,   h, 2, g['N']);
-  draw(UPPER_LEFT,  x,   y, w,   h, 2, g['U']);
-  draw(UPPER_LEFT,  x+1, y, w-2, h, 1, g['S']);
-  draw(UPPER_LEFT,  x,   y, w,   h, 1, g['W']);
-  draw(UPPER_LEFT,  x+1, y, w-2, h, 0, g['U']);
-  draw(CLOSED,     x,   y, w,   h, 0, g['A']);
+  draw(LOWER_RIGHT, x+1, y, w-2, h, 0, (Fl_Color)g['H']);
+  draw(LOWER_RIGHT, x+1, y, w-2, h, 1, (Fl_Color)g['N']);
+  draw(LOWER_RIGHT, x,   y, w,   h, 1, (Fl_Color)g['H']);
+  draw(LOWER_RIGHT, x,   y, w,   h, 2, (Fl_Color)g['N']);
+  draw(UPPER_LEFT,  x,   y, w,   h, 2, (Fl_Color)g['U']);
+  draw(UPPER_LEFT,  x+1, y, w-2, h, 1, (Fl_Color)g['S']);
+  draw(UPPER_LEFT,  x,   y, w,   h, 1, (Fl_Color)g['W']);
+  draw(UPPER_LEFT,  x+1, y, w-2, h, 0, (Fl_Color)g['U']);
+  draw(CLOSED,     x,   y, w,   h, 0, (Fl_Color)g['A']);
 }
 
 extern void fl_internal_boxtype(Fl_Boxtype, Fl_Box_Draw_F*);

_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit

Reply via email to