Commit Graph

69 Commits

Author SHA1 Message Date
Albrecht Schlosser c0e07d3452 Add range check to Fl_Group::child(int)
Returns NULL if n is out of range to prevent accessing undefined
memory.
2024-10-25 02:39:47 +02:00
ManoloFLTK b5516449a6 Wayland: fix interactive moving and resizing of a subwindow - cont'd (#987)
This commit removes changes in class Fl_Group introduced in 1c6a0c1.
2024-07-01 17:02:27 +02:00
ManoloFLTK 1c6a0c1a8f Wayland: fix interactive moving and resizing of a subwindow - cont'd (#987)
This fix requires to be able to recognize whether Fl_Wayland_Window_Driver::resize() is called
by a resize operation of an encompassing widget or not.
To do that, private static int variable group_resize_depth_ is added to class Fl_Group
and an accessor to this variable is added to class Fl_Window_Driver.
2024-06-29 14:57:54 +02:00
Matthias Melcher 5c482f9d9b
Fix and update alignment #346 (#701)
* interactive layout alignment rewritten
* interface for new alignment rules
* new alignment dialog box
* user defined layout rules added
* layout rules can be stored in projects, settings, and external files
* Valgrind verification
2023-03-18 17:33:27 +01:00
Matthias Melcher 8826dca106
Add close buttons for individual tabs in Fl_Tabs (#628)
Add close buttons for Fl_Tabs
Introducing callback reasons
FLUID shows all FL_WHEN_... options
Adding Fl_Tabs overflow types
Improved test/tabs to show new features
2023-01-05 13:51:30 +01:00
Albrecht Schlosser a1ebe027be Fix a doxygen warning and improve "file list" contents
FL/Fl_Group.H: add `\brief` keyword
src/Fl_Group.cxx: fix warning: the '#' in '#include' must be escaped
2023-01-02 15:56:56 +01:00
Matthias Melcher 44c874b731
Use `FL_OVERRIDE` for all overridden virtual methods (#611)
FL_OVERRIDE is defined as `override` for C++11 and higher
FL_OVERRIDE is defined as `override` for VisualC 2015 and newer
Don't interfere with Fl_Widget::override()
2022-12-30 19:14:36 +01:00
Matthias Melcher 33f01ecb83
Added Fl_Group::on_insert/on_remove/on_move (#527) 2022-11-01 20:45:31 +01:00
Albrecht Schlosser a918292547 Fix removal and deletion of the resizable() of Fl_Group
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.
2022-10-28 17:37:18 +02:00
Greg Ercolano c7ffd8e72a Doc proper removal/destruction of a widget from its group.
This modification as per small thread on fltk.coredev:
Sep 19, 2022, Subject: Addition to Fl_Group docs
2022-10-21 23:44:08 -07:00
Albrecht Schlosser 091712bea8 Fix default size_range() calculation (issue #392, STR 3352) 2022-03-01 13:45:51 +01:00
Albrecht Schlosser 39b5ae9e6e Fix Fl_Window::size_range() documentation (STR 3352)
"Tiny window problem if child group larger than window"

See Greg's comment 4: "something is wrong here: either the logic or
the docs are incorrect, not sure which."

It turned out that both were incorrect.

Since we fixed the code this commit completes the STR by fixing the
docs as well so they match the behavior.
2021-12-06 19:49:16 +01:00
Albrecht Schlosser 9abbff2078 Add virtual int Fl_Group::delete_child(int n) (STR 3218)
This is a convenience method that does range checking (index n),
removes the child given by index n from the group and deletes it.
2021-05-25 17:39:20 +02:00
Duncan Gibson 46c1500bf3 fix doxygen links in Fl_Group.H
fix dead links to Fl_Group::resizable(Fl_Box *box)
reorder paragraphs to highlight different behaviour
add link to new "How does resizing work?" chapter in dox
2020-07-15 19:43:21 +02:00
Robert Schumacher 8d5eed3c82 Convert Fl_Group::array_ to union to better represent its behavior
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>
2020-07-10 18:09:28 +02:00
Albrecht Schlosser f09e17c3c5 Remove $Id$ tags, update URL's, and more
- 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.
2020-07-06 20:28:20 +02:00
Greg Ercolano a51012db9b Modified indent + bracing for author's example code 2019-07-26 12:18:52 -07:00
Albrecht Schlosser efc3ec1b7b Remove unnecessary dependency on FL/Fl_Rect.H.
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
2018-04-12 12:58:10 +00:00
Albrecht Schlosser 0c210ae867 Introduce Fl_Group::bounds(), deprecate Fl_Group::sizes().
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
2017-07-07 19:16:40 +00:00
Albrecht Schlosser b93f8d775a Documentation: fix resizable images that were not displayed correctly.
The resizable effect was not shown proportionally correct.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10446 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-11-10 22:09:11 +00:00
Lauri Kasanen 795342693d Don't grab navkeys with modifiers, as the app may want them. STR #3104
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10261 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-08-29 12:10:11 +00:00
Greg Ercolano 4f4a8fc3c7 Modifications to all LGPL headers for STR #2685.
(to clarify static exception LGPL by changing license references)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19 04:49:30 +00:00
Albrecht Schlosser 7c8ef98a04 Documentation updates: removed three more \todo's.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8157 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-01-01 14:01:53 +00:00
Greg Ercolano 9e2d044caa As per thread on fltk.development: "RFC: Docs - getting rid of .eps files"
Summary:
    Get rid of eps files, 
    change all doxygen '\image latex' references to eps files to png/jpeg instead,
    convert doxygen images from gif -> png (to support html+latex).

Actual operations:

		1) svn remove *.eps
		2) convert all gifs ->  png
		3) svn remove *.gif
		4) svn add *.png
		5) For jpeg/png images, change all \image latex foo.eps .. ->  \image latex foo.[jpg,png] ..
		6) For gif images, change all \image html foo.gif .. ->  \image html foo.png
		   and (harder to do): change \image latex foo.eps .. ->  \image latex foo.png ..
		7) Remove EPSFILES macro from documentation/Makefile 
		   and remove eps related dependencies that were added recently



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7981 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-08 23:53:04 +00:00
Matthias Melcher e454f97acc Fixed Copyright to 2010.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28 21:06:39 +00:00
Albrecht Schlosser 5a3aced3ab New method: Fl_Group::remove(int index) to speed up the removal
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
2010-08-31 10:01:59 +00:00
Matthias Melcher 762d02fb62 Using Fl_Plugin feature to automatically draw OpenGL (sub)windows. No extra coding needs to be done. Just call Fl_Printer::print_widget(...). The Fl_Gl_Printer device can (and should) be removed or at least made inaccessible.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7280 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-16 22:51:31 +00:00
Albrecht Schlosser ea31edb241 Added new virtual methods, as discussed in fltk.development:
virtual Fl_Group*  Fl_Widget::as_group() const
  virtual Fl_Window* Fl_Widget::as_window() const
