From 7ebbe0baf453ba66324c830bf7156d2ccaec2f02 Mon Sep 17 00:00:00 2001 From: Lauri Kasanen Date: Fri, 5 Sep 2014 12:45:49 +0000 Subject: [PATCH] Add a two-window focus test git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10277 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- test/Makefile | 4 ++++ test/twowin.cxx | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 test/twowin.cxx diff --git a/test/Makefile b/test/Makefile index 4570df628..c972d7d18 100644 --- a/test/Makefile +++ b/test/Makefile @@ -91,6 +91,7 @@ CPPFILES =\ tile.cxx \ tiled_image.cxx \ tree.cxx \ + twowin.cxx \ valuators.cxx \ utf8.cxx @@ -159,6 +160,7 @@ ALL = \ tile$(EXEEXT) \ tiled_image$(EXEEXT) \ tree$(EXEEXT) \ + twowin$(EXEEXT) \ valuators$(EXEEXT) \ cairotest$(EXEEXT) \ utf8$(EXEEXT) @@ -470,6 +472,8 @@ tiled_image$(EXEEXT): tiled_image.o tree$(EXEEXT): tree.o tree.cxx: tree.fl ../fluid/fluid$(EXEEXT) +twowin$(EXEEXT): twowin.o + valuators$(EXEEXT): valuators.o valuators.cxx: valuators.fl ../fluid/fluid$(EXEEXT) diff --git a/test/twowin.cxx b/test/twowin.cxx new file mode 100644 index 000000000..3f438fd90 --- /dev/null +++ b/test/twowin.cxx @@ -0,0 +1,54 @@ +// +// Cross-window focus test program for the Fast Light Tool Kit (FLTK). +// +// Copyright 1998-2014 by Bill Spitzak and others. +// +// This library is free software. Distribution and use rights are outlined in +// the file "COPYING" which should have been included with this file. If this +// file is missing or damaged, see the license at: +// +// http://www.fltk.org/COPYING.php +// +// Please report all bugs and problems on the following page: +// +// http://www.fltk.org/str.php +// + +#include +#include +#include +#include + +static Fl_Input *b1, *b2; + +static void cb1(Fl_Widget *, void *) { + b2->take_focus(); +} + +static void cb2(Fl_Widget *, void *) { + b1->take_focus(); +} + +int main() { + + Fl_Double_Window *win1 = new Fl_Double_Window(200, 200); + Fl_Button *bb1 = new Fl_Button(10, 10, 100, 100, "b1"); + bb1->callback(cb1); + b1 = new Fl_Input(10, 150, 100, 25); + win1->label("win1"); + win1->end(); + + Fl_Double_Window *win2 = new Fl_Double_Window(200, 200); + Fl_Button *bb2 = new Fl_Button(10, 10, 100, 100, "b2"); + bb2->callback(cb2); + b2 = new Fl_Input(10, 150, 100, 25); + win2->label("win2"); + win2->end(); + + win1->position(200, 200); + win2->position(400, 200); + + win1->show(); + win2->show(); + return Fl::run(); +}