diff options
Diffstat (limited to 'test/cube.cxx')
| -rw-r--r-- | test/cube.cxx | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test/cube.cxx b/test/cube.cxx index 4598921a9..b7bf82614 100644 --- a/test/cube.cxx +++ b/test/cube.cxx @@ -157,8 +157,41 @@ void makeform(const char *name) { form->end(); } +// added to demo printing +#include <FL/Fl_Sys_Menu_Bar.H> +#include <FL/Fl_Gl_Printer.H> + +void print_cb(Fl_Widget *w, void *data) +{ + Fl_Gl_Printer printer; + Fl_Window *win = Fl::first_window(); + if(!win) return; + if( printer.start_job(1) ) return; + if( printer.start_page() ) return; + printer.scale(0.68,0.68); + printer.print_widget( win ); + printer.print_gl_window( cube, cube->x(), cube->y() ); + printer.print_gl_window( cube2, cube2->x(), cube2->y() ); + printer.end_page(); + printer.end_job(); +} +// end of printing demo + int main(int argc, char **argv) { makeform(argv[0]); + // added to demo printing + form->begin(); + static Fl_Menu_Item items[] = { + { "Menu", 0, 0, 0, FL_SUBMENU }, + { "Print", 0, print_cb, 0, 0 }, + { 0 }, + { 0 } + }; + Fl_Sys_Menu_Bar *menubar_; + menubar_ = new Fl_Sys_Menu_Bar(0, 0, 40, 25); + menubar_->menu(items); + form->end(); + // end of printing demo speed->bounds(4,0); speed->value(cube->speed = cube2->speed = 1.0); size->bounds(4,0.01); |
