summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Spitzak <spitzak@gmail.com>2000-01-11 08:20:02 +0000
committerBill Spitzak <spitzak@gmail.com>2000-01-11 08:20:02 +0000
commitd43eac1e38ca61510a6c2e125a5ff942de11e141 (patch)
tree00f754be27a66b61d0c34503616e1ead690e66fe
parent49b8502b834313ba87133ce803b820c2c4fbbbe2 (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.cxx9
-rw-r--r--test/resize.fl38
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
}
}
}