| Age | Commit message (Collapse) | Author |
|
This method was erroneously declared 'deprecated' in previous versions.
However, this method is public and calls the *protected* method
Fl_Window::force_position(). Therefore it is kept as a regular
public method.
|
|
1. src/Fl_add_idle.cxx: add missing parameter docs
2. FL/fl_draw.H: rename 1st parameter of fl_draw_pixmap(...) from
'data' to 'cdata'.
The 2nd warning appears to be caused by a 'friend' declaration in
FL/Fl_Graphics_Driver.H, line 98:
'friend FL_EXPORT int fl_draw_pixmap(const char*const* cdata, ...)'
This 'friend' declaration seems to "confuse" some (newer?) doxygen
versions, definitely doxygen 1.13.2.
|
|
This turned out to be more complicated than just to delete a function
because it was used internally, and the callback signatures were a bit
flaky. I also added a lot of documentation to clarify matters.
FL/Fl.H: document idle callback signatures, make some internal
functions of class Fl private, add public Fl::idle() accessor (read-
only), add Fl::add_idle(Fl_Old_Idle_Handler cb) to enable using
old-style idle callbacks w/o 'data' argument.
FL/forms.H: replace Fl::set_idle() with Fl::add_idle().
src/Fl.cxx: rename private Fl::idle_ with trailing underscore.
src/Fl_System_Driver.cxx: use new public accessor Fl::idle() to access
Fl::idle_ which is now private.
src/Fl_add_idle.cxx: improve documentation, clarify idle callback
matching, add example code in docs, rename methods, add overloaded
Fl::add_idle(Fl_Old_Idle_Handler cb).
src/Fl_win32.cxx: use public Fl::idle() rather than private member.
src/drivers/Unix/Fl_Unix_System_Driver.cxx: same as above.
src/Fl_cocoa.mm: same as above.
|
|
|
|
|
|
and declare it in non-public header src/Fl_Scalable_Graphics_Driver.H which also
declares classes Fl_Font_Descriptor and Fl_Fontdesc.
|
|
The goal is to change the version number for a new release only in
CMakeLists.txt. This is the first step.
Details:
- CMake/gen_config.cmake: this new file is included to generate the
header files config.h (private, root directory), and FL/fl_config.h
(public, can be installed). This file implements also ABI version
checks (removed from FL/Enumerations.H and with more checks).
Warnings are issued if the chosen ABI version is invalid.
- CMake/export.cmake: code to generate 'config.h' was moved to
CMake/gen_config.cmake.
- CMake/options.cmake: set default of FLTK_BUILD_FORMS=OFF + comments
- CMakeLists.txt: move generation of FL/fl_config.h to gen_config.cmake,
add API and ABI versions to CMake summary,
- FL/Enumerations.H: remove most of the version number details which
are now included in FL/fl_config.h. This needed also some doxygen
related changes.
- README.CMake.txt: improve docs of FL_ABI_VERSION and some more.
Reflect the new default of CMake option FLTK_BUILD_FORMS (OFF).
- documentation/Doxyfile.in: add FL/fl_config.h to file list. This
file is created in the build tree (and may be "installed").
- fl_config.h.in: add version number details that have been moved here
from Enumerations.H (used to generate FL/fl_config.h).
|
|
Note: doxygen versions < 1.9.6 are not recommended for PDF docs
but *may* work for HTML documentation.
|
|
If set, menu items will also call the callback when highlighting changes.
The reason is given with Fl::callback_reason(). #941
|
|
|
|
... and Fl_Tootip::override_text() to allow users to dynamically
generate tooltips.
|
|
... so users can enable ABI features designated for the *next* release
when using FLTK from Git (or snapshots) before the API version has
been raised for that release.
|
|
For reference, see fltk.general thread started Mar 26 2025, entitled:
"Make some Fl_Tree_Item methods virtual?"
|
|
This option is no longer needed since FLTK 1.5 always requires C++11.
|
|
This library is no longer needed and was "empty" for backwards
compatibility since FLTK 1.4.0.
|
|
New functions append "_str" to the function name to
avoid ambiguities when calling them. So
'char *fl_filename_name(const char *)' becomes
'std::string fl_filename_name_str(const std::string &)'
|
|
All mentions of Fl_String will be replaced with std::string
and the Fl_String implementation will be removed.
|
|
FLTK 1.5 requires at least C++11, hence we can always use 'override'.
To do: the FL_OVERRIDE macro can be replaced by 'override' everywhere
in the FLTK code. There are more than 2400 occurrences and this
would be a large commit. Therefore it's not done right now...
Note: user code may continue to use FL_OVERRIDE.
|
|
Note: this is only a hidden implementation detail: all concerned
variables are private, and the code is simplified (less error prone).
Size of Fl_Group on 64-bit Linux: 168 -> 176 Bytes (+8 Bytes).
test/group.cxx: test for Fl_Group::{add, insert, remove} etc.
|
|
|
|
|
|
|
|
|
|
Separate both constructor types and document parameters.
|
|
Note: this also removes the (not working) suggestion to add an invisible
box to an Fl_Scroll-type child of Fl_Tabs.
|
|
Unfortunately this *appears* to be a new constraint caused by the great
new features of Fl_Tabs like overflow handling etc. and fixing drawing
issues in the tab area (since FLTK 1.4).
However, this conflict has already been there in 1.3 but didn't cause
visual artifacts in normal use.
|
|
|
|
As discussed in the context of PR #1187 the previous return value '-1'
was misleading and undocumented. The docs mentioned only '1' and '0'.
User code that used the return value as documented (like a `bool`)
would make the wrong decision if the return value was '-1': true
(selected) instead false (out of range).
This commit fixes the code by doing what the docs define and clarifies
the documentation.
Further documentation improvements of Fl_Table (example code used a
method that is not defined in Fl_Table) and of Fl_Table_Row are
included as well.
Doxygen docs of two methods of Fl_Table_Row moved to the .cxx file
where they belong according to the CMP.
|
|
This is required by Swig to generate code for wrapping
FLTK for Python and potentially other languages. It has
no impact on the API or ABI.
|
|
|
|
This reverts the improvement of #1139 in the default build which is
now only available with FL_ABI_VERSION=10401 or higher.
Users that need this improvement need to build with the required
ABI version by setting it with configure or CMake.
|
|
|
|
To do: update CHANGES.txt with real info.
|
|
And typos in FLUID source code docs.
|
|
|
|
|
|
New compiler warning detected by g++ 14.2.0 building with CMake
in Release mode. This *temporary* fix suppresses the warning but uses
even larger fixed size buffers.
Todo: these nasty warnings caused by using fixed buffer sizes should
be removed by using std::string in FLTK 1.5.0.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
and the correct information is in __MAC_OS_X_VERSION_MAX_ALLOWED
|
|
|
|
Also fixes scenarios mixing fullscreen and maximization:
- maximize
- set fullscreen
- unset fullscreen
- un-maximize
with and without window border.
|
|
... as discussed on fltk.general recently
Note: this method was already public in all subclasses of Fl_Window.
|
|
Returns NULL if n is out of range to prevent accessing undefined
memory.
|
|
This bit mask was added in commit 53b40f4138e70e44 in an attempt
to *document* reserved bits but it turned out that this mask could
have negative side effects on some newer compilers by propagating
the enum to an 'unsigned int' and issuing compiler warnings.
See this comment and follow-up's in fltk.general:
https://groups.google.com/g/fltkgeneral/c/7xrDkbkxiyw/m/rzEIJ7XhAgAJ
|