If the resizable() of an Fl_Group is deleted it is automatically
removed from the group.
New: to avoid dangling resizable() pointers the resizable widget
is set to the group itself.
Amended by Albrecht:
- rename union member variables as discussed
- add comments to new array_ union members
Fixes#96
Signed-off-by: Albrecht Schlosser <albrechts.fltk@online.de>
- remove obsolete svn '$Id$' tags from all source files
- update .fl files and generated files accordingly
- replace 'http://www.fltk.org' URL's with 'https://...'
- replace bug report URL 'str.php' with 'bugs.php'
- remove trailing whitespace
- fix other whitespace errors flagged by Git
- add and/or fix missing or wrong standard headers
- convert tabs to spaces in all source files
The only relevant code changes are in the fluid/ folder where
some .fl files and other source files were used to generate
the '$Id' headers and footers.
If a user program accidentally deletes the "current" group, then
the pointer would still point at the deleted widget. This commit
prevents this and makes the Fl_Group's parent the current group.
Fixes issue #88.
Metrowerks CodeWarrior was an ancient macOS compiler (discontinued
since 2005) that defined the macro __MWERKS__. Code using this macro
and several comments have been removed.
Fl_Rect.H is no longer included by Fl_Group.H to avoid unnecessary
dependencies on Fl_Rect.H. Currently it is only needed to access the
array returned by the protected method bounds().
Also clarified documentation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12827 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
I renamed variables (more consistent names), fixed code formatting, and
refactored the code around the resizing of widgets. I put common code
before and after the conditional '#if 1' that separated old code from
new "much simpler code from Francois Ostiguy" as a comment in the existing
code mentioned. Then I deactivated the old code and activated the new
"much simpler" code. Tested, works well.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12813 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Windows are now rescaled with a call to Fl_Window::resize() which has been slightly modified.
Static member variable bool Fl_Window_Driver::in_resize_after_scale_change is created,
and is true if and only if Fl_Window::resize() is called by Fl_Window_Driver::resize_after_scale_change().
This new flag allows Fl_Window::resize() to perform correctly the rescaling of the window.
Fl_Gl_Window::resize() and Fl_Double_Window::resize() also consult the value of
the Fl_Window_Driver::in_resize_after_scale_change flag.
The platform-specific Fl_WinAPI_Window_Driver::resize() and Fl_X11_Window_Driver::resize()
also use the Fl_Window_Driver::in_resize_after_scale_change flag.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12349 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The new method Fl_Group::bounds() replaces Fl_Group::sizes() whose
internal array structure was not documented.
Fl_Group::bounds() uses the new and documented class Fl_Rect for its
internal structure.
src/Fl_Tile.cxx now uses bounds() instead of sizes().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12302 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
As proposed in STR #2750 and #2752: only status quo, i.e.:
- no new method Fl_Input_Choice::maximum_size(int) (STR #2750 and #2752)
- no handling of FL_Down key to open menu (STR #2752)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12192 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Make clear that some alignment bit combinations are "illegal" and yield
undefined behavior that can be changed without notice.
Fix label alignment in some border cases where illegal bit combinations like
FL_ALIGN_LEFT and FL_ALIGN_RIGHT or FL_ALIGN_TOP and FL_ALIGN_BOTTOM are
both set, respectively.
Todo: There appears to be inconsistent handling WRT these "illegal" cases,
for instance with inside labels as opposed to outside labels, such that
the behavior seems to be unpredictable. See test/label.cxx.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12181 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Methods Fl::event_x_pixel() and Fl::event_y_pixel() committed at r.10941
are removed. Instead method Fl_Gl_Window::pixels_per_unit() is added.
The documentation explains in more detail how to write cross-platform
FLTK code supporting high resolution OpenGL windows on retina displays.
The examples/OpenGL3test.cxx app exercises Fl_Gl_Window::pixels_per_unit().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10945 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
in pixel units that differ from FLTK units for OpenGL windows mapped to a retina display.
On non Mac OS platforms, these are synonyms of Fl::event_x() and Fl::event_y().
The example/OpenGL3test demo program is modified to call these new functions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10941 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
up mass deletes (lots of children in a group) significantly.
See also STR #2409.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7718 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
of widgets if the widget's index is known. Thanks to Greg for the
patch. See also STR #2409.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7693 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
after deletion (STR #1306). This is all I could find, but maybe there are
more places in the code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7115 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
because fl_throw_focus and fl_fix_focus would send events
that could access deleted widgets. This must be fixed first.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7039 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
fltk.development in "Fl_Group::clear SLOW!" on Feb. 06/07, 2010 (no STR)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7038 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
(STR #1894). Fl_Group::clear() removes widget by widget (one at a time) to
allow widgets to remove other related widgets from the same group, when they
are deleted.
Also fixed a bug in Fl_Value_Input (added a destructor), because it used
a non-Fl_Group widget as parent of another widget.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6623 ea41ed52-d2ee-0310-a9c1-e6b18d33e121