Commit Graph

964 Commits

Author SHA1 Message Date
Albrecht Schlosser
0f3b5ded8f Fix dependencies, typos, trailing whitespace, and formatting
No code changes.
2023-03-09 18:28:37 +01:00
Albrecht Schlosser
5175192755 CMake: build shared libs with OPTION_CAIROEXT (issue #250)
- remove separate libfltk_cairo to avoid cyclic dependencies, but
- keep a dummy libfltk_cairo in 1.4.0 for backwards compatibility
- move cairo/Fl_Cairo.cxx to src/Fl_Cairo.cxx
- add preliminary Cairo support for Visual Studio (MSVC)

Static linking is not affected by this change, but users building
with hand-made Makefiles will have to remove libfltk_cairo starting
with FLTK 1.4.0. The dummy library can be linked for backwards
compatibility but it will be removed later (in 1.4.x or 1.5.0).

The shared FLTK library libfltk.{so|dylib|dll|..} depends on libcairo
if and only if FLTK is built with one of the Cairo options. This has
always been the case for OPTION_CAIROEXT but is now also true if only
OPTION_CAIRO is selected, i.e. FLTK programs linked with a Cairo
enabled shared FLTK library will also be linked with libcairo. The same
is true for configure options --enable-cairo and --enable-cairoext,
respectively.

Preliminary Cairo support for MSVC now detects a Cairo installation
using the CMake variable FLTK_CAIRO_DIR which must be set by the user.
Note that this feature is temporary and may be changed in the future
for a better and more comfortable version.
2023-03-09 17:34:05 +01:00
ManoloFLTK
dd5dccb30f Wayland.dox: more details about window positioning 2023-03-08 17:52:21 +01:00
ManoloFLTK
9d2d6f74ab Fix typo in Wayland Doxygen doc 2023-03-07 18:35:46 +01:00
ManoloFLTK
f89a9f9efc DnD of filenames: make Wayland behave as Windows and macOS
and also add more detailed documentation of platform-specific behaviors.
2023-03-06 11:08:04 +01:00
ManoloFLTK
a52811567e Wayland: improve DnD of filenames to allow space-containing names 2023-03-05 11:54:55 +01:00
ManoloFLTK
b438d448fb Remove unused variable declaration + fix in wayland.dox 2023-03-03 18:00:44 +01:00
ManoloFLTK
9d78df89f1 Miscellaneous minor additions to Wayland documentation 2023-03-03 15:26:00 +01:00
ManoloFLTK
8c5db35ead Better document type struct Fl_Wayland_Screen_Driver::output 2023-03-02 12:09:59 +01:00
ManoloFLTK
9281893926 Wayland: more detailed documentation of struct fl_wld_buffer
Also, remove Doxygen warning from file bundled-libs.dox
2023-02-21 15:13:46 +01:00
ManoloFLTK
04d8f6eeac Update recipe to update the bundled png source code 2023-02-21 07:11:19 +01:00
ManoloFLTK
b8d2359a3c Wayland developer's documentation: miscellaneous updates 2023-02-20 09:40:54 +01:00
ManoloFLTK
c8c5725628 Beef up documentation of "Opening a Wayland connection" 2023-02-19 09:19:21 +01:00
ManoloFLTK
51f08dfe1c More detailed documentation of Wayland custom cursors 2023-02-18 08:41:30 +01:00
ManoloFLTK
7dbacbeec2 Wayland: beef up documentation of custom cursor shapes 2023-02-17 21:51:04 +01:00
ManoloFLTK
2af43ef4c8 Remove special FL_CURSOR_NONE implementation in Wayland 2023-02-17 16:24:41 +01:00
ManoloFLTK
4a3781eb0e New section "Buffer factories" in Wayland documentation 2023-02-17 12:56:51 +01:00
ManoloFLTK
e84a1730ad Wayland: improve and document support of FL_CURSOR_NONE 2023-02-17 09:52:34 +01:00
ManoloFLTK
92d2f666a7 Wayland: beef up cursor-related documentation 2023-02-16 12:06:10 +01:00
ManoloFLTK
02adfc0560 Wayland: remove libdecor/demo/* from FLTK source tree 2023-02-16 08:56:37 +01:00
ManoloFLTK
f6b87790cc Wayland: new struct wl_cursor *custom_cursor member variable 2023-02-15 22:52:20 +01:00
ManoloFLTK
868ab9696f Rename class Fl_Display_Cairo_Graphics_Driver to Fl_X11_Cairo_Graphics_Driver 2023-02-14 11:52:21 +01:00
Albrecht Schlosser
2239ecc4a1 Fix typos in documentation and comments
(no code changes)
2023-02-10 13:13:36 +01:00
ManoloFLTK
589c1f31c3 Improve doc of Fl_Widget::test_shortcut() methods
This removes a \todo item.
2023-02-05 11:45:23 +01:00
Matthias Melcher
fa9915e1e3 Doxygen fix for FL_DEPRECATED 2023-02-05 00:22:08 +01:00
Albrecht Schlosser
32b6c04bcf Documentation: clarify header inclusion requirements
Since FLTK 1.4.0 inclusion of FL/Fl.H is no longer a requirement
unless class Fl is used (e.g. Fl::run()) or if it is used to include
other headers like FL/Enumerations.H
2023-02-02 19:05:43 +01:00
Albrecht Schlosser
4e75549e7b Update dependencies and fix whitespace errors
- replace tabs with spaces
- remove trailing whitespace
2023-02-02 17:09:14 +01:00
ManoloFLTK
cb64a6d768 Wayland.dox: reword and add some information 2023-01-27 10:29:04 +01:00
ManoloFLTK
f314ca75fe Create new documentation chapter for FLTK developers
Add Doxygen-formatted description of the Wayland backend
Add bundled-libs.dox
Delete README.bundled-libs.txt
Move "Development" page to "Development of FLTK" chapter
2023-01-25 18:08:01 +01:00
ManoloFLTK
7b245ef0ab Remove warnings when building doc with Doxygen 2023-01-24 10:32:57 +01:00
Matthias Melcher
1fc269b0d4
Move global FLTK options into new app fltk-admin (#560) 2023-01-21 17:14:41 +01:00
ManoloFLTK
f3e21ddad2 Fix for "Rename Fl_X* Fl_Window::i private class member" (#223) 2023-01-13 21:16:17 +01:00
ManoloFLTK
a6dd0adac7 Doc only: fix for "Fl::awake() and Fl::add_timeout()" (#524) 2023-01-09 15:07:59 +01:00
Albrecht Schlosser
d3988f9bdc Update "Migrating Code ..." documentation
Add "New FL_OVERRIDE Macro" paragraph and update some more parts.
2023-01-03 18:51:03 +01:00
Albrecht Schlosser
70a107537f Exclude generated, Wayland specific files from Doxygen docs
Some Wayland specific files are generated by the build process with
configure + make in the source tree.

These files are now ignored by the Doxygen documentation process.
2022-12-27 19:22:56 +01:00
Greg Ercolano
234a33c12f Docs: add widget screenshot for Fl_Hor_Nice_Slider 2022-12-10 07:53:28 -08:00
ManoloFLTK
eb2572deaf Add new Wayland-specific fl_wl_compositor() function 2022-12-09 17:06:35 +01:00
Matthias Melcher
bf825f8ebd
Add a unit test for drawing complex shapes (#565) 2022-11-30 22:40:52 +01:00
ManoloFLTK
acf7254fe8 macOS+OpenGL3: remove "warning: gl.h and gl3.h are both included" 2022-11-27 08:06:33 +01:00
Matthias Melcher
b16309f13e
Refactor code to make rounded rectangles accessible (#553)
This adds fl_rounded_rect and fl_rounded_rectf so the
user can draw rounded rectangles. This uses existing and
optimised code that is rearranged.
2022-11-24 12:47:49 +01:00
Matthias Melcher
2dae18da09
Fluid: Add Undo to formula input fields. (#547) 2022-11-17 00:43:16 +01:00
Albrecht Schlosser
e72324d3d9 Update Doxyfile.in for current Doxygen version 1.9.5
This file is now compatible up to Doxygen 1.9.5, i.e. there are
no warnings about obsolete parameters when generating the docs.

Current git 'master' of Doxygen (1.9.6: not yet released) issues
some warnings but these will hopefully be fixed in Doxygen.

Oldest tested Doxygen: 1.8.17 - older versions may emit warnings.
2022-10-12 16:19:36 +02:00
ManoloFLTK
e9719e5416 Update window icon-related doc in platform-specific section. 2022-10-06 15:07:39 +02:00
Albrecht Schlosser
5646522985 CMake: Fix some special cases regarding generation of docs
Ignore error if docs are not generated using a git working tree, for
  instance from a downloaded tarball or zip file. This is only a
  temporary solution for issue #499 (see "FIXME" comment).

Execute doxygen only if it is available. i.e. found by CMake.
2022-10-03 10:49:43 +02:00
ManoloFLTK
694eaef99c Doc: more details about installation of GLEW. 2022-09-29 12:04:17 +02:00
ManoloFLTK
59fc60ea4c Simpler code to support FLTK widgets in macOS OpenGL 3 windows.
Also, the application-level code to add widgets to a GL3 window becomes
platform-independent.
2022-09-27 14:12:39 +02:00
ManoloFLTK
89f9671b40 Add cross-platform support for adding widgets to an OpenGL3-based Fl_Gl_Window.
Under non-macOS platforms, the key is to call glUseProgram(0); after having used OpenGL 3
which allows to then use OpenGL 1 and draw FLTK widgets over the OpenGL3 scene.

Under macOS, this is impossible because macOS GL3 contexts are not compatible
with GL1. The solution implemented here is to create an additional Fl_Gl_Window
placed above and sized as the GL3-based window, to give it a non opaque,
GL1-based context, and to put the FLTK widgets in that additional window.
2022-09-25 16:39:40 +02:00
Greg Ercolano
0fd10e9fde Updated fltk logo for docs and help_dialog using logo from the website. 2022-09-23 12:46:35 -07:00
Albrecht Schlosser
6472f9b041 Fix build process of PDF docs on macOS and update .gitignore
Note: the syntax of command/switch `sed -i` is slightly different
  on macOS vs. Linux and should not be used.

Move .gitignore parts referring to /documentation/ to their own file
  'documentation/.gitignore' and add new generated file(s).
2022-09-23 15:45:45 +02:00
ManoloFLTK
debbba19ec Improve docs of Fl_Copy_Surface and use of OpenGL 3. 2022-09-21 15:15:55 +02:00