From 1acc39c5d8d5b3db88abfd008699dadb8aade2b9 Mon Sep 17 00:00:00 2001 From: Michael R Sweet Date: Mon, 19 Nov 2001 01:06:45 +0000 Subject: OK, lots of changes to the Fl_Image, Fl_Bitmap, Fl_Pixmap, and Fl_RGB_Image classes: new copy(), copy(w,h), desaturate(), color_average(), and inactive() methods, alloc_xyz member for copied data, etc. Updated test programs to use inactive() and copy() methods to create inactive images for the test buttons, plus the inactive button to toggle it... Added start of separate image classes, a la 2.0, for various image formats. FLUID will also be updated for it... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1703 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- test/pixmap.cxx | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) (limited to 'test/pixmap.cxx') diff --git a/test/pixmap.cxx b/test/pixmap.cxx index a6143cc73..52698bd48 100644 --- a/test/pixmap.cxx +++ b/test/pixmap.cxx @@ -1,5 +1,5 @@ // -// "$Id: pixmap.cxx,v 1.4.2.3.2.1 2001/08/05 23:58:54 easysw Exp $" +// "$Id: pixmap.cxx,v 1.4.2.3.2.2 2001/11/19 01:06:45 easysw Exp $" // // Pixmap label test program for the Fast Light Tool Kit (FLTK). // @@ -33,7 +33,7 @@ #include -Fl_Toggle_Button *leftb,*rightb,*topb,*bottomb,*insideb,*overb; +Fl_Toggle_Button *leftb,*rightb,*topb,*bottomb,*insideb,*overb,*inactb; Fl_Button *b; Fl_Window *w; @@ -46,6 +46,8 @@ void button_cb(Fl_Widget *,void *) { if (insideb->value()) i |= FL_ALIGN_INSIDE; if (overb->value()) i |= FL_ALIGN_TEXT_OVER_IMAGE; b->align(i); + if (inactb->value()) b->deactivate(); + else b->activate(); w->redraw(); } @@ -64,19 +66,28 @@ int main(int argc, char **argv) { Fl_Window window(400,400); ::w = &window; Fl_Button b(140,160,120,120,"Pixmap"); ::b = &b; - (new Fl_Pixmap(porsche_xpm))->label(&b); - leftb = new Fl_Toggle_Button(25,75,50,25,"left"); + Fl_Pixmap *pixmap = new Fl_Pixmap(porsche_xpm); + Fl_Pixmap *depixmap; + depixmap = (Fl_Pixmap *)pixmap->copy(); + depixmap->inactive(); + + b.image(pixmap); + b.deimage(depixmap); + + leftb = new Fl_Toggle_Button(25,50,50,25,"left"); leftb->callback(button_cb); - rightb = new Fl_Toggle_Button(75,75,50,25,"right"); + rightb = new Fl_Toggle_Button(75,50,50,25,"right"); rightb->callback(button_cb); - topb = new Fl_Toggle_Button(125,75,50,25,"top"); + topb = new Fl_Toggle_Button(125,50,50,25,"top"); topb->callback(button_cb); - bottomb = new Fl_Toggle_Button(175,75,50,25,"bottom"); + bottomb = new Fl_Toggle_Button(175,50,50,25,"bottom"); bottomb->callback(button_cb); - insideb = new Fl_Toggle_Button(225,75,50,25,"inside"); + insideb = new Fl_Toggle_Button(225,50,50,25,"inside"); insideb->callback(button_cb); - overb = new Fl_Toggle_Button(275,75,100,25,"text over"); + overb = new Fl_Toggle_Button(25,75,100,25,"text over"); overb->callback(button_cb); + inactb = new Fl_Toggle_Button(125,75,100,25,"inactive"); + inactb->callback(button_cb); if (!dvisual) Fl::visual(FL_RGB); window.resizable(window); window.end(); @@ -85,5 +96,5 @@ int main(int argc, char **argv) { } // -// End of "$Id: pixmap.cxx,v 1.4.2.3.2.1 2001/08/05 23:58:54 easysw Exp $". +// End of "$Id: pixmap.cxx,v 1.4.2.3.2.2 2001/11/19 01:06:45 easysw Exp $". // -- cgit v1.2.3