-
Notifications
You must be signed in to change notification settings - Fork 22
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update FLTK to latest release (Windows builds); update CI
- Loading branch information
dashodanger
committed
Nov 22, 2024
1 parent
3424fdf
commit 4f44802
Showing
240 changed files
with
6,501 additions
and
3,232 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,49 @@ | ||
FLTK 1.4 is based on the final release of FLTK 1.3.4. | ||
FLTK 1.4 is based on the final release of FLTK 1.3.4. Later updates | ||
have been backported to 1.3.5 - 1.3.10. | ||
|
||
Technically the branch was forked earlier, but all changes in FLTK 1.3.4 | ||
have also been (modified and) committed in branch-1.3-porting, which is | ||
the base of branch-1.4. | ||
|
||
FLTK 1.4 is intended to be mostly API compatible with FLTK 1.3.4 so | ||
FLTK 1.4 is intended to be mostly API compatible with FLTK 1.3.x so | ||
you don't need to change source code when you switch to FLTK 1.4. | ||
However, all programs must be recompiled with FLTK 1.4 because the | ||
ABI (Application Binary Interface) has changed. | ||
|
||
Potential source code conflicts are documented in chapter "Migrating | ||
Code from FLTK 1.3 to 1.4" of the user documentation [1]. | ||
|
||
FLTK 1.4 adds some new widgets (e.g. Fl_Flex, Fl_Grid) for flexible GUI | ||
layout, Fl_Scheme_Choice for scheme selection by users, and more. | ||
Other widgets (Fl_Tabs, Fl_Tile, Fl_Spinner etc.) have been improved | ||
for better user experience. | ||
|
||
FLTK 1.4 supports HighDPI displays under Linux/Unix and Windows and | ||
improves HighDPI support on macOS. The initial screen scaling factor is | ||
read from the system and application windows can be zoomed (in/out/reset) | ||
by the user with ctrl/+/-/0 shortcuts, respectively. | ||
|
||
CMake support has been improved significantly and requires CMake 3.15 or | ||
higher, autotools/configure/make is still supported. The latter will be | ||
dropped in the next minor release (1.5.0). | ||
|
||
macOS is supported up to 15.0 "Sequoia". | ||
|
||
The platform dependent code in FLTK 1.4 was rewritten to enable easier | ||
porting to new platforms. Basically all platform dependent code has | ||
been isolated and implemented in virtual methods of "driver" classes. | ||
For details see 'src/drivers' and subdirectories. | ||
|
||
FLTK is now compatible with the Wayland platform on current Linux | ||
distributions and FreeBSD. The default build of the library on these | ||
platforms supports both X11 and Wayland in a "hybrid" library. Programs | ||
compiled and linked to this library start using Wayland if it is | ||
available at runtime and fall back to using X11 if not. Programs using | ||
X11 specific code that are not yet ported to Wayland can still be used | ||
on pure X11 systems or by disabling the Wayland support on startup so | ||
they fall back to using X11 only. This requires 'XWayland' support on | ||
Wayland enabled (Linux) systems. | ||
|
||
However, the platform dependent code in FLTK 1.4 was rewritten to enable | ||
better porting to new platforms. Basically all platform dependent code | ||
has been isolated and implemented in virtual methods of "driver" classes. | ||
See src/drivers and subdirectories. | ||
The current development branch on GitHub [2] is `master`. This will be | ||
changed to `branch-1.4` when development of FLTK 1.5.0 begins and 1.4 | ||
will be switched to maintenance mode. | ||
|
||
More to come ... | ||
[1] https://www.fltk.org/doc-1.4/ (HTML) and | ||
https://www.fltk.org/doc-1.4/fltk.pdf (PDF) | ||
[2] https://github.com/fltk/fltk.git |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
|
||
#include <AvailabilityMacros.h> | ||
#if __MAC_OS_X_VERSION_MAX_ALLOWED < SDK_VERSION_CHECK | ||
#error __MAC_OS_X_VERSION_MAX_ALLOWED < SDK_VERSION_CHECK | ||
#endif | ||
int main(int argc, char** argv) { return 0; } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.