diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 1998-10-19 17:53:09 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 1998-10-19 17:53:09 +0000 |
| commit | 512332670a87377ba6b705232d22a67681fba3ff (patch) | |
| tree | 82b915d0cbcb2cefbe0fe7088dc6e5ad398e9306 /src/Fl_Color_Chooser.cxx | |
| parent | 33ee986a7b69e05e1fe110c685747381bba481a9 (diff) | |
Added Gustavo's damage() update - now use symbolic constants for all values!
git-svn-id: file:///fltk/svn/fltk/trunk@18 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Color_Chooser.cxx')
| -rw-r--r-- | src/Fl_Color_Chooser.cxx | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/src/Fl_Color_Chooser.cxx b/src/Fl_Color_Chooser.cxx index e0e2d926a..fdd084b96 100644 --- a/src/Fl_Color_Chooser.cxx +++ b/src/Fl_Color_Chooser.cxx @@ -104,10 +104,13 @@ int Fl_Color_Chooser::rgb(double r, double g, double b) { set_valuators(); if (value_ != pv) { #ifdef UPDATE_HUE_BOX - huebox.damage(6); + huebox.damage(FL_DAMAGE_EXPOSE|FL_DAMAGE_OVERLAY); #endif - valuebox.damage(2);} - if (hue_ != ph || saturation_ != ps) {huebox.damage(2); valuebox.damage(6);} + valuebox.damage(FL_DAMAGE_EXPOSE);} + if (hue_ != ph || saturation_ != ps) { + huebox.damage(FL_DAMAGE_EXPOSE); + valuebox.damage(FL_DAMAGE_EXPOSE|FL_DAMAGE_OVERLAY); + } return 1; } @@ -122,10 +125,13 @@ int Fl_Color_Chooser::hsv(double h, double s, double v) { hue_ = h; saturation_ = s; value_ = v; if (value_ != pv) { #ifdef UPDATE_HUE_BOX - huebox.damage(6); + huebox.damage(FL_DAMAGE_EXPOSE|FL_DAMAGE_OVERLAY); #endif - valuebox.damage(2);} - if (hue_ != ph || saturation_ != ps) {huebox.damage(2); valuebox.damage(6);} + valuebox.damage(FL_DAMAGE_EXPOSE);} + if (hue_ != ph || saturation_ != ps) { + huebox.damage(FL_DAMAGE_EXPOSE); + valuebox.damage(FL_DAMAGE_EXPOSE|FL_DAMAGE_OVERLAY); + } hsv2rgb(h,s,v,r_,g_,b_); set_valuators(); return 1; @@ -189,14 +195,14 @@ static void generate_image(void* vv, int X, int Y, int W, uchar* buf) { } void Flcc_HueBox::draw() { - if (damage()&128) draw_box(); + if (damage()&FL_DAMAGE_ALL) draw_box(); int x1 = x()+Fl::box_dx(box()); int y1 = y()+Fl::box_dy(box()); int w1 = w()-Fl::box_dw(box()); int h1 = h()-Fl::box_dh(box()); - if (damage() == 2) fl_clip(x1+px,y1+py,6,6); + if (damage() == FL_DAMAGE_EXPOSE) fl_clip(x1+px,y1+py,6,6); fl_draw_image(generate_image, this, x1, y1, w1, h1); - if (damage() == 2) fl_pop_clip(); + if (damage() == FL_DAMAGE_EXPOSE) fl_pop_clip(); Fl_Color_Chooser* c = (Fl_Color_Chooser*)parent(); #ifdef CIRCLE int X = int(.5*(cos(c->hue()*(M_PI/3.0))*c->saturation()+1) * (w1-6)); @@ -244,16 +250,16 @@ static void generate_vimage(void* vv, int X, int Y, int W, uchar* buf) { } void Flcc_ValueBox::draw() { - if (damage()&128) draw_box(); + if (damage()&FL_DAMAGE_ALL) draw_box(); Fl_Color_Chooser* c = (Fl_Color_Chooser*)parent(); c->hsv2rgb(c->hue(),c->saturation(),1.0,tr,tg,tb); int x1 = x()+Fl::box_dx(box()); int y1 = y()+Fl::box_dy(box()); int w1 = w()-Fl::box_dw(box()); int h1 = h()-Fl::box_dh(box()); - if (damage() == 2) fl_clip(x1,y1+py,w1,6); + if (damage() == FL_DAMAGE_EXPOSE) fl_clip(x1,y1+py,w1,6); fl_draw_image(generate_vimage, this, x1, y1, w1, h1); - if (damage() == 2) fl_pop_clip(); + if (damage() == FL_DAMAGE_EXPOSE) fl_pop_clip(); int Y = int((1-c->value()) * (h1-6)); if (Y < 0) Y = 0; else if (Y > h1-6) Y = h1-6; draw_box(FL_UP_BOX,x1,y1+Y,w1,6,FL_GRAY); @@ -331,7 +337,7 @@ public: }; void ColorChip::draw() { - if (damage()&128) draw_box(); + if (damage()&FL_DAMAGE_ALL) draw_box(); fl_rectf(x()+Fl::box_dx(box()), y()+Fl::box_dy(box()), w()-Fl::box_dw(box()), @@ -344,7 +350,7 @@ static void chooser_cb(Fl_Object* o, void* vv) { v->r = uchar(255*c->r()+.5); v->g = uchar(255*c->g()+.5); v->b = uchar(255*c->b()+.5); - v->damage(2); + v->damage(FL_DAMAGE_EXPOSE); } extern const char* fl_ok; |
