Update of /cvsroot/perl-win32-gui/Win32-GUI In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30555
Modified Files: CHANGELOG GUI.h GUI.pm GUI.rc GUI.xs GUI_Constants.cpp ImageList.xs Makefile.PL RichEdit.xs Log Message: Bug fixes, update tutorial, add tutorial samples Index: GUI.xs =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/GUI.xs,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** GUI.xs 1 Oct 2005 18:00:38 -0000 1.44 --- GUI.xs 5 Oct 2005 22:20:48 -0000 1.45 *************** *** 1089,1094 **** perlud->dwPlStyle |= PERLWIN32GUI_ISMODAL; ! // Find is parent window if any or use ActiveWindow ! parent = GetParent(handle); if (parent == NULL) { parent = GetActiveWindow(); --- 1089,1094 ---- perlud->dwPlStyle |= PERLWIN32GUI_ISMODAL; ! // Find its owner window if any or use ActiveWindow ! parent = GetWindow(handle, GW_OWNER); if (parent == NULL) { parent = GetActiveWindow(); Index: GUI.rc =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/GUI.rc,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** GUI.rc 3 Aug 2005 21:45:56 -0000 1.4 --- GUI.rc 5 Oct 2005 22:20:48 -0000 1.5 *************** *** 8,13 **** 1 VERSIONINFO ! FILEVERSION 1,02,01,00 ! PRODUCTVERSION 1,02,01,00 FILEOS VOS__WINDOWS32 FILETYPE VFT_DLL --- 8,13 ---- 1 VERSIONINFO ! FILEVERSION 1,02,02,00 ! PRODUCTVERSION 1,02,02,00 FILEOS VOS__WINDOWS32 FILETYPE VFT_DLL *************** *** 17,24 **** BLOCK "040904E4" { ! VALUE "Comments" , "Win32::GUI Perl module v1.02_01" VALUE "CompanyName" , "Open Source" VALUE "FileDescription" , "perl-win32-gui Perl extension" ! VALUE "FileVersion" , "1.02_01" VALUE "InternalName" , "GUI.dll" VALUE "LegalCopyright" , "Copyright © Aldo Caplini 1997..2005" --- 17,24 ---- BLOCK "040904E4" { ! VALUE "Comments" , "Win32::GUI Perl module v1.02_02" VALUE "CompanyName" , "Open Source" VALUE "FileDescription" , "perl-win32-gui Perl extension" ! VALUE "FileVersion" , "1.02_02" VALUE "InternalName" , "GUI.dll" VALUE "LegalCopyright" , "Copyright © Aldo Caplini 1997..2005" *************** *** 26,30 **** VALUE "OriginalFilename" , "GUI.dll" VALUE "ProductName" , "Win32::GUI" ! VALUE "ProductVersion" , "1.02_01" } } --- 26,30 ---- VALUE "OriginalFilename" , "GUI.dll" VALUE "ProductName" , "Win32::GUI" ! VALUE "ProductVersion" , "1.02_02" } } Index: RichEdit.xs =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/RichEdit.xs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** RichEdit.xs 1 Oct 2005 18:00:39 -0000 1.5 --- RichEdit.xs 5 Oct 2005 22:20:49 -0000 1.6 *************** *** 675,679 **** ########################################################################### # (@)METHOD:SetEventMask(MASK) ! # LRESULT SetEventMask(handle, mask) --- 675,709 ---- ########################################################################### # (@)METHOD:SetEventMask(MASK) ! # The SetEventMask() method sets the event mask for a rich edit control. ! # The event mask specifies which notification messages the control sends ! # to its parent window. MASK is any combination of: ! # ! # ENM_CHANGE Sends EN_CHANGE notifications. ! # ENM_CORRECTTEXT Sends EN_CORRECTTEXT notifications. ! # ENM_DRAGDROPDONE Sends EN_DRAGDROPDONE notifications. ! # ENM_DROPFILES Sends EN_DROPFILES notifications. ! # ENM_IMECHANGE Microsoft Rich Edit 1.0 only: Sends EN_IMECHANGE ! # notifications when the IME conversion status has ! # changed. Only for Asian-language versions of the ! # operating system. ! # ENM_KEYEVENTS Sends EN_MSGFILTER notifications for keyboard events. ! # ENM_LINK Rich Edit 2.0 and later: Sends EN_LINK notifications when ! # the mouse pointer is over text that has the CFE_LINK and ! # one of several mouse actions is performed. ! # ENM_MOUSEEVENTS Sends EN_MSGFILTER notifications for mouse events. ! # ENM_OBJECTPOSITIONS Sends EN_OBJECTPOSITIONS notifications. ! # ENM_PROTECTED Sends EN_PROTECTED notifications. ! # ENM_REQUESTRESIZE Sends EN_REQUESTRESIZE notifications. ! # ENM_SCROLL Sends EN_HSCROLL and EN_VSCROLL notifications. ! # ENM_SCROLLEVENTS Sends EN_MSGFILTER notifications for mouse wheel events. ! # ENM_SELCHANGE Sends EN_SELCHANGE notifications. ! # ENM_UPDATE Sends EN_UPDATE notifications. Rich Edit 2.0 and later: ! # this flag is ignored and the EN_UPDATE notifications are ! # always sent. However, if Rich Edit 3.0 emulates Rich Edit ! # 1.0, you must use this flag to send EN_UPDATE notifications. ! # ! # The default event mask before any is set is ENM_NONE. Returns the previous ! # event mask. ! LRESULT SetEventMask(handle, mask) Index: Makefile.PL =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/Makefile.PL,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** Makefile.PL 3 Aug 2005 21:45:57 -0000 1.12 --- Makefile.PL 5 Oct 2005 22:20:49 -0000 1.13 *************** *** 324,328 **** $(NOECHO) $(PERL) -I$(BUILD_TOOLS) $(BUILD_TOOLS)/doHTMLDocs.pl ! all:: poddocs DOC_FRAG --- 324,328 ---- $(NOECHO) $(PERL) -I$(BUILD_TOOLS) $(BUILD_TOOLS)/doHTMLDocs.pl ! all:: poddocs demos DOC_FRAG *************** *** 340,344 **** $(CP) samples/* $(INST_DEMO) ! ppmdist: all htmldocs demos $(TAR) --exclude="*.pod" -$(TARFLAGS) $(DISTNAME).tar blib $(COMPRESS) $(DISTNAME).tar --- 340,344 ---- $(CP) samples/* $(INST_DEMO) ! ppmdist: all htmldocs $(TAR) --exclude="*.pod" -$(TARFLAGS) $(DISTNAME).tar blib $(COMPRESS) $(DISTNAME).tar Index: GUI.pm =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/GUI.pm,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** GUI.pm 25 Aug 2005 19:30:17 -0000 1.32 --- GUI.pm 5 Oct 2005 22:20:48 -0000 1.33 *************** *** 25,29 **** # STATIC OBJECT PROPERTIES # ! $VERSION = "1.02_01"; # For MakeMaker $XS_VERSION = $VERSION; # For dynaloader $VERSION = eval $VERSION; # For Perl (see perldoc perlmodstyle) --- 25,29 ---- # STATIC OBJECT PROPERTIES # ! $VERSION = "1.02_02"; # For MakeMaker $XS_VERSION = $VERSION; # For dynaloader $VERSION = eval $VERSION; # For Perl (see perldoc perlmodstyle) *************** *** 1826,1829 **** --- 1826,1835 ---- # Most of the methods and events that apply to a L<TextField|Win32::GUI::Textfield> # also apply to Win32::GUI::RichEdit. + # + # Note that in order for most events to be triggered you must call the + # SetEventMask() method, to set the events that you want to be triggered. + # See SetEventMask(). + # + # By default Win32::GUI::RichEdit uses Rich Edit 1.0. package Win32::GUI::RichEdit; @ISA = qw( *************** *** 2035,2039 **** # Create and manipulate slider controls # ! # See Win32::GUI::Trackbar # package Win32::GUI::Trackbar; --- 2041,2045 ---- # Create and manipulate slider controls # ! # See L<Win32::GUI::Trackbar|Win32::GUI::TrackBar> # package Win32::GUI::Trackbar; Index: CHANGELOG =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/CHANGELOG,v retrieving revision 1.63 retrieving revision 1.64 diff -C2 -d -r1.63 -r1.64 *** CHANGELOG 1 Oct 2005 18:00:38 -0000 1.63 --- CHANGELOG 5 Oct 2005 22:20:48 -0000 1.64 *************** *** 7,10 **** --- 7,25 ---- =================== + + [Robert May] : 4 Oct 2005 - Bug fixes and preparing for 1.03 release + - Makefile.PL added 'demos' target as dependancy for 'all', so that + samples get included in ActiveState PPM + - GUI_Constants.cpp: correct TMP_NONOTIFY to TPM_NONOTIFY (aschwarz1309) + - GUI.pm, RichEdit.xs: added documentation for SetEventMask method + (Tracker: 1242808) + - GUI.pm upped version to 1.02_02 + - GUI.h, ImageList.xs allowed missing ImageList_* functions to be compiled + in under MinGW and Cygwin, if w32api package has high enough version + - GUI.xs: Changed DoModal's use of GetParent to GetWindow(hwnd, GW_OWNER). + See http://support.microsoft.com/default.aspx?scid=kb;en-us;84190 for + more information (Tracker: 1165626) + - Updated all the Tutorial documentation and added tutorial examples to + the samples directory. + + [Robert May] : - GUI.h added GET_X_LPARAM and GET_Y_LPARAM macros (from windowsX.h) Index: ImageList.xs =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/ImageList.xs,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** ImageList.xs 3 Oct 2005 19:39:40 -0000 1.6 --- ImageList.xs 5 Oct 2005 22:20:49 -0000 1.7 *************** *** 70,75 **** UINT flag CODE: ! // Not supported in MinGW ! #ifdef __MINGW32__ RETVAL = FALSE; #else --- 70,76 ---- UINT flag CODE: ! // Not supported in MinGW w32api package prior to v3.2 ! #ifdef W32G_BROKENW32API ! W32G_WARN_UNSUPPORTED("ImageList_Copy missing from build"); RETVAL = FALSE; #else *************** *** 179,184 **** param.dwRop = rop; ! // Not supported in MinGW ! #ifdef __MINGW32__ RETVAL = FALSE; #else --- 180,186 ---- param.dwRop = rop; ! // Not supported in MinGW w32api package prior to v3.2 ! #ifdef W32G_BROKENW32API ! W32G_WARN_UNSUPPORTED("ImageList_DrawIndirect missing from build"); RETVAL = FALSE; #else *************** *** 197,202 **** HIMAGELIST hdup; PPCODE: ! // Not supported in MinGW ! #ifdef __MINGW32__ XSRETURN_UNDEF; #else --- 199,205 ---- HIMAGELIST hdup; PPCODE: ! // Not supported in MinGW w32api package prior to v3.2 ! #ifdef W32G_BROKENW32API ! W32G_WARN_UNSUPPORTED("ImageList_Duplicate missing from build"); XSRETURN_UNDEF; #else Index: GUI_Constants.cpp =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/GUI_Constants.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** GUI_Constants.cpp 31 May 2004 17:41:29 -0000 1.5 --- GUI_Constants.cpp 5 Oct 2005 22:20:49 -0000 1.6 *************** *** 1772,1778 **** goto not_there; #endif ! if (strEQ(name, "TMP_NONOTIFY")) ! #ifdef TMP_NONOTIFY ! return TMP_NONOTIFY; #else goto not_there; --- 1772,1778 ---- goto not_there; #endif ! if (strEQ(name, "TPM_NONOTIFY")) ! #ifdef TPM_NONOTIFY ! return TPM_NONOTIFY; #else goto not_there; Index: GUI.h =================================================================== RCS file: /cvsroot/perl-win32-gui/Win32-GUI/GUI.h,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** GUI.h 1 Oct 2005 18:00:38 -0000 1.19 --- GUI.h 5 Oct 2005 22:20:48 -0000 1.20 *************** *** 65,68 **** --- 65,69 ---- # define W32G_WARN if(PL_dowarn & G_WARN_ON) warn # define W32G_WARN_DEPRECATED if(PL_dowarn & G_WARN_ON) warn + # define W32G_WARN_UNSUPPORTED if(PL_dowarn & G_WARN_ON) warn //# define W32G_WARN W32G_lexwarn //# define W32G_WARN_DEPRECATED W32G_lexwarn_deprecated *************** *** 70,73 **** --- 71,75 ---- # define W32G_WARN if(PL_dowarn) warn # define W32G_WARN_DEPRECATED if(PL_dowarn) warn + # define W32G_WARN_UNSUPPORTED if(PL_dowarn) warn #endif *************** *** 688,691 **** --- 690,701 ---- // MinGW patch #if defined(__MINGW32__) || defined(__CYGWIN__) + // There are some ImageList_* functions that we use that + // are only correctly implemented in the MINGW w32api package + // version 3.2 and higher: + #include <w32api.h> // to get w32api package version + #if (__W32API_MAJOR_VERSION < 3) && (__W32API_MINOR_VERSION < 2) + #define W32G_BROKENW32API + #endif + #define WNDPROC_CAST WNDPROC #define LWNDPROC_CAST WNDPROC