view readme @ 1269:9e477efbacca

Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags. Adde some more arc segments and full circle commands to test program.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sun, 30 Oct 2011 00:40:22 +0000
parents 363d859e8372
children 0b34e2cf0706
line wrap: on
line source

This is a preview release of Dynamic Windows version 2.2.0.

The current Dynamic Windows source base is considered stable on:
OS/2, Mac, Windows, Linux, FreeBSD and Solaris.

Known problems:

Boxes with no expandable items will have their contents centered on 
    GTK2 instead of top or left justified on the other platforms.
GTK3 due to changes in the core architecture does not support
    widgets that are smaller than what is contained within them
    unless they use scrolled windows. GTK2 and other platforms do.
Mac version built on Lion with Xcode 4.1 in 64bit mode will encounter
    a compiler optimization problem with the default gcc compiler.
    The workaround is to disable optimization or use clang instead.

Known limitations:

It is not safe on all platforms to operate on widgets before they
are packed.  For portability pack widgets before operating on them.

On Unix (GTK) the window manager border is not a constant value
so environment variables DW_BORDER_WIDTH and DW_BORDER_HEIGHT
are used for proper positioning.

On Mac if performing Dynamic Windows operations on secondary 
threads which do not terminate, it may be required to call
a Mac specific DW function _dw_pool_drain() at the end of the
thread's loop to prevent memory leaks.

Future features:

OS/2 is currently missing the Calendar and HTML widgets because
the system does not support them by default. Looking into writing
custom ones or importing functionality from available libraries.

Changes from version 2.1:
Added printing support via dw_print_new, dw_print_run and dw_print_cancel.
Added pixmap font override support. In prior versions when drawing
   text to pixmaps the font set on the associated window handle is used.
   dw_pixmap_set_font() can now override that font setting, and now
   pixmaps without associated windows are supported and used in printing.
Added dw_pixmap_stretch_bitblt() which allows for scaling during bitblt.
   This function is necessary largely for very hi-res printer contexts.   
Added dw_mutex_trylock() function to try to obtain a mutex without blocking.
Added DW_TIMEOUT_INFINITE which can now be used with dw_event_wait() in 
   addition to dw_named_event_wait(), to block until the event is posted.
Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos().
   This should work on all platforms except old versions of Windows. 
Added the subversion revision number as the third Dynamic Windows version 
   number when building from a subversion source tree.
Added dw_container_set_row_data() and dw_container_change_row_data() macros
   which just call dw_container_set/change_row_title() but with (void *).
Added dw_container_set_row_bg() to set alternating row colors.
   Currently Mac, Win and GTK are supported.
Added taskbar support on the Mac, GTK (Gnome) and OS/2 (e/XCenter+Systray).
Added PNG/JPG/GIF/TIFF support on Windows via GDI+.
Improved container optimization on Mac, header width now taken into account.
Fixes for incorrect return codes from the dw_event_* functions on Windows.
Fixes for incorrect behavior on key_press callbacks on Mac and Windows.
Fixes for MDI support in GTK3. 
Fixes for problems with multiple sliders/percent widgets in a box on OS/2.
Fixes for lots of GTK3 layout and window positioning issues... 
   although minimum size issues are still present.

Dynamic Windows Documentation is available at:

http://dbsoft.org/dw_help.php

If you have any questions or suggestions feel free to email me at:

brian@dbsoft.org

Thanks!

Brian Smith