
Changes since 2nd public release July, 1995

incompatibilities
-------------------

 In addition to being binary incompatible (which is a given), source
 incompatibilities include

o. fl_initialize takes one less parameter and with different order.

o. fl_mapcolor now behaves correctly, but will probably break some
   exisiting applications. Compatibility with the old behavior can be 
   requested via new function fl_set_color_leak(1).

o. changed fl_replace_xyplot_point so the index starts from 0.

o. fl_set_pixmap[button]_pixmap now accepts two pixmap IDs, one for the 
    pixmap and one for the mask

o. somewhat more consistent naming convention for fl_winXXX routines,
   but the new API is not quite compatible with the old one. 

o. Added a void * to the fselector callback

o. form_callback function now takes a void * argument.

o. resource buttonLabelSize is changed to buttonFontSize

o. Changed fl_set_object_focus to fl_set_focus_object

o. fl_set_object_resize is changed to only take the resize parameter.
   Added fl_set_object_gravity to handle gravity. fdesign will
   emit correct code.

o. coordinates now have the origin at the upper-left corner of the
   form. This should not affect most programs that do not
   manipulate obj->y directly. All it takes is to read in the
   .fd files with fdesign and spit them out again, everything would be
   in the coordinate system. Also a compatibility function
   fl_flip_yorigin is provided for those who have lost the .fd files.

o. fl_line changed to take x1,y1, x2,y2,c as arguments. Old fl_line
   is renamed fl_diagline

o. fl_add_button_class now takes one more parameter.

Major enhancements and fixes
----------------------

o. Added version info for both header and run time library.

o. Added tab support in popup and browser

o. XPM support
   Works with libxpm 3.4c and later, including 3.4[g|h]
   Handles transparency correctly.
   More efficient color usage, less chance of out-of-color problems.
   *note* if you have been using color override to get transparency,
          you should change your code to let the library handle it for you. 
   Both pixmap button and pixmap allow non-center alignment
   Some API changes.
   Added fl_read_pixmapfile/fl_create_pixmap_fromdata

o. Added a workaround for tvtwm (and possibly vtwm)

o. Shortcut keys are no longer limited to regular keys, function
   keys (acutally any key) can be used as shortcuts.

o. Popups
   lifted the limit on the number of popups. 
   Also a few more convenience routines added.
   Changed various query routines so they are all recursive in nature.
   Different look for radio and normal toggle item.

o. Browsers
    fixed a memory leak and @C parse error.
    more font sizes/styles on per line bases.
    supports non-selectable lines in select browsers.
    added separator
    added fl_set_browser_xoffset
    added fl_set_browser_dblclick_callback

o. Sliders/Counters
   Added an output filter capability so different strings can be
   shown derived from the same floating point value.

o. Input
   Added max char limit.
   Added cursor position set/get routines.
   Added a filter capability.
   Better cursor positioning.
   Fixed a c&p problem with Aixterm.
   Fixed some small bugs

o. Colors
   Enlarged internal colormap
   Added free color routines.
   More flexible color management.

o. text
   Always clipped to the bounding box.
   More alignment (top_left etc.)

o. XYplot
   Fixed an overlay bug.
   Added functions to get more info
   Added log scale
   Lifted the limit on the max overlays.

o. fselector
    More than one can be shown with each having its own directory/pattern cache.
    Documented directory reading routines.
    added fl_set_fselector_title
    added fl_set_fselector_transient
    added fl_set_directoy and fl_set_pattern
    Cancel returns NULL; no file returns empty string. 

o. forms
    added fl_set_form_icon
    added fl_set_form_title
    added fl_set_app_mainform
    added fl_raise_form
    added fl_lower_form

o.  object
    added fl_call_object_callback(ob)
    added pre-emptive and post-handler.
    added fl_trigger_object
    added fl_set_object_return
    added fl_hide_object is smarter and more efficient. Will handle different
                alignment correctly.
    fl_set_object_[label|align|lsize|lstyle] in almost all cases
       does the right thing and there is no need to follow with
       fl_redraw_form if visible
    added
      fl_set_object_position
      fl_set_object_geometry
        will move/resize object if visible
      fl_set_object_gravity
    added in object structure
       void *c_vdata;
       long  c_ldata;
    added fl_addto_group

o   canvas
    corrected a bug with glcanvas handling where fl_hide_form/fl_show_form may 
       result in an X protocol error.
    much better and compelte glcanvas.

free object
   clip correctly
   Changed the default boxtype of free object from NO_BOX to FLAT_BOX

menu
   Added routine to attach a popup to a menu object.
   Added fl_get_menu_item_text

o. Misc.
   Fixed multiline spacing 
   Reduced idle CPU usage somewhat on some (buggy ?) platforms
   Fixed some omitted event masks
   Better documentation/index
   More label alignment options
   More demos.
   can be built more easily 
   Fully implemented and documented cursor routines
   more unit (1/100 of a point etc) for fdesign
   re-structured forms.h so it works better with C++ compilers.
   fl_show_oneliner goodie.
   better control when to activate the obj callback via fl_set_object_return
   added fl_fit_object_label to compensate font size variations
   added -vid flag and corresponding fl_set_visualID function
   added fl_set_resource
   Added means to change the button labels of the built-in goodies
   Made the fselector GUI structure public
   Added signal handling.
