diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 2001-10-27 03:29:25 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 2001-10-27 03:29:25 +0000 |
| commit | 68fb9f79108ef7f2e841f6cd8dc6fb58408d2e29 (patch) | |
| tree | b65b4bd6c24b995027724f530b0362032704716c /src/fl_boxtype.cxx | |
| parent | d2bfebbb4b2c161822d48a42f4e94c5ad847a547 (diff) | |
Don't allow extra boxtypes to override user-defined boxtypes.
Change the help link function to get both the widget and pathname.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1659 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/fl_boxtype.cxx')
| -rw-r--r-- | src/fl_boxtype.cxx | 99 |
1 files changed, 53 insertions, 46 deletions
diff --git a/src/fl_boxtype.cxx b/src/fl_boxtype.cxx index 8b9b9eb13..55bc9d472 100644 --- a/src/fl_boxtype.cxx +++ b/src/fl_boxtype.cxx @@ -1,5 +1,5 @@ // -// "$Id: fl_boxtype.cxx,v 1.8.2.4.2.1 2001/08/04 12:21:33 easysw Exp $" +// "$Id: fl_boxtype.cxx,v 1.8.2.4.2.2 2001/10/27 03:29:25 easysw Exp $" // // Box drawing code for the Fast Light Tool Kit (FLTK). // @@ -186,46 +186,47 @@ void fl_border_frame(int x, int y, int w, int h, Fl_Color c) { static struct { Fl_Box_Draw_F *f; uchar dx, dy, dw, dh; + int set; } fl_box_table[] = { // must match list in Enumerations.H!!! - {fl_no_box, 0,0,0,0}, - {fl_rectf, 0,0,0,0}, // FL_FLAT_BOX - {fl_up_box, D1,D1,D2,D2}, - {fl_down_box, D1,D1,D2,D2}, - {fl_up_frame, D1,D1,D2,D2}, - {fl_down_frame, D1,D1,D2,D2}, - {fl_thin_up_box, 1,1,2,2}, - {fl_thin_down_box, 1,1,2,2}, - {fl_thin_up_frame, 1,1,2,2}, - {fl_thin_down_frame, 1,1,2,2}, - {fl_engraved_box, 2,2,4,4}, - {fl_embossed_box, 2,2,4,4}, - {fl_engraved_frame, 2,2,4,4}, - {fl_embossed_frame, 2,2,4,4}, - {fl_border_box, 1,1,2,2}, - {fl_border_box, 1,1,2,2}, // _FL_SHADOW_BOX, - {fl_border_frame, 1,1,2,2}, - {fl_border_frame, 1,1,2,2}, // _FL_SHADOW_FRAME, - {fl_border_box, 1,1,2,2}, // _FL_ROUNDED_BOX, - {fl_border_box, 1,1,2,2}, // _FL_RSHADOW_BOX, - {fl_border_frame, 1,1,2,2}, // _FL_ROUNDED_FRAME - {fl_rectf, 0,0,0,0}, // _FL_RFLAT_BOX, - {fl_up_box, 3,3,6,6}, // _FL_ROUND_UP_BOX - {fl_down_box, 3,3,6,6}, // _FL_ROUND_DOWN_BOX, - {fl_up_box, 0,0,0,0}, // _FL_DIAMOND_UP_BOX - {fl_down_box, 0,0,0,0}, // _FL_DIAMOND_DOWN_BOX - {fl_border_box, 1,1,2,2}, // _FL_OVAL_BOX, - {fl_border_box, 1,1,2,2}, // _FL_OVAL_SHADOW_BOX, - {fl_border_frame, 1,1,2,2}, // _FL_OVAL_FRAME - {fl_rectf, 0,0,0,0}, // _FL_OVAL_FLAT_BOX, - {fl_up_box, 3,3,6,6}, // FL_FREE_BOX+0 - {fl_down_box, 3,3,6,6}, // FL_FREE_BOX+1 - {fl_up_box, 3,3,6,6}, // FL_FREE_BOX+2 - {fl_down_box, 3,3,6,6}, // FL_FREE_BOX+3 - {fl_up_box, 3,3,6,6}, // FL_FREE_BOX+4 - {fl_down_box, 3,3,6,6}, // FL_FREE_BOX+5 - {fl_up_box, 3,3,6,6}, // FL_FREE_BOX+6 - {fl_down_box, 3,3,6,6}, // FL_FREE_BOX+7 + {fl_no_box, 0,0,0,0,1}, + {fl_rectf, 0,0,0,0,1}, // FL_FLAT_BOX + {fl_up_box, D1,D1,D2,D2,1}, + {fl_down_box, D1,D1,D2,D2,1}, + {fl_up_frame, D1,D1,D2,D2,1}, + {fl_down_frame, D1,D1,D2,D2,1}, + {fl_thin_up_box, 1,1,2,2,1}, + {fl_thin_down_box, 1,1,2,2,1}, + {fl_thin_up_frame, 1,1,2,2,1}, + {fl_thin_down_frame, 1,1,2,2,1}, + {fl_engraved_box, 2,2,4,4,1}, + {fl_embossed_box, 2,2,4,4,1}, + {fl_engraved_frame, 2,2,4,4,1}, + {fl_embossed_frame, 2,2,4,4,1}, + {fl_border_box, 1,1,2,2,1}, + {fl_border_box, 1,1,2,2,0}, // _FL_SHADOW_BOX, + {fl_border_frame, 1,1,2,2,1}, + {fl_border_frame, 1,1,2,2,0}, // _FL_SHADOW_FRAME, + {fl_border_box, 1,1,2,2,0}, // _FL_ROUNDED_BOX, + {fl_border_box, 1,1,2,2,0}, // _FL_RSHADOW_BOX, + {fl_border_frame, 1,1,2,2,0}, // _FL_ROUNDED_FRAME + {fl_rectf, 0,0,0,0,0}, // _FL_RFLAT_BOX, + {fl_up_box, 3,3,6,6,0}, // _FL_ROUND_UP_BOX + {fl_down_box, 3,3,6,6,0}, // _FL_ROUND_DOWN_BOX, + {fl_up_box, 0,0,0,0,0}, // _FL_DIAMOND_UP_BOX + {fl_down_box, 0,0,0,0,0}, // _FL_DIAMOND_DOWN_BOX + {fl_border_box, 1,1,2,2,0}, // _FL_OVAL_BOX, + {fl_border_box, 1,1,2,2,0}, // _FL_OVAL_SHADOW_BOX, + {fl_border_frame, 1,1,2,2,0}, // _FL_OVAL_FRAME + {fl_rectf, 0,0,0,0,0}, // _FL_OVAL_FLAT_BOX, + {fl_up_box, 3,3,6,6,0}, // FL_FREE_BOX+0 + {fl_down_box, 3,3,6,6,0}, // FL_FREE_BOX+1 + {fl_up_box, 3,3,6,6,0}, // FL_FREE_BOX+2 + {fl_down_box, 3,3,6,6,0}, // FL_FREE_BOX+3 + {fl_up_box, 3,3,6,6,0}, // FL_FREE_BOX+4 + {fl_down_box, 3,3,6,6,0}, // FL_FREE_BOX+5 + {fl_up_box, 3,3,6,6,0}, // FL_FREE_BOX+6 + {fl_down_box, 3,3,6,6,0}, // FL_FREE_BOX+7 }; int Fl::box_dx(Fl_Boxtype t) {return fl_box_table[t].dx;} @@ -233,15 +234,21 @@ int Fl::box_dy(Fl_Boxtype t) {return fl_box_table[t].dy;} int Fl::box_dw(Fl_Boxtype t) {return fl_box_table[t].dw;} int Fl::box_dh(Fl_Boxtype t) {return fl_box_table[t].dh;} -void fl_internal_boxtype(Fl_Boxtype t, Fl_Box_Draw_F* f) {fl_box_table[t].f=f;} +void fl_internal_boxtype(Fl_Boxtype t, Fl_Box_Draw_F* f) { + if (!fl_box_table[t].set) { + fl_box_table[t].f = f; + fl_box_table[t].set = 1; + } +} void Fl::set_boxtype(Fl_Boxtype t, Fl_Box_Draw_F* f, uchar a, uchar b, uchar c, uchar d) { - fl_box_table[t].f=f; - fl_box_table[t].dx = a; - fl_box_table[t].dy = b; - fl_box_table[t].dw = c; - fl_box_table[t].dh = d; + fl_box_table[t].f = f; + fl_box_table[t].set = 1; + fl_box_table[t].dx = a; + fl_box_table[t].dy = b; + fl_box_table[t].dw = c; + fl_box_table[t].dh = d; } void Fl::set_boxtype(Fl_Boxtype t, Fl_Boxtype f) { @@ -277,5 +284,5 @@ const { } // -// End of "$Id: fl_boxtype.cxx,v 1.8.2.4.2.1 2001/08/04 12:21:33 easysw Exp $". +// End of "$Id: fl_boxtype.cxx,v 1.8.2.4.2.2 2001/10/27 03:29:25 easysw Exp $". // |
