diff options
| author | Bill Spitzak <spitzak@gmail.com> | 2000-01-11 08:20:02 +0000 |
|---|---|---|
| committer | Bill Spitzak <spitzak@gmail.com> | 2000-01-11 08:20:02 +0000 |
| commit | d43eac1e38ca61510a6c2e125a5ff942de11e141 (patch) | |
| tree | 00f754be27a66b61d0c34503616e1ead690e66fe | |
| parent | 49b8502b834313ba87133ce803b820c2c4fbbbe2 (diff) | |
Programs can now resize() their windows even if they are not resizable()
on X (this already worked on Win32).
Changed the resize demo program to test this.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.0@981 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | src/Fl_x.cxx | 9 | ||||
| -rw-r--r-- | test/resize.fl | 38 |
2 files changed, 27 insertions, 20 deletions
diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx index 413a3723a..44909be2e 100644 --- a/src/Fl_x.cxx +++ b/src/Fl_x.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_x.cxx,v 1.24.2.8 1999/11/10 09:18:31 bill Exp $" +// "$Id: Fl_x.cxx,v 1.24.2.9 2000/01/11 08:19:59 bill Exp $" // // X specific code for the Fast Light Tool Kit (FLTK). // @@ -562,9 +562,10 @@ void Fl_Window::resize(int X,int Y,int W,int H) { x(X); y(Y); } if (resize_from_program && shown()) { - if (is_a_resize) + if (is_a_resize) { + if (!resizable()) size_range(w(),h(),w(),h()); XMoveResizeWindow(fl_display, i->xid, X, Y, W>0 ? W : 1, H>0 ? H : 1); - else + } else XMoveWindow(fl_display, i->xid, X, Y); } } @@ -872,5 +873,5 @@ void Fl_Window::make_current() { #endif // -// End of "$Id: Fl_x.cxx,v 1.24.2.8 1999/11/10 09:18:31 bill Exp $". +// End of "$Id: Fl_x.cxx,v 1.24.2.9 2000/01/11 08:19:59 bill Exp $". // diff --git a/test/resize.fl b/test/resize.fl index 7524bc79e..bcc880de0 100644 --- a/test/resize.fl +++ b/test/resize.fl @@ -1,48 +1,54 @@ -# data file for FL User Interface Designer (fluid) -version 0.99 +# data file for the Fltk User Interface Designer (fluid) +version 1.00 +header_name {.h} +code_name {.cxx} gridx 10 gridy 10 snap 3 Function {} {open } { - Fl_Window {} {open selected - xywh {490 248 366 261} resizable + Fl_Window {} {open + xywh {333 489 366 261} visible } { Fl_Button {} { label {@<-} callback {Fl_Window* w = o->window(); -w->position(w->x()-50,w->y());} open - xywh {20 40 40 40} labeltype 2 +w->position(w->x()-50,w->y());} + xywh {20 40 40 40} labeltype SYMBOL_LABEL } Fl_Button {} { label {@2->} callback {Fl_Window* w = o->window(); -w->position(w->x(),w->y()+50);} open - xywh {60 80 40 40} labeltype 2 +w->position(w->x(),w->y()+50);} + xywh {60 80 40 40} labeltype SYMBOL_LABEL } Fl_Button {} { label {@->} callback {Fl_Window* w = o->window(); -w->position(w->x()+50,w->y());} open - xywh {100 40 40 40} labeltype 2 +w->position(w->x()+50,w->y());} + xywh {100 40 40 40} labeltype SYMBOL_LABEL } Fl_Button {} { label {@8->} callback {Fl_Window* w = o->window(); -w->position(w->x(),w->y()-50);} open - xywh {60 0 40 40} labeltype 2 +w->position(w->x(),w->y()-50);} + xywh {60 0 40 40} labeltype SYMBOL_LABEL } Fl_Button {} { label grow callback {Fl_Window* w = o->window(); -w->size(w->w()+50, w->h()+50);} open - xywh {30 130 110 40} labeltype 2 labelfont 1 labelsize 18 +w->size(w->w()+20, w->h()+20);} + xywh {30 130 110 40} labeltype SYMBOL_LABEL labelfont 1 labelsize 18 } Fl_Button {} { label shrink callback {Fl_Window* w = o->window(); -w->size(w->w()/2+1, w->h()/2+1);} open - xywh {30 190 110 40} labeltype 2 labelfont 1 labelsize 18 +w->size(w->w()-20, w->h()-20);} + xywh {30 190 110 40} labeltype SYMBOL_LABEL labelfont 1 labelsize 18 + } + Fl_Box {} { + label {This is a test of program-generated resize() of a window. The window should move or resize once when each button is clicked. The program and window manager should not go into fits echoing resizes back and forth!} selected + xywh {150 10 160 220} box BORDER_BOX align 148 } } } |
