diff options
| author | Albrecht Schlosser <albrechts.fltk@online.de> | 2016-11-11 17:55:44 +0000 |
|---|---|---|
| committer | Albrecht Schlosser <albrechts.fltk@online.de> | 2016-11-11 17:55:44 +0000 |
| commit | d5295c3bf7c174125f42d8d4008f01381d5b5aec (patch) | |
| tree | ff7e5a85dd42ada855935c721a95e0cdf2d18fee | |
| parent | aafd21a6d491d5f752fcedb8e4018dd7faf5d5fd (diff) | |
Start branch-1.4 after rename from branch-1.3-porting.
Added FLTK 1.3 CHANGES file as CHANGES_1.3, updated CHANGES to start
release info (changelog) for FLTK 1.4.
You can update the svn configuration of your working to get this
branch if you previously used branch-1.3-porting:
$ svn switch http://seriss.com/public/fltk/fltk/branches/branch-1.4
If you used branch-1.3 previously we recommend to checkout the new
branch-1.4 in a new working copy.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12099 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | CHANGES | 54 | ||||
| -rw-r--r-- | CHANGES_1.3 | 680 |
2 files changed, 715 insertions, 19 deletions
@@ -1,24 +1,52 @@ -CHANGES IN FLTK 1.4.0 RELEASED: ??? ?? ???? +Changes in FLTK 1.4.0 RELEASED: ??? ?? 2017 - New features and extensions + New features and extensions - - ... + - CMake is the primary supported build system in FLTK 1.4.0 and later. + CMake can be used to generate Makefiles, IDE project files, and + several other build systems by using different "generators" provided + by CMake (for instance Ninja, CodeBlocks, Eclipse, KDevelop3, etc). + See README.CMake.txt for more information. + autoconf/configure is still supported by the FLTK team for backwards + compatibility with older systems that lack CMake support. - New configuration options (ABI version) - - - FLTK's ABI version can be configured with configure and CMake. - See documentation in README.abi-version.txt. + New configuration options (ABI version) + + - FLTK's ABI version can be configured with 'configure' and CMake. + See documentation in README.abi-version.txt. - 1.4.0 ABI FEATURES + 1.4.0 ABI FEATURES - - None. 1.4.0 is a new ABI version (breaking 1.3.x ABI). + - None. 1.4.0 is a new ABI version (breaking 1.3.x ABI). - Other improvements + Other improvements - - ... + - ... - Bug fixes + Bug fixes - - ... + - ... + + Removed Features + + - Bundled IDE project files (Xcode and Visual Studio) have been + removed. Please use CMake to generate your IDE project files. + See README.CMake.txt for more information. + + + +Changes in FLTK 1.3 + + See CHANGES_1.3 + + +Changes in FLTK 1.1 + + See CHANGES_1.1 + + +Changes in FLTK 1.0 + + See CHANGES_1.0 diff --git a/CHANGES_1.3 b/CHANGES_1.3 index c30ec7227..63d919961 100644 --- a/CHANGES_1.3 +++ b/CHANGES_1.3 @@ -1,8 +1,676 @@ -CHANGES IN FLTK 1.3.4 RELEASED: ??? ?? ???? +CHANGES IN FLTK 1.3.4 RELEASED: Nov 11 2016 -=============================================================================== - *FIXME* This file needs to be updated after FLTK 1.3.4 has been released. -=============================================================================== - Copy CHANGES from FLTK 1.3.4 over this file (CHANGES_1.3) in FLTK 1.4.0. -=============================================================================== +Bug fixes and other improvements + - Fix test/native-filechooser help display artifact (STR #3349). + - MacOS: fix a crash when closing a fullscreen window. + - Accept empty Fl_Pixmap in Fl_RGB_Image c'tor (STR #3348). + - MacOS: fix drawing error when a window containing a hidden subwindow + is changed to fullscreen (error visible with the tabs test program). + - MacOS: fix possible crash when enabling fullscreen in test/scroll. + - Add a snapshot of known STR's and RFE's (KNOWN_BUGS.html). + +CHANGES IN FLTK 1.3.4rc3 RELEASED: Oct 31 2016 + + Bug fixes and other improvements + + - Fix string truncation in fluid (STR #2722 continued). + - MacOS: fix a small problem where the Command-Quit menu hotkey + 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 + + Bug fixes 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 fluid Edit -> Show Source Code viewer. + - Improved fluid's template handling (STR #3335). + + +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 (STR#3213) + 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 customization of the application menu (Mac OS X only). + - Added 'fluid -u' command-line switch to upgrade fluid files in + batch mode. This option opens a fluid ('.fl') file and saves it + overwriting the old file with the current syntax and library version + number. Use with care (input file is overwritten unconditionally). + - Added FL_ZOOM_GESTURE gesture for OS X (only). Needs implementation + on other platforms. + - Added FL_ABI_VERSION, FL_API_VERSION, Fl::abi_version(), and + Fl::api_version(). Constants can be used to determine the compiled + FLTK version. Functions can be used to find the linked library version. + - Added Fl::abi_check() method to test if the runtime (linked) + ABI version is correct. + - Added Fl_Image::fail() to test if an image was loaded successfully + to allow for easier error detection when loading images (STR #2873). + - Added line numbers to fluid's source code viewer for New -> Code + + New configuration options (ABI version) + + - FLTK's ABI version can now be configured with 'configure', CMake, or + by editing a supplied file when using the bundled IDE projects. + See documentation in README.abi-version.txt. + + 1.3.4 ABI FEATURES + + - Added deactivated user icon to Fl_Tree. + - Added Fl_Shared_Image::scale(width, height) which gives a shared + image its own drawing size, independently of the size of the + underlying image. This improves image drawing on high resolution + surfaces such as Laser printers, PDF files, and Apple retina displays. + + Other improvements + + - Configure now correctly sets HAVE_* variables only if both the + library and the header files were found. The configuration process + is aborted if Xft was requested explicitly with --enable-xft and + Xft was not found. The configuration summary now shows _found_ + options as opposed to requested options. + - Improved drawing of rounded box (STR #2943). + - Full support of Apple 'retina' displays for which one drawing unit + corresponds to two pixels. + - The Mac OS X platform no longer uses the deprecated AGL + (Apple GL library) to draw OpenGL data. Instead, it uses standard + Cocoa APIs. This allows FLTK to support drawing GL scenes at high + resolution when an Fl_Gl_Window is mapped to a 'retina' display. + - Added Fl_Gl_Window::pixel_w(), Fl_Gl_Window::pixel_h(), and + Fl_Gl_Window::pixels_per_unit() useful for high resolution OpenGL windows. + - fl_read_image() now captures all pixels within the rectangle + described by its arguments, whether they belong to a GL scene + or not (STR #3142). It also captures subwindows of GL windows. + - Fl::delete_widget() now hides the widget or window immediately + (i.e. when called) - only destruction is delayed as before. + - FLTK header files don't expose X11 definitions in user code any more + unless requested by including FL/x.H explicitly or implicitly. + - The PostScript code output when printing images under Linux/Unix + is now much smaller by using lossless compression techniques. + - The Linux/Unix printer dialog now uses BSD-style printing commands + (lpr/lpq) when SystemV-style commands (lp/lpstat) are not available. + - Drawing alpha-blended images under X11 is now accelerated with + Xrender. + - The font used for the FL_COURIER font family was changed on the Mac OS X + platform from 'Courier New' to 'Courier' because it was too thin. + - Text drawing on the Mac platform supports Unicode 'variation selectors' + in the range [0xFE00-0xFE0F]. + - Added a Mac OS implementation of Fl_Window::wait_for_expose() that + became necessary with Mac OS 10.10 "Yosemite". + - Added the libfltk target to the Xcode project producing a static + version of the FLTK library (Mac OS X). + - Restored the possibility to call Fl::set_font() before main() starts. + - Allow using the --enable-x11 configure option on the Mac OS platform + which produces an X11 version of the FLTK library (don't use unless + you know what you're doing). + - FLTK code and fluid-generated code can be used in static initializers. + - Added light gray separator line to fluid's widget browser (STR #2997). + - Improved tooltip behavior for huge tooltips: remove flicker, support + key/mouse dismiss (STR #2650). + - Modifier key names displayed in shortcut labels can now be localized. + See documentation of fl_shortcut_label(). You can set modifier key + names for Ctrl, Alt, Shift, and Meta by assigning global string + pointers to your translated modifier key names. + - Many documentation improvements and fixes. + - Fixed many compiler warnings (STR #2988). + - Fluid now generates code with less compiler warnings (STR #2813). + - Many CMake improvements and fixes. Note: CMake is mostly operating + now, but not yet recommended for production use. Please test and + report issues. + - Updated bundled zlib from 1.2.5 to 1.2.8. + - Updated bundled libjpeg from jpeg-8c to jpeg-9a. + + + Bug fixes + + - Fix potential crash when using keyboard navigation on Fl_Tabs + widget without children (STR #3333). + - Fix potential crash if Fl_Window::icon(NULL) was called to clear + (reset) a window icon. This is now legal and documented behavior. + The same applies to Fl_Window::default_icon(). + - Allow widget callback to be NULL, i.e. no callback (STR #2835). + - Fixed Fl_Help_View buffer overflow (STR #3275). + - Fl_Browser now correctly adjusts its scrollbars when the default + text size is changed with textsize(int) (STR #3057). + - Fixed Fl_Text_Display/Fl_Text_Editor slow scrolling, line number + display, wrap mode "hiding" text behind scrollbars, and more + scrollbar handling (alignment) (STR #3272). + - Fixed valgrind warning (uninitialized variable) in Fl_Window. + Visible only with FLTK_ABI_VERSION >= 10303, since FLTK 1.3.3. + - Fixed Windows drag'n'drop not showing insert position if the drop + target is inside the same window or process (STR #3209). + - Fixed undefined reference building shared cairo library (STR #3276). + - Fixed Fl_Browser if text argument to some methods is NULL (STR #3269). + - Fixed missing image release in fluid (STR #2840). + - Fixed out-of-bounds memory access in fluid (STR #3263). + - Fixed trailing white space in fluid .fl files (STR #3239). + - Several box types were not drawn correctly when deactivated. + The background color for deactivated widgets is now correct: + fl_inactive(color()) (STR #2907). + - Fix inconsistent interpretation of ld() in image handling + (STR #3308). This is a minor issue since ld() is usually 0 or + w()*d(). Documentation has been fixed, and ld() handling is now + consistent in Fl_(RGB_)Image and fl_draw_image() and friends. See + documentation of Fl_Image and Fl_RGB_Image for more information. + - Fixed Fl_Pixmap (background) drawing to respect the clip region + (STR #3206). + - Fixed reading .pbm image files: 1 is now interpreted as black, + and images whose width are a multiple of 8 are correctly read. + Note: if you relied on the faulty behavior you may need to fix + your image files. + - Restored window background drawing, particularly the 'plastic' + scheme's background (STR #3059). This was a regression since + FLTK 1.3.0. + - Prevent sending (FL_SHORTCUT) events to inactive widgets (STR #3216). + - Fixed button label clipping (STR #3237). + - Fixed Fl_Menu_::item_pathname() handling of descending submenu + pointers (STR #3177). + - Fl_Text_Display: style buffer colors are no longer manipulated by + fl_contrast() for normal text drawing (fltk.coredev thread started + 04/08/15, Subject: "RFC: Fl_Text_Display style buffer color weirdness") + - Fl_Tree::deactivate() now affects draw color of items (must have + ABI 1.3.3 or higher enabled). For icons to draw deactivated, + enable ABI 1.3.4. (test/tree has a 'deactivate tree' button) + - Fl_Tree::find_item() did not find items if the pathname contained + identical strings (STR #3234). + - Fixed possible bad border effect when a set of radio menu items + is located first in its menu (STR #3176): Fl_Menu_Item::set_only() + is deprecated and replaced by Fl_Menu_::set_only(Fl_Menu_item*). + - Restore the correct state of mouse buttons and keyboard modifier keys + after closing a file or printer dialog (STR #3221). + - Fix for deactivate colors issue with Fl_Text_Display/Editor (STR #3219). + - Fixed issue with MSWindows platform where the program kept running + after closing all its windows (STR #3165). + - Fix potential buffer overflow (MSWindows: BEX64 error) and problem with + MSWindows environment variables "HOME"(MinGW) vs. "UserProfile"(DOS) + - Fix issue with MSWindows platform where a window would decrease + in size after each close/open (STR #3167). + - Fix undefined reference XGetUtf8FontAndGlyph (STR #3191). + - Fix potential keyboard hangup (STR #3192). + - Fix for: .xbm images were not previewed (STR #3131). + - Fixed crash on Mac platform when resizing a not yet shown() Fl_Gl_Window. + - Fixed potential Windows GDI leak (STR #3254). + - Fixed Linux/Unix potential program hang when dialog pops up while + a menu is open (STR #3179). + - Fixed a crash when a Unix/Linux program calls take_focus() before any + window has been show()n. + - Fixed an error on the Mac platform when drawing to an Fl_Image_Surface + object without using the Fl_Image_Surface::draw() method. + - Fixed STR #3268 where a fullscreen window could become relocated + behind the menu bar and dock (Mac OS only). + - Fixed STR #3207: ^C not working when numlock or capslock is on. + - Fixed code editor in Fluid (STR #3184). + - Fixed a potential hangup of the Fl::awake() queue under Windows if + a window is resized or moved while the Fl::awake() message is sent + (STR #3143). + - Fixed a regression: restore the possibility to call + fl_draw_image(buf,X,Y,W,H,D,L) with negative D and/or L arguments. + - Fixed overflow in Fl_Valuator::precision(int) to 0...9 (STR #3280). + + +CHANGES IN FLTK 1.3.3 RELEASED: Nov 03 2014 + + New features and extensions + + - 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 Japanese). This implementation has been reported to work + well for Chinese. Superficial testing suggests it's also operational + for Japanese. In-depth testing remains needed though. + + Other improvements + + - Many CMake improvements (e.g. STR #2962, 2977, 2994, 3045, 3055). + - Some autoconf, configure improvements. + - Removed 1024 bytes constraint in labels and browser lines (STR #2990). + - Mac OS version of Fl_Native_File_Chooser: when using filters in a + save file dialog, the output file extension gets changed when the + user modifies the output file type. + - Many Mac OS X improvements related to Fl_Sys_Menu_Bar. + - Improved Mac OS X keyboard handling of special keys or combinations. + - General Mac OS X improvements, incl. high resolution (Retina) + displays, and support up to Mac OS X 10.10. + - Documentation improvements and clarifications. + - Printing support improvements, including GL windows. + - Many improvements related to Fl_Tree (some of them only as ABI + breaking features, see below). + - Some static data has been made 'const' to improve memory usage + with shared libraries. + - Don't grab navkeys with modifiers (CTRL, ALT), as the application + may want them (STR #3104). + - Check compiler support of -fvisibility, -fvisibility-inlines-hidden, + and use it, if available. Reduces shared library size. + - Drag'n'drop behaves better now: if text is dropped in the widget it + comes from, then it works like cut and paste. + - Other improvements of DND handling when dragging text from other + applications, e.g. Firefox and Thunderbird. + - Windows message WM_QUIT is processed like SIGTERM, i.e. as a + request to terminate the program. + - Fluid no longer closes the code window when hitting ESC (STR #2997). + - Improved Fl_Widget::when() handling in Fl_Tabs (STR #2939). + - Improved support for more recent compilers (clang and gcc) that + issue more warnings, and fixed some 32-/64-bit compilation issues. + - Added method Fl_Window::clear_modal_states() to make it possible + to remove the modal or non-modal state from a window (STR #3123). + + Bug fixes + + - Fixed word selection dragging in text input (STR #3014). + - Fixed border padding for special cases (STR #3061, Windows only). + - Fixed crash if Fl_Window::flush() called while window not shown() + (STR #3028). + - Fixed segfault in fl_set_fonts_xft.cxx when loading fonts not named + as expected (STR #2976). + - Fixed a memory leak in font loading/allocation (STR #3069). + - Fixed minor memory leaks in handling/freeing of X11 objects. + - Fixed OS X fl_read_image() and Fl_Paged_Device::print_window_part() + when using a Retina display. + - Fixed MinGW build if configure didn't find strcasecmp() (STR #2994). + - Fixed access of protected member under Linux/Unix (STR #2903). + - Fixed various Mac specific OpenGL issues (STR #2944) + - Fixed PostScript printing with non-english locale (STR #3130). + - Fixed a regression in Fl_File_Chooser since FLTK 1.1.8: the + Enter key now selects the file again. + - Fixed a bug in Fl_Native_File_Chooser (Windows) for some file name + input filters (STR #3101). + - Fixed out-of-bounds memory access in Fl_Text_Display (STR #2730). + + 1.3.3 ABI FEATURES + + To enable the following ABI features, put: + #define FLTK_ABI_VERSION 10303 + ..at the top of your FL/Enumerations.H and rebuild FLTK and your app. + + - Added Fl_Window::shape(const Fl_Image*) to create arbitrarily-shaped + windows + - Made Fl_Help_View::handle() public and Fl_Help_View::draw() protected + to enable inheritance and for consistency (STR #2834). + Note: both methods were private. + - Made Fl_Scroll::recalc_scrollbars() protected so that it can be used + in derived widgets to calculate scrollbar visibility and positions. + - Added Fl_Table::tab_cell_nav() for controlling Tab key navigation of table + - Added Fl_Tree::get_selected_items(), returns the selected items as an array + - Added Fl_Tree::item_draw_callback(), letting one define a custom draw + function for Fl_Tree_Item's. + - Fl_Tree: various related changes: + o Added horizontal scrollbar + o Separated draw() and tree size calculation + o Added new public methods: + > resize() -- uses optimized dim calc, avoids tree recalc + > next_item() -- added parameters: direction, visibility + > extend_selection() -- added parameters, improved algorithm + > calc_dimensions() -- calc tix/y/w/h, tox/y/w/h and scrollbars + > calc_tree() -- calc tree_w/tree_h + > recalc_tree() -- schedules calc_tree() + > first_visible_item(), last_visible_item(), next_visible_item() + > first_selected_item(), last_selected_item(), next_selected_item() + o Added protected variables: + > _tix/y/w/h -- tree widget 'inner' dimension + > _tox/y/w/h -- tree widget 'outer' dimension + > _tree_w,_tree_h -- entire tree hierarchy width/height + o Deprecated: + > item_clicked() -- use callback_item() instead + > first_visible() -- use first_visible_item() instead + > last_visible() -- use last_visible_item() instead + + - Fl_Tree_Item: various related changes: + o Added Fl_Tree ptr: needed for auto-recalc when item modified directly + o Added new methods tree(), recalc_tree() + o Added new ctor that accepts Fl_Tree* + o draw() parameters changed to include tree size calculations + o Deprecated: + > ctor using Fl_Tree_Prefs parameter (Fl_Tree* version better, + and must be used for 1.3.3 ABI features to work correctly) + > next_displayed() -- use next_visible() instead + > prev_displayed() -- use prev_visible() instead + - test/tree: added tests for newly added features + +CHANGES IN FLTK 1.3.2 RELEASED: Dec 12 2012 + + - Removed unnecessary drawing calls (STR #2898) + - Fixed regression in FLTK 1.3.1 for unbundled Mac OS FLTK applications + that did not appear in dock nor have a menu bar (STR #2890). + - Fl_Table::clear() now calls table->clear() for consistency. (STR #2889) + - Fixed Fl_Scroll widget that fails under Mac OS X 10.8 and Retina + display (STR #2887). + - Prevents scrollbars from drawing when widget is sized too small + to be visible (STR #2886). + - Documented how to make a Mac OS X FLTK application launchable + by dropping files on its icon. + - Fixed a Mac-specific issue that appeared with OS 10.8 (Mountain Lion): + long delay before opening when the application is started by dragging + a file on the application icon. + - Fixed use of PNG image from in-memory data (STR #2884). + - Added static Fl_RGB_Image::max_size(size_t) to limit the maximum + memory size allowed to RGB images (STR #2881). + +CHANGES IN FLTK 1.3.1 RELEASED: Nov 06 2012 + + - Fixed utf_strncasecmp and utf_strcasecmp + - Moved all inline constructors into source file to avoid bad DLLs + - Fixed Fl_Widget::copy_label() and Fl_Window::copy_label() when + called with the old label() (STR #2836) + - Fixed Fl_Input_::maximum_size() documentation and replace() method + to honor maximum_size() as number of allowed characters (STR #2747). + - Fixed a potential crash if Fl_Double_Window::flush() was called + before show() + - Fixed regression (in FLTK 1.3.0) that could clear a radio + button by using the keyboard (space or shortcut) (STR #2748) + - Fixed fl_pie() drawing too small on X11 (STR #2703) + - Fixed Fl_Menu issue with unusual menu flags (STR #2680) + - Fixed Windows DLL import of fl_xid() (STR #2670) + - Added Fl::screen_work_area() functions that compute the work area + of a screen. These functions improve the positioning of menus. + Changed Fl::x(), Fl::y(), Fl::w(), Fl::h() functions + to return the origin and size of the work area of the main screen + (STR #2695 + 2697) + - Created the FL_SCREEN_CONFIGURATION_CHANGED event that is triggered + when a screen is added, removed, moved or when resolution is changed + (STR #2600) + - Improved the description of page size and orientation by + Fl_PostScript_File_Device. + - Added support for horizontal wheel movement under X11 and Windows + Vista and above (STR #2644). + + 1.3.1 ABI FEATURES + (To enable the following ABI features, put: #define FLTK_ABI_VERSION 10301 + at the top of your FL/Enumerations.H and rebuild FLTK and your app) + - Fl_Tree optimized to support large trees (eg. 100k items): + Added _next_sibling and _prev_sibling to Fl_Tree_Item class, + and support methods. + + +CHANGES IN FLTK 1.3.0 RELEASED: Jun 16 2011 + + New Features + + - Added UTF-8 Unicode support throughout FLTK and Fluid + - Added Fl_Tree widget for hierarchical views + - Added Fl_Table widget for widget layout + - Added Fl_Native_Filechooser as a widget and global options + - Added printing support (Fl_Printer class and friends) for native + printing on Windows and Mac OS X, PostScript printing on X11 + with CUPS or lp, and PostScript file output on all platforms + - Added basic Fl_Device abstraction layer for all drawing functions + - Moved OS X code base to the more modern Cocoa toolkit thanks + to the awesome work of Manolo Gouy (STR #2221) + + API and ABI Compatibility to FLTK 1.1.x + + - All strings are expected to be in UTF-8 Unicode encoding + - Replaced Fl_Scroll::position(int,int) with scroll_to(int,int) + to avoid overriding Fl_Widget::position(int,int) (STR #1303) + - Although FLTK 1.3 maintains source code compatibility as good + as possible, the binary interface changed considerably. + - Updated the bundled libpng to v1.5.1 (released Feb 3, 2011) + - Updated the bundled libjpeg to v8c (released Jan 16, 2011) + - Updated the bundled zlib to v1.2.5 (released Apr 19, 2010) + + API Enhancements and Changes + + - Changed font index to 32 bit + - Changed font size to 32 bit + - Changed widget coordinates to 32 bit + - Corrected const methods of Fl_Text_{Buffer|Display|Selection} + to be declared const, corrected an Fl_Text_Buffer attrib. typo + - All draw() methods of widgets are now protected (STR #2142). + - Changed Fl_Group::clip_children() to public (STR #2017) + - Changed socket library to winsock2 (ws2_32.dll) instead of + wsock32.dll for Windows. The dll is now loaded dynamically only + if/when needed. + - Changed hide() and show() methods. They are now virtual from + Fl_Widget. + - Added new label and image alignments (STR #2269) + - Added global UI options (STR #2471) + - Added class Fl_Widget_Tracker to simplify safe handling of widget + deletion in callbacks. This is used in Fl_Widget::do_callback() + to prevent accessing widgets after deletion in the callback. + - Added sorting to Fl_Browser_ (STR #2113) + - Added new method client_area() for easier positioning of children + in Fl_Tabs (STR #2480) + - Added interface to set color chooser mode (STR #2407) + - Added Fl_Menu_::find_item by callback + - Added loading jpeg images from memory + - Added support for shortcuts for Fl_Input_, Fl_Value_Input, and + Fl_Text_Display derived widgets (STR #1770) + - Added Fl_Menu_ methods: insert(), find_index(), clear_submenu() + - Hotspot behavior of fl_message() and other common dialogs is now + optional (STR #2561). + - Common dialogs like fl_message() and fl_ask() can now have a window + title (STR #2562). + + IDE Support and Command Line Build Options + + - FLTK now supports Apple Xcode 3, MS VisualC 2008, and + MS VisualC 2010. MS VisualC 6 support is maintained as a + compatibility base for VisualC.net, etc. . FLTK continues + to support configure/make and improved CMake build files. + - Added step by step README's for MSWindows, OS X, and four + Linux distros. + - Added "ide" subdirectory for all IDE support files + - Added template to generate new projects with Xcode. + - Added --enable-cairo and --enable-cairoext configure options. + - redesigned CMake files (STR #2317). + - The new configure option --enable-x11 (lowercase 'x') enables + Cygwin builds under Windows (with --enable-cygwin) to use X11 + instead of GDI drawing (STR #2147, #2183) and is ignored otherwise. + - Changed "fltk-config --post foo" to create an application + bundle rather than attaching a resource fork. + - Changed default for configure option --with-links for common + misspellings on case sensitive file systems like Unix/Linux. + The new default is --without-links; use --with-links on + Unix/Linux only if you need the links (e.g. lowercase '.h') + + Fluid + + - Added argument-less constructor in Fluid Widget Class + - Added jpeg support to Fluid image() element + - Added binary data type to Fluid + - Empty functions in Fluid no longer create an + implementation (STR #2259) + - Fixed internationalisation of menus using Fluid (STR #2246) + - Fixed menu item counting issue in Fluid (STR #2322) + - Fixed lost top item in Fluid's tree browser (STR #2233) + - Fixed Fluid dependency on X11 (STR #2261) + - Fixed Fluid textcolor output (STR #1992) + - Fixed wrong default value of Fl_Spinner in Fluid (STR #1991) + + Documentation + + - Added documentation for event delivery (STR #1983) + - Added Fl_Scroll::bbox() documentation (STR #1893) + - Updated documentation for Fl_Input_ + - Updated Copyright dates to 2010 (STR #2036) + - Updated mirror sites in documentation (STR #2220) + - Fixed documentation for Fl_Progress (STR #2209) + - Fixed documentation (added missing COMCTL32.LIB dependency) + + Other Improvements + + - Added drag'n'drop support for Fl_Text_* + - Added visual feedback for button shortcuts (STR #2372) + - Added callback when double-clicking file in a file chooser + (STR #2346) + - Added alternative Xft font names (STR #2215) + - Added mouse!=0 check in Fl_Glut_Window::handle (STR #2381) + - Added indexing to Fl_Preferences + - Added OS X cursor control to Fl_Input (STR #2169) + - Added menu shortcut alignment for OS X + - Added drop box to UTF-8 test that will show the UTF-8 encoding + for the first dropped character + - Added flexible gap size for text buffer (STR #2046) + - Added clarification to Fl_GL_Window mode function (STR #1945) + - Added alternative text input awareness on OS X + - Improved handling of composed keys in OS X 10.5 and up + - Improved stability of fl_read_image (STR #2021) + - Much faster fl_read_image() for Windows (STR #2387). + - Improved support for faulty X11 clients (STR #2385) + - Integrated default menu into Demo test app + - Replaced _WIN32 symbols that had come with UTF-8 and the + new Fl_Table widget with WIN32 + - Widgets now remove stale entries from the default callback + queue when they are deleted (STR #2302) + - Managing all Widget flags in a single location now (STR #2161) + - File chooser preview now recognizes UTF-8 encoded + text files (STR #2218) + - Setting a default font for Xft (STR #2216) + - Restructured the unittest application + - Fl_Preferences.H now doesn't include windows.h any more + (Windows only, STR #2173). + - Fl_Window::draw() now doesn't reset its x/y-coordinates to 0 + anymore before drawing itself and its children. + - Fl_Help_View handles HTML2 font color specification (STR #890) + - Widgets now remove themselves from their parent group (if any), + when destroyed (STR #1894) + - Changed Fl_Group and Fl_Scroll to resize themselves before + resizing their children (STR #2032) + + Bug Fixes + + - Fixed potential crash in fl_xid() on Linux (STR #2635) + - Fixed keyboard navigation in fl_choice() (STR #2591) + - Fixed alpha blending under X11 when line data size != 0 (STR #2606) + - Fixed Fl_Tabs selection border drawing, if tabs are at the bottom + of the widget (STR #2480) + - Fixed Compiling with mingw-w64 (STR #2308). + - Fixed crashes when detecting illegal UTF-8 sequences + in Fl_Text_* widgets (STR #2348) + - Fixed Fl_Text_Display Tabulator calculations (STR #2450) + - Fixed file access code to use UTF-8 strings (STR #2440) + - Fixed ARM Unicode cross compilation issue (STR #2432) + - Fixed xclass support for Fl_Window (STR #2053) + - Fixed Caps Lock handling in X11/XIM (STR #2366) + - Fixed handling of missing fonts in Xft (STR #2355) + - Fixed OpenGL hide/show issue in OS X (STR #2260) + - Fixed File Chooser preview hang if a device was choosen + - Fixed blinking of selection when the mouse was dragged + outside of the Fl_Text_* widget + - Fixed Unicode support for Fl_Text_* widgets + - Fixed menu and shortcut handling (STR #2243) + - Fixed fltk-config to give --libs on one line (STR #2408) + - Fixed outside label redraw damage areas (STR #2436) + - Fixed compile errors when HAVE_LIBJPEG was not defined + (STR #2382) + - Fixed special handling for ISO back-tab keycode (STR #2369) + - Fixed static allocation in Fl_Tabs (STR #2370) + - Fixed Fl_Widget::measure_label() to const (STR #2406) + - Fixed unbalanced Windows OleInitialize/OleUnitialize calls + when loading/unloading the FLTK dll (STR #2417) + - Fixed X11/XDBE double buffering (STR #2152, #2197) + - Fixed menu and tooltip window animation bug under X11 (compiz) + by setting an appropriate window type (STR #2082) + - Fixed max. fd calculation, if USE_POLL is enabled (STR #2324) + - Fixed clipping for offscreen rendering (OSX, STR #2330) + - Fixed possibility of wrong flags() in Fl_Window::iconlabel() + (STR #2161) + - Fixed Scrollbar events when max is less than min (STR #2283) + - Fixed crash in test/Editor when freeing buffer + too soon (STR #2294) + - Fixed Fl_Preferences Cygwin wide character bug (STR #2164) + - Fixed sorting in Fl_Browser - last item would not + be sorted (STR #2300) + - Fixed window levels in OS X Cocoa (STR #2316) + - Fixed a buffer overflow in fl_utf8from_mb() (STR #2279) + - Fixed a Windows GDI leak when testing alpha blending capabilities + - Fixed crashes for recursive common dialogs (STR #1986, #2150) + - Fixed a name conflict with new (VS 2008 Express) winsock2.h + versions and another conflict that produced compile errors + with VS 2008 Express (STR #2301) + - Fixed all color related calls to Fl_Color type (STR #2208) + - Fixed Fl_Choice contrast with light-on-dark settings (STR #2219) + - Fixed X server "lock", if a modal dialog window is opened + while a menu is active (STR #1986) + - Fixed Windows compile bug with "#define USE_COLORMAP 0" + (STR #2241) + - Fixed glibc 2.10 compiler problems (Fedora 11 and others) + with scandir() and strchr() (STR #2222) + - Fixed OpenGL shared context handling (STR #2135) + - Fixed gray-scale images with alpha channel (STR #2105) + - Fixed unexpected shortcut behavior for Win32 (STR #2199) + - Fixed fl_draw_image to obey the alpha channel (OS X only) + - Fix for multiple popups, when dragging and calling fl_alert() + and friends from the callback (STR #2159) + - Fixed control key keycodes with modifiers on OS X + - Fixed bad system menu handling in OS X (STR #2153) + - Fixed File Input mouse pointer dragging (STR #2181) + - Fixed 'del' keycode on OS X + - Fixed OS X support for sending and receiving dnd data as UTF-8 + - Fixed Copy/Paste operations with UTF-8, UTF-16 support and + fltk1.1 compatibility. (STR #2104, 2121). + - Fixed fl_set_spot() for Windows (STR #2101) + - Fixed callback that would not be called when shortcut was used + with radio and toggle buttons in default FL_RELEASE mode. + - Fixed a problem with TrackMouseEvent() (Windows only) that would + generate wrong FL_LEAVE events with subwindows. TrackMouseEvent + is now enabled by default (it was disabled for GNU compilers). + It can be disabled by defining NO_TRACK_MOUSE. + Improved test/subwindow.cxx (STR #2079) + - Fixed menu position close to screen border (STR #2057) + - Fixed adding an idle handler during a draw() call (STR #1950) + - Fixed first modifier key event (STR #1952) + - Fixed Fl_Scroll inside Fl_Scroll (STR #265) + + Removed Features + + - Removed Watcom compiler support because it was introduced in + 1.1.6 as a partial solution and never completed. + - Removed an XForms compatibility "feature" that prevented the + down array of Fl_Menu_Button from drawing (STR #2141). + - Removed support for gcc 2.x (or older) + - Removed redundant Fl_Group casts + + +CHANGES IN FLTK 1.1 + + See CHANGES_1.1 + + +CHANGES IN FLTK 1.0 + + See CHANGES_1.0 |
