Fast Light Toolkit 1.4.2

FLTK (fulltick) is a lean but modern GUI toolkit written in C++ with bindings for Perl, Python, Ruby, Lua and Tcl. It's usable and looks alike on all platforms, provides full internationalization, 3D rendering via OpenGL and an internal GLUT backend, static linking, does not require macros or preprocDessing, still comes with a solid set of widgets, and its GUI designer FLUID.

Tags cpp gui toolkit fltk opengl x11 win32 macosx
License GNU LGPL
State stable

Recent Releases

1.4.223 Feb 2025 19:59 minor feature: Bug Fixes and other Improvements - Fix Help View 'find' method (#1119) - Fix possibly uncleared damage flag of Fl_Pack (#1172) - Fix integer overflow in image interpolation (#73) - Fix "Fl_Text_Editor::wrap_mode(Fl_Text_Display::WRAP_AT_BOUNDS, 0) hurts scrolling" (#1186) - Use C locale when writing float values to SVG images - Fix return value of Fl_Table_Row::row_selected(int) (PR #1187) - Fix Fl_Table_Row inconsistencies, final part (#1187) - Fix potential buffer overflow in Fl_Help_View (#1196) - Improve fullscreen window handling (#1192 and more) - Fix "Fl_RGB_Image::draw() seg faults when offset is too big" (#1211) Platform Specific Fixes and Build Procedure Improvements - CMake/Windows/MSYS2: Correctly detect ucrt64 environment (PR #1167) - CMake: make "optional" dependencies 'PUBLIC' (#1173) - CMake: check INTERFACE_LINK_LIBRARIES for empty value - CMake: fix include directories of bundled image libs - macOS: Fix crash if Escape is pressed while Help submenu is open (#1170) - macOS: Don't capture the cursor in capture_decorated_window_SCK() - macOS: Fix "Full screen broken on macOS in FLTK 1.3.10 (regression)" (#1192) - macOS: add support of showing window to multi-screen fullscreen state - fix "macOS Sonoma/Sequoia not capturing OpenGL 1 text on macOS" (#1197) - Remove incorrect use of Fl_Window::current() in Fl_Quartz_Image_Surface_Driver - Make Fl_Cocoa_Gl_Window_Driver::capture_gl_rectangle() return a depth-4 image - macOS: Fix "Fl_JPEG_Image infinite longjmp loop on Mac release builds" (#1207) - Windows: replace "Arial" by "Microsoft Sans Serif" fonts for 'FL_HELVETICA' - fltk-config: fix "Check bundled image libraries in source tree" - fltk-config: reorder include dirs of bundled image libs - Fix "fltk-config reports dep on gtk3 when it does not exist" (#1201) Wayland related Improvements and Fixes - Fix a border case in member function Fl_Wayland_Window_Driver::resize() - Make dra
1.4.027 Nov 2024 16:45 minor feature:
1.3.909 Jan 2024 16:47 major bugfix: - Support macOS up to macOS 14 "Sonoma". - Update bundled libraries to current versions (README.bundled-libs.txt). - Introduce bundled image library "prefixing" to avoid conflicts with system libraries. - New CMake option FLTK_MSVC_RUNTIME_DLL to select Visual Studio Runtime version: DLL (/MDx) or static (/MTx), see README.CMake.txt
1.3.410 Nov 2016 03:15 minor bugfix: and other improvements - test/native-filechooser help display artefact. - MacOS: a crash when closing a fullscreen window. - Accept empty Fl_Pixmap in Fl_RGB_Image c'tor. - MacOS: drawing error when turning fullscreen a window containing a hidden subwindow (error visible with the tabs test program). - MacOS: possible crash when turning fullscreen the scroll test program. - Add a snapshot of known STR's and RFE's (KNOWN_.html). CHANGES IN FLTK 1.3.4rc3 RELEASED: Oct 31 2016. and other improvements. - string truncation in fluid. - MacOS: a small problem where command Quit of the application menu may not work if Fl_Native_File_Chooser is used before any window is shown. CHANGES IN FLTK 1.3.4rc2 RELEASED: Oct 24 2016. and other improvements. - Make sure the "File Systems" menu item of Fl_File_Chooser lists "/" as the first mounted file system (Linux/Unix platform). - Added line numbers to Edit - Show Source Code viewer. - Improved fluid's template handling. CHANGES IN FLTK 1.3.4rc1 RELEASED: Oct 17 2016. New features and extensions. - Added support for Mac OS 10.11 "El Capitan" and 10.12 "Sierra". - Added full support of true subwindows to the Mac OS X platform. Window nesting to any depth is possible. An Fl_Gl_Window window or subwindow can contain Fl_Window's as subwindows. - Fluid now supports external editors See: Edit - GUI Settings - Use external editor. - Added method Fl_Widget::is_label_copied(). - Added methods Fl_Copy_Surface::w(), Fl_Copy_Surface::h(), and Fl_Copy_Surface::draw_decorated_window(). - Added method Fl_Image_Surface::draw_decorated_window(). - Added method Fl_Shared_Image *Fl_Image_Surface::highres_image() to draw into a high-resolution bitmap image (Mac OS X only). - Added support for OpenGL version 3 and later. - Added method Fl_Mac_App_Menu::custom_application_menu_items() allowing to customize the application menu on the Mac OS X platform. - Added 'fluid -u' command-line switch to upgrade fluid files in batch
1.3.305 Nov 2014 14:25 major feature: New class Fl_Copy_Surface allows copying graphical data to the clipboard in a cross-platform way (STR #3058). Support for pasting graphical data from the clipboard to a widget. New class Fl_Image_Surface allows drawing into an Fl_Image object. Methods Fl::add_clipboard_notify() and Fl::remove_clipboard_notify() to get notifications whenever the clipboard changes (STR #2636). New method Fl_Window::wait_for_expose() (STR #3124, STR #3129). New bilinear scaling method for RGB images (STR #2869, STR #3062). New method Fl_Widget::top_window() (STR #2948). New method Fl_Widget::top_window_offset() (part of STR #2944). New Fl_Tree_Item methods label_x(), label_y(), label_w(), label_h(). New methods Fl::enable_im() and Fl::disable_im() to enable/disable system Input Methods (IM). New methods Fl::add_system_handler() and Fl::remove_system_handler() to intercept low level system events. New FLTK scheme "gleam" (STR #2672). New method Fl::is_scheme() to compare the current scheme name. New method to set custom icons for windows (STR #2816), see Fl_Window::icon() for more info. New method to set any custom cursor, based on a Fl_RGB_Image object. Also changed fallback cursors to use this method, so that fallback cursors are handled in a platform independent manner (STR #2660). New ability to convert Fl_Pixmap to Fl_RGB_Image (STR #2659). Support for full screen windows over multiple monitors. New optional line numbers in Fl_Text_Display and options to control line numbers and word wrapping (on/off) in example test/editor.cxx. On Linux/Unix, class Fl_Native_File_Chooser uses file dialogs from the Gnome environment (provided by the libgtk dynamic library) if available, and falls back to Fl_File_Chooser if not (STR #3088). Use option Fl::OPTION_FNFC_USES_GTK to enable/disable this feature. New support for the Mac OS text input system that deals with character composition and input of languages with large character sets (e.g. Chinese and Japane