Todo: documentation is not yet complete.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7074 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-02-13 12:25:58 +00:00
Matthias Melcher 6d4422d3e5 Changed the flags_ field into unsigned int, so we can safely use all 32 bits
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6907 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-09-28 14:34:52 +00:00
Matthias Melcher a735162e98 Starting to consolidate all bits used in Fl_Widget::flags_
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6904 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-09-27 11:39:02 +00:00
Fabien Costantini 15489bda1b Major documentation update including: now html doc API is sorted, navigation problems/side effects fixed, html tags replaced by proper doxygen commands, parameters command switched from a to p. Includes a pdf update.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6716 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-03-24 01:40:44 +00:00
engelsman ced863d334 converted html tags to doxygen commands in documentation/src/subclassing.dox
this also required tweaking parameter names and doxygen comments in
Fl_Widget.H, Fl_Group.H, Fl_Widget.cxx and fl_boxtype.cxx 




git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6705 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-03-21 17:08:23 +00:00
Albrecht Schlosser 4ac63b788a Improved image layout in Fl_Group::resizable() docs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6656 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-02-09 11:41:56 +00:00
Albrecht Schlosser 3ebc315ad2 Documentation updates, in parts concerning changes done for STR #1894.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-02-08 17:26:02 +00:00
Matthias Melcher 167d767e0f Changed the copyright to 2009 for header files. Still todo: src and test directory.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6614 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01 16:11:32 +00:00
Albrecht Schlosser ac7c97572c Fl_Group::clip_children() is now public (STR #2017)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6467 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 10:23:37 +00:00
Fabien Costantini 5a71578b1b Doxygen pdf documentation: Changed pdf mime type to application/pdf. Removed all Widget class headers from file section as they already are in the class section, this saves many pages. Also disabled the referenced by/from systematic inserts for each functions as this is more a core developer documentation feature than a fltk user manual feature, also saves many pages. Didn't use the LATEX_COMPACT feature yet, not happy with its result, will comment it later.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6439 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-15 13:46:06 +00:00
Fabien Costantini d272c1b43f Doxygen PDF Documentation: Added image latex tags, added missing eps corresponding images (most of them in B/W) for the widget classes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6437 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-15 11:27:29 +00:00
Albrecht Schlosser acbb5af54b doxygen docs for some missing Fl_Group methods, updated Fl::focus().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6351 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-28 22:25:23 +00:00
Albrecht Schlosser a829ed2bd5 documented one missing remove() method.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6325 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-21 00:35:54 +00:00
Fabien Costantini ae697b80b2 Doxygen documentation : took the opportunity to update copyright info as we modified already in batch almost all sources, added also a fil doxygen command to class headers to harmonize with original matt Fl_Widget dox. format.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-16 07:26:22 +00:00
Fabien Costantini a99524ef2d Doxygen documentation. Completed Fl class, added a todo related to recent Fl API to document. Matt?. More cosmetics have been done, replaced *all* <pre> </pre> tags by \code \endcode sequences.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6260 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-15 19:21:20 +00:00
Fabien Costantini d55dfeb5e9 Doxygen documentation. Fixed somes typos and also H4 remanent misplaced tags and comments.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6258 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-15 17:46:42 +00:00
Fabien Costantini ce4d0fd5d8 Doxygen Documentation WP4 Done. Has all documentation content but should be completed in increment 2. Registered for WP5.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6239 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-14 15:45:27 +00:00
Fabien Costantini 9bf19e2329 WP1 merged from my branch, WP2 reserved, todo list updated.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6231 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-13 22:33:03 +00:00
Matthias Melcher 88c0d727aa All widget coordinates are now 32 bit. Beware though, on a 16 bit graphics system, line drawing and window positioning is still messed up for coordinates beyond 16 bit. See STR #1929.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6112 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-04-23 15:07:13 +00:00
Michael R Sweet 681e6ae946 Add clip_children() method (STR #1844)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5993 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-12-15 16:42:00 +00:00
Matthias Melcher 770147baf6 Applied hidden copy / ctor patch as suggested in STR 860
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4421 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-07-15 09:34:53 +00:00
Michael R Sweet 1c399af444 Update source file headers with STR web page.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16 00:13:17 +00:00
Michael R Sweet add37faa25 Copyright updates.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:55:12 +00:00