I am please to announce that v1.04 of Win32::GUI is available for
download from SourceForge and CPAN.

Win32::GUI is a Perl extension allowing creation of native Win32 GUI
applications.

MORE INFORMATION

  Project Homepage:
  http://perl-win32-gui.sourceforge.net/

  Project summary:
  http://sourceforge.net/projects/perl-win32-gui/

  Downloads:
  - Source and ActiveState Perl PPM distributions:
    http://sourceforge.net/project/showfiles.php?group_id=16572
  - Source only:
    http://search.cpan.org/~robertmay/Win32-GUI-1.04/

  Release notes:
  https://sourceforge.net/project/shownotes.php?release_id=455710

RELEASE NOTES AND CHANGES

Win32::GUI::ReleaseNotes::RN_1_04 - release notes for Version 1.04 of Win32::GUI

Release Date
    15th October, 2006.

IMPORTANT INFORMATION
    This section details issues that are essential to understand when
    upgrading from earlier versions of Win32::GUI.

  Exported Constants
    The way that Win32::GUI exports constants has changed. Ensure that you
    read the "Deprecated feature status" section of this document so that
    you understand the backwards compatibility issues.

  Dual-life modules
    This version of Win32::GUI includes the modules
    Win32::GUI::AxWindow, Win32::GUI::DIBitmap, Win32::GUI::Grid,
    and Win32::GUI::Scintilla (originally by Laurent Rocher:
    <http://rocherl.club.fr/Win32GUI.html>).

    Please uninstall any previous versions of these modules that you may
    have installed before installing this version of Win32::GUI.

Summary of Changes
    This is a summary of changes between V1.03 and V1.04 See the
    CHANGELOG file in the distribution for the full detail.

  New Features
   New Packages
    Win32::GUI::AxWindow
    Win32::GUI::Constants
    Win32::GUI::DIBitmap
    Win32::GUI::DropFiles
    Win32::GUI::Grid
    Win32::GUI::Scintilla
    Win32::GUI::ReleaseNotes

   New Methods
    Win32::GUI
        Acceptfiles (Tracker: 1323988), Animate (Tracker: 1266930),
        ClassData, GetKeyState, SetWindowPos (Tracker: 1469648).

    Win32::GUI::Region
        ExtCreateRegion (Tracker: 1469648), GetRegionData.

    Win32::GUI::Tooltip
        AdjustRect, GetBubbleSize, SetTitle.

   New Events
    For all Windows
        DropFiles (Tracker: 1323988).

   New Documentation
    Win32::GUI::ListBox
        Better documentation for the differences between SetCurSel and
        SetSel (Tracker: 1177898).

    Win32::GUI::Textfield
        Correct documentation for -autohscroll and -autovscroll.

    Win32::GUI::Tooltip
        Complete documentation for the Win32::GUI::Tooltip class

   Other Features
    Better dialog navigation for Textfields
        <TAB> can now be used to move out of a multi-line Textfield when
        using the -dialogui option on a Window.

        A -wantreturn option has been added to stop the <RETURN> key firing
        the default Click event for a multi-line Textfield when using the
        -dialogui option on a Window. This replaces the previous use of
        "-addstyle => ES_WANTRETURN".

    Ballon tooltips for NotifyIcon
        The Win32::GUI::NotifyIcon pakage has been re-worked. There is
        now no need to use the -id option, and balloon tooltips are
        supported on Win2k and above. (Tracker: 1065072)

    More options for Win32::GUI::DoEvents()
        It is now possible to select which messages you want to process
        with DoEvents.

    More ways to create cursors, icons and bitmaps
        The Cursor, Icon and Bitmap constructors have been enhanced to
        allow creation from resources, including the "standard" windows
        resources. See the standard_images.pl sample to browse the
        standard resources.

    Easier way to browse and run the demos
        A new script win32-gui-demos will be installed in your perl bin
        directory. You should be able to get a full list of the sample
        code distributed with Win32::GUI, view the source and run the
        demos by typing "win32-gui-demos" at your command prompt.

    Better Splitter implementation
        The Win32::GUI::Splitter implementation has been re-written to
        provide more robust operation. The splitter bar can no longer be
        moved outside the parent window, which used to result in drawing
        problems, and the bar itself is now more nicely drawn.
        (Tracker:1363141)

        The -background option now works for splitter windows.

    Better behaviour from LoadLibrary
        The Win32::GUI::LoadLibrary() function has been enhanced so that
        it converts any passed path to a Win32 representation before
        trying to use it. Specifically this means that slashes are
        canonicised to '"\"', and under Cygwin, cygwin style paths are
        converted to Win32 paths.

    Complete re-work of Tooltip class
        The Win32::GUI::Tooltip implementation has been re-worked to
        allow all the features to be used, and now there should be no
        crashes with many of the methods which had been incorrectly
        implemented. The new implementaiton should be backwards
        compatible with what was there before, but read the
        documentation to find out about all the new features you can
        use.

        The constructor has some new options "-nofade", "-noamimate"
        and the "-balloon" option is documented. "-balloon" option along
        with the new SetTitle method allows you to make use of balloon
        tooltips.

        The events (NeedText, Pop, Show) now have a second parameter
        allowing you to correctly determine if the first parameter is a
        window handle or a tool id.

  Bug Fixes
   Reported Bugs
    Fix some crashes (Trackers 1243378 and 1248578)
    Fix some memory leaks (Tracker: 1201190)
    Fix drawing problems with coloured backgrounds (Tracker:1363141)

   Other Bugs
    -background and -forground options now work for RichEdit windows
    The SendMessageTimout implementation now matches the documentation
    -truncate option now works correctly for Label windows
    SetTabStops() method now works for ListBox windows
    The demo code all works
    Fix memory leak in Win32::GUI::DIBitmap::AlphaCopyToDC method

Deprecated feature status
    This section documents features that have been deprecated in this
    release, or in recent releases, and feature that will be deprecated
    in up-coming releases.

  Win32::GUI::Constants
    The introduction of Win32::GUI::Constants means that we now have
    access to a very large number of constants, so the current
    behaviour of Win32::GUI to export all constants to the calling
   namespace by default is no longer appropriate. So, a bare

      use Win32::GUI;

    now generates a warning that the old default behaviour will be
    deprecated - although the export behaviour of Win32::GUI 1.03 is
    maintained except for this warning.

    To eliminate this warning and correct your script, do one of the
    following:

    If you don't need any constants, use the empty list:
          use Win32::GUI();

    If you need some constants, name them explicitly:
use Win32::GUI qw(ES_WANTRETURN CW_USEDEFAULT); # Two constants exported use Win32::GUI qw(/^MB_/); # Export all constants starting with MB_

    See the Win32::GUI::Constants documentation for the full allowable
    syntax.

    You are advised to fix your scripts now, as the next version will
    stop exporting any constants by default.

    Although not advised, you can supress the warnings by turning
    deprecated warnings off:

      no warnings 'deprecated';

    Additionally accessing constants from within the Win32::GUI
    namespace is deprecated. I.e.

       -addstyle => Win32::GUI::WS_BORDER,

    will generate a warning with this release, and will stop working
    with the next release. Use one of the following methods instead:

    use the Win32::GUI::Constants namespace instead
          -addstyle => Win32::GUI::Constants::WS_BORDER(),

    use any other namespace you fancy
          use Win32::GUI qw(-exportpkg => A::B -autoload);
          ...
          -addstyle => A::B::WS_BORDER(),

    maintain compatibility of exising scripts
use Win32::GUI::Constants qw(-exportpkg => Win32::GUI :compatability_win32_gui);
          ...
          -addstyle => Win32::GUI::WS_BORDER,

  Win32::GUI::NotifyIcon
    It is no longer necessary to use the '-id' option to any of the
    Win32::GUI::NotifyIcon methods. The ID is now entirely handled
    internally. You will receive deprecated warnings if you use it.

    In particular, removing Icons from the system tray should be done
    using

      $NI->Remove();

    and not by the (now deprecated)

      $NI->Delete(-id => 1);

  Removal of GUI:: namespace
    For at least the last 6 years the Win32::GUI namespace has been
    aliased to the GUI namespace for backwards compatibility with very
    early scripts. This aliasing has been removed, and any remaining
    scripts will need updating.

Contributors to this release
    Robert May
    Reini Urban
    Jeremy White


--
Robert May
Win32::GUI, a perl extension for native Win32 applications
http://perl-win32-gui.sourceforge.net/


Reply via email to