Commit Graph

11041 Commits

Author SHA1 Message Date
Greg Ercolano cee69943e5 Small FNFC doc clarification; "pilots" -> "presets" 2023-09-20 23:34:43 -07:00
ManoloFLTK a26e12590c Step back commit 8248183 that's unsatisfactory while resizing windows 2023-09-18 13:06:13 +02:00
ManoloFLTK be07e5448f Improve reuse of mmap'ed data by Wayland buffers 2023-09-17 13:05:50 +02:00
ManoloFLTK 824818303c Restore Doxygen doc of fl_graphics_driver 2023-09-17 09:00:48 +02:00
ManoloFLTK 5fa994fcfc Wayland.dox: rephrase how FLTK and Wayland interact 2023-09-17 07:28:05 +02:00
ManoloFLTK 5e15c34512 Wayland.dox: mention preprocessor variable FLTK_USE_WAYLAND 2023-09-16 07:18:41 +02:00
ManoloFLTK 709decd35b README.txt: fix Wayland-related configure options 2023-09-15 12:27:33 +02:00
ManoloFLTK aca9d09cb9 Wayland.dox: add miscellaneous complementary information 2023-09-15 11:31:08 +02:00
ManoloFLTK c5433d6c1e Update libdecor to commit 422abaf9 dated 2023-09-07
The libdecor commit title is "libdecor-gtk: handle touch events"
2023-09-13 11:51:39 +02:00
Albrecht Schlosser ede381c005 Fix Visual Studio shared library build
Todo: fluid-shared can't (yet) be built agains the shared fltk lib
  because of some linker errors. Needs investigation.

Note: fluid-shared is basically a test program to demonstrate linking
  against the shared FLTK libs but doesn't work yet using VS (MSVC).
  This is no problem for the functionality.
2023-09-12 23:18:46 +02:00
Albrecht Schlosser e44a988c4a Fix unittest object file list in test/Makefile (#683) 2023-09-08 15:30:06 +02:00
Albrecht Schlosser f5afea3421 Update Doxyfile.in again, now using all defined doxygen tags
The process to generate the docs now uses the full Doxyfile as given
by `doxygen -u Doxyfile.in` with a specific doxygen version, in this
commit version 1.8.14.

There's only one addition: 'HTML_COLORSTYLE = TOGGLE' which has been
added to doxygen in version 1.9.5. We're using it now to give the user
the choice to select a "dark mode" or "light mode" theme if the docs
are generated with doxygen 1.9.5 or later.

Unknown doxygen tags are now filtered silently and logged in files
documentation/Doxyfile_error.log and documentation/Doxybook_error.log,
respectively.
2023-09-07 18:34:04 +02:00
Albrecht Schlosser 41ca8f2050 Update Doxyfile.in from doxygen version 1.5.5 to 1.8.14
Most (if not all) doxygen tags introduced after 1.5.5 are commented out
  to avoid doxygen warnings about obsolete or unknown tags, except
  those tags that need a specific value.

Add 'HTML_COLORSTYLE = TOGGLE' (since 1.9.5) for better user experience.
  With this tag users can switch between dark and light mode *if*
  the docs were generated with doxygen 1.9.5 or later.

Enable search engine.

Log doxygen conversion errors and warnings to Doxy*_error.log,
  i.e. silence the doxygen conversion process.

documentation/src/index.dox: Remove background color from html
  index page for better contrast when using dark mode.
2023-09-07 18:34:04 +02:00
Matthias Melcher 14f85de28f FLUID: Fixes visibility of Compact button 2023-09-07 16:06:32 +02:00
Albrecht Schlosser a75024213f Fix doxygen "undocumented parameter" warnings
... and argument order in FL_INLINE_CALLBACK_2 macro
2023-09-07 12:01:43 +02:00
Matthias Melcher 5ef29202ed Fixes Fl_Tabs to be more robust.
No children in Fl_Tabs should no longer crash the draw
method. Also, drawing an Fl_Tabs with no children inside
is now defined and documented.
2023-09-06 17:02:13 +02:00
Matthias Melcher a683752e4b Fixes warning on unused variable. 2023-09-05 15:31:09 +02:00
Matthias Melcher 2e38007d1f FLUID: increases readability
- removed some direct filename manipulation
- central place to generate file names and paths
- fixes command line filename override if no actual
  batch command is given
2023-09-05 15:11:09 +02:00
Matthias Melcher 6bb5a81cee Adds some convenience methods.
fl_filename_absolute can no generate a path using arbitrary source paths.
Fl_Menu_ adds find_item_with_user_data and find_item_with_argument
Fl_String adds find(string, start)
2023-09-05 14:45:57 +02:00
Albrecht Schlosser b2a41e08c3 Introduce Fl_Flex::need_layout() to optimize layout calculation
This is intended to reduce layout calculation and resizing of child
widgets until necessary before the Fl_Flex widget and all its
children are drawn in Fl_Flex::draw().

With this commit users no longer need to call layout() to layout the
Fl_Flex widget and its children properly unless they change widget
sizes or show/hide children.
2023-09-04 16:16:42 +02:00
Matthias Melcher d7dc491b5a Adds images for documentation of compact buttons. 2023-09-03 00:10:24 +02:00
Matthias Melcher 5e8adebac2 Adds compact buttons feature to create keypads.
See test/buttons for an example.
2023-09-03 00:09:40 +02:00
Matthias Melcher 502fa72eb4 #718: Fixes drawing issues for Fl_Tabs
Tabs were drawn incorrectly when children's box was not FL_NO_BOX
Current solution is cleaned up and always redraws tabs area
without leaving breadcrumbs behind
2023-09-02 20:56:57 +02:00
ManoloFLTK 0caa2c99c2 Special (UTF-8) characters in PDF docs maybe not rendered correctly (#772)
Use an image to display the table of the detailed description of class
Fl_PostScript_File_Device in PDF format, and keep using a dynamic table
for the HTML format.

Replace use of the '⌘' character in file drawing.dox by text 'cmd'.
2023-08-31 12:51:16 +02:00
ManoloFLTK 2e88b5efd1 Remove Doxygen warnings in processing of class Fl_Tabs 2023-08-31 12:41:02 +02:00
Matthias Melcher 443ce62300 #718: Fixes Fl_Tabs overlapping calculations
This method should greatly improve the overlapping calculations.
Tested with super wide and super many tabs.
Also documented every method in the class.
2023-08-30 20:03:44 +02:00
Albrecht Schlosser 3ff53dc201 Improve doxygen documentation generation
Under configure+make it is not possible to enable driver documentation.
Therefore the '@DRIVER_DOCS@' variable must always be cleared.
Add a comment on how to build the driver docs using the Makefile.

Simplify CMake whitespace (trailing LF) handling.

Make sure we find the correct source dir even if FLTK is included
in a sub build (s/CMAKE_SOURCE_DIR/FLTK_SOURCE_DIR/).
2023-08-30 17:24:39 +02:00
Albrecht Schlosser 854b671cdc Doxygen docs w/configure/make: convert config to current version
The intermediate files 'Doxyfile' and 'Doxybook' are now converted
to the current Doxygen version and the short form ('-s') when using
configure+make as it was already done in CMake builds.

This is to avoid Doxygen warnings and for better readability
of the Doxygen config files which are created during the build.
2023-08-30 15:56:17 +02:00
ManoloFLTK 0c1e6e8254 CHANGES.txt: report support of macOS 14.x Sonoma 2023-08-30 14:41:49 +02:00
Matthias Melcher 6beddb9d5c FLUID: fixes resizing of preferences panel 2023-08-29 23:13:43 +02:00
Matthias Melcher b5a1da9612 FLUID: minor fixes 2023-08-29 22:50:12 +02:00
Albrecht Schlosser be657471e7 Documentation/PDF: always use the configured doxygen executable
... to create the LaTeX header file used by doxygen.

This fix applies to both configure/make and CMake.

The existing version used `doxygen` which erroneously ran the doxygen
version from the current 'PATH' which might issue doxygen warnings and
potentially create a wrong LaTeX header file if the configured doxygen
program was not the one in the user's path.
2023-08-29 17:25:10 +02:00
Albrecht Schlosser ad5e49464b Document some protected methods and variables of Fl_Tabs
Todo: There are more protected methods that should be documented,
particularly the virtual ones that might be overridden by subclasses.
2023-08-29 15:19:07 +02:00
Matthias Melcher b92c8ed6ff FLUID: adds missing include for other platforms 2023-08-29 02:27:13 +02:00
Matthias Melcher 814d642e5d FLUID: separate SourceView panel into its own file
hereby removing almost 200 lines of unrelated code form fluid.cxx
and making the location of the panel code more obvious.
Needs a make depend on Linux.
2023-08-29 02:20:50 +02:00
Matthias Melcher 33353550d9 FLUID: code cleanup, redundancies, typos 2023-08-29 01:38:39 +02:00
Matthias Melcher 496289fd35 FLUID: simplifies filename handling 2023-08-29 01:38:39 +02:00
Matthias Melcher 5da15de174 FLUID: simplified worker handling 2023-08-29 01:38:39 +02:00
Albrecht Schlosser d11c412f95 CMake: Make compile definitions 'FL_LIBRARY' and 'FL_DLL' private
... so they are not inherited by consumers of the library.

Remove 'add_definitions(-DFL_LIBRARY)' from src/CMakeLists.txt
  This is not necessary, see CMake/fl_add_library.cmake

Don't set obsolete property 'CLEAN_DIRECT_OUTPUT' which was removed
in CMake 2.8.0.
2023-08-28 15:21:58 +02:00
ManoloFLTK b328c1f902 Wayland.dox: some rephrasing 2023-08-28 10:16:01 +02:00
ManoloFLTK d245a157b6 Slightly simpler handle_close() in Fl_Wayland_Window_Driver.cxx 2023-08-27 16:46:16 +02:00
ManoloFLTK 7e3aabf80e Remove useless function prototype declaration 2023-08-27 08:06:16 +02:00
ManoloFLTK 2f5e1b2230 Fix typos in Doxygen text for fl_filename_absolute/relative() 2023-08-26 18:38:38 +02:00
ManoloFLTK a3702923fc Wayland.dox: give more details about progressive drawing 2023-08-26 18:28:56 +02:00
Albrecht Schlosser 0f1492bba6 Update 'cmake_minimum_required' version to 3.12.0
Linking against OBJECT libraries as done in fluid since May 2023
and in shared library builds using MSVC even much earlier
requires at least CMake 3.12.

This commit adds the requirement explicitly to abort the build early.
2023-08-26 18:07:54 +02:00
Albrecht Schlosser 372fe4cc99 CMake: fix formatting, add more debug output 2023-08-26 17:33:05 +02:00
Albrecht Schlosser 8dfb83d990 Add missing FL_EXPORT for Windows shared lib build 2023-08-26 17:24:20 +02:00
Matthias Melcher 92ac709b7e Adds safe versions of fl_filename_*, returning Fl_String 2023-08-26 16:48:28 +02:00
Matthias Melcher 3ed43363cd FLUID: fixes file path calculation bug 2023-08-26 16:10:02 +02:00
Matthias Melcher 94a75b012f Fixes a bunch of typos in comments. 2023-08-26 15:17:28 +02:00