| Age | Commit message (Collapse) | Author |
|
Fl_Group::clear() is called in Fl_Group's d'tor anyway.
Technically we don't need to remove hscrollbar and scrollbar because
they are destroyed (and thus removed from Fl_Group) before Fl_Group's
d'tor is executed but this is left for clarity and to guarantee the
order (see comment).
|
|
|
|
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.
|
|
For reference, see fltk.general thread started Mar 26 2025, entitled:
"Make some Fl_Tree_Item methods virtual?"
|
|
Explain details of the mentioned 'hack' referring to and citing
parts of the original commit log.
|
|
hidden (#1233)
|
|
This option is no longer needed since FLTK 1.5 always requires C++11.
|
|
|
|
|
|
In some multi-screen settings, the un-fullscreened window would leave its screen
but would not enter any screen.
|
|
The commit has all platforms send the FL_FULLSCREEN event when a window is created fullscreen.
|
|
... because base_dir[0] and dest_dir[0] are *signed* chars.
|
|
Calling getenv() twice with different output vars and accessing both
later could cause "heap-use-after-free" error in some Windows versions.
The result of home_directory_name() would be unpredictable.
Found using Wine and/or MSYS2/clang/libc++ with Address Sanitizer.
|
|
|
|
|
|
* Add classes for application and project
* Removed all globals from Fluid.h
* Extracting args and project history into their own classes
* Moving globals into Application class
* Initialize values inside headers for some classes.
* Undo functionality wrapped in a class inside Project.
* File reader and writer are now linked to a project.
* Avoid global project access
* Nodes (former Types) will be managed by a new Tree class.
* Removed static members (hidden globals) form Node/Fl_Type.
* Adding Tree iterator.
* Use nullptr instead of 0, NULL, or 0L
* Renamed Fl_..._Type to ..._Node, FL_OVERRIDE -> override
* Renaming ..._type to ...::prototype
* Splitting Widget Panel into multiple files.
* Moved callback code into widget panel file.
* Cleaning up Fluid_Image -> Image_asset
* Moving Fd_Snap_Action into new namespace fld::app::Snap_Action etc.
* Moved mergeback into proj folder.
* `enum ID` is now `enum class Type`.
|
|
See also #1223, and thanks to Gonzalo for finding it.
|
|
This commit is bigger than necessary to fix the buffer allocation but
it also prevents some unnecessary string copies: the font name is
converted from UTF-16 to UTF-8 directly in the buffer used later.
Code reformatted and clarified as well, some duplicated code was
removed.
|
|
|
|
|
|
|
|
(#1216)
|
|
This commit also computes work-area size for single-display settings.
|
|
A problem was visible with the menubar test app and a 2-screen system where screens are one above the other.
When moving down the huge menu, it became positioned on the wrong screen.
|
|
- remove configure stuff from more README files
- move documentation/README.txt to README.documentation.txt
|
|
This removes the last instance in FLTK of use of #if __APPLE__ instead of the driver mechanism.
|
|
|
|
More to come...
|
|
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 &)'
|
|
|
|
|
|
libXft was erroneously present in the link command when using Pango and Cairo.
This is fixed by disconnecting the GUI scaling code from use of Xft.
This commit also makes sure that when Wayland is used, pkg-config is available
on the build machine. This allows to remove from file CMake/options.cmake
code that was labelled with "FIXME".
|
|
Still to do: rename fl_filename... to fl_filename..._str
and introduce into core library.
|
|
|
|
|
|
Also fix for Linux.
|
|
All mentions of Fl_String will be replaced with std::string
and the Fl_String implementation will be removed.
|
|
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.
|
|
|
|
|
|
|
|
This code was used in the past to support a deprecated way to obtain the initial
value of the GUI scaling factor for the X11 platform.
|
|
|
|
|
|
|
|
|
|
|