diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 2005-03-24 13:14:43 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 2005-03-24 13:14:43 +0000 |
| commit | 2bf787ce693cadea52097cdeadafdd509418754a (patch) | |
| tree | fa885b731cf02942c18c5ef4799d6aae9ce14acd | |
| parent | 9e84259e6cb2102f3d2f996b0d2ab919abcd67a3 (diff) | |
Resizing or moving a window through the widget panel now resets the
window size_range() so that the window can still be resized through the
window manager controls...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4180 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | CHANGES | 2 | ||||
| -rw-r--r-- | fluid/Fl_Widget_Type.cxx | 18 |
2 files changed, 19 insertions, 1 deletions
@@ -2,6 +2,8 @@ CHANGES IN FLTK 1.1.7 - Documentation fixes (STR #648, STR #692, STR #730, STR #744, STR #745) + - FLUID windows that are resized through the widget panel + now remain resizable by the window manager. - Increased the size of the background image used by the plastic scheme to reduce the CPU load of redraws (STR #769) diff --git a/fluid/Fl_Widget_Type.cxx b/fluid/Fl_Widget_Type.cxx index af8331d45..5557eb679 100644 --- a/fluid/Fl_Widget_Type.cxx +++ b/fluid/Fl_Widget_Type.cxx @@ -423,7 +423,11 @@ void x_cb(Fl_Value_Input *i, void *v) { if (o->selected && o->is_widget()) { Fl_Widget *w = ((Fl_Widget_Type *)o)->o; w->resize((int)i->value(), w->y(), w->w(), w->h()); - if (w->window()) w->window()->redraw(); + if (w->window()) w->window(); + if (o->is_window()) { + ((Fl_Window *)w)->size_range(gridx, gridy, Fl::w(), Fl::h(), + gridx, gridy, 0); + } } } } @@ -441,6 +445,10 @@ void y_cb(Fl_Value_Input *i, void *v) { Fl_Widget *w = ((Fl_Widget_Type *)o)->o; w->resize(w->x(), (int)i->value(), w->w(), w->h()); if (w->window()) w->window()->redraw(); + if (o->is_window()) { + ((Fl_Window *)w)->size_range(gridx, gridy, Fl::w(), Fl::h(), + gridx, gridy, 0); + } } } } @@ -458,6 +466,10 @@ void w_cb(Fl_Value_Input *i, void *v) { Fl_Widget *w = ((Fl_Widget_Type *)o)->o; w->resize(w->x(), w->y(), (int)i->value(), w->h()); if (w->window()) w->window()->redraw(); + if (o->is_window()) { + ((Fl_Window *)w)->size_range(gridx, gridy, Fl::w(), Fl::h(), + gridx, gridy, 0); + } } } } @@ -475,6 +487,10 @@ void h_cb(Fl_Value_Input *i, void *v) { Fl_Widget *w = ((Fl_Widget_Type *)o)->o; w->resize(w->x(), w->y(), w->w(), (int)i->value()); if (w->window()) w->window()->redraw(); + if (o->is_window()) { + ((Fl_Window *)w)->size_range(gridx, gridy, Fl::w(), Fl::h(), + gridx, gridy, 0); + } } } } |
