diff --git a/FL/Fl_Group.H b/FL/Fl_Group.H index 9f394c833..1f6240070 100644 --- a/FL/Fl_Group.H +++ b/FL/Fl_Group.H @@ -1,7 +1,7 @@ // // Group header file for the Fast Light Tool Kit (FLTK). // -// Copyright 1998-2021 by Bill Spitzak and others. +// Copyright 1998-2022 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 @@ -152,6 +152,14 @@ public: dimensions of the box are scaled to the new size. Widgets outside the box are moved. + \note The resizable of a group \b must be one of + - NULL + - the group itself + - a direct child of the group. + \note If you set any other widget that is not a direct child of the group as + its resizable then the behavior is undefined. This is \b not checked by + Fl_Group for historical reasons. + In these examples the gray area is the resizable: \image html resizebox1.png diff --git a/src/Fl_Group.cxx b/src/Fl_Group.cxx index 99b442a4e..aa663919f 100644 --- a/src/Fl_Group.cxx +++ b/src/Fl_Group.cxx @@ -501,6 +501,7 @@ void Fl_Group::remove(int index) { if (index < 0 || index >= children_) return; Fl_Widget &o = *child(index); if (&o == savedfocus_) savedfocus_ = 0; + if (&o == resizable_) resizable_ = this; if (o.parent_ == this) { // this should always be true o.parent_ = 0; }