From 05cd337c05c0b2775004d7a5e6be39271a5d4be8 Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Wed, 23 Aug 2006 11:47:58 +0000 Subject: Fixed WIN32 zero size window issue (STR #1387) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5346 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- CHANGES | 1 + src/Fl_win32.cxx | 4 ++++ test/hello.cxx | 61 ++++++++++++++++++-------------------------------------- 3 files changed, 24 insertions(+), 42 deletions(-) diff --git a/CHANGES b/CHANGES index d8a30fb30..c1c8e74b2 100644 --- a/CHANGES +++ b/CHANGES @@ -1,5 +1,6 @@ CHANGES IN FLTK 1.1.8 + - Fixed WIN32 zero size window issue (STR #1387) - Fixed Sudoku window positioning (STR #1398) - Fluid Code Declarations can now handle C++ style comments (STR #1383) diff --git a/src/Fl_win32.cxx b/src/Fl_win32.cxx index 7b615dbc2..8173ecd31 100644 --- a/src/Fl_win32.cxx +++ b/src/Fl_win32.cxx @@ -1128,6 +1128,10 @@ void Fl_Window::resize(int X,int Y,int W,int H) { W += 2*bx; H += 2*by+bt; } + // avoid zero size windows. A zero sized window on Win32 + // will cause continouly new redraw events. + if (W<=0) W = 1; + if (H<=0) H = 1; SetWindowPos(i->xid, 0, X, Y, W, H, flags); } } diff --git a/test/hello.cxx b/test/hello.cxx index 178d52934..2abc64c45 100644 --- a/test/hello.cxx +++ b/test/hello.cxx @@ -1,45 +1,22 @@ -// -// "$Id$" -// -// Hello, World! program for the Fast Light Tool Kit (FLTK). -// -// Copyright 1998-2005 by Bill Spitzak and others. -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Library General Public -// License as published by the Free Software Foundation; either -// version 2 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Library General Public License for more details. -// -// You should have received a copy of the GNU Library General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -// USA. -// -// Please report all bugs and problems on the following page: -// -// http://www.fltk.org/str.php -// - #include -#include -#include +#include +#include + +int main(int argc, char **argv) +{ + Fl_Window *window = new Fl_Window(300,200); + window->clear_border(); // no border!! + window->show(); + + // wait some time + Fl::wait(10.); + window->size(0,0); -int main(int argc, char **argv) { - Fl_Window *window = new Fl_Window(300,180); - Fl_Box *box = new Fl_Box(FL_UP_BOX,20,40,260,100,"Hello, World!"); - box->labelfont(FL_BOLD+FL_ITALIC); - box->labelsize(36); - box->labeltype(FL_SHADOW_LABEL); - window->end(); - window->show(argc, argv); - return Fl::run(); -} + while(true) { + printf("LOOP "); + // doesn't wait.... + Fl::wait(100.); + } -// -// End of "$Id$". -// + return 0; +} \ No newline at end of file -- cgit v1.2.3