1. [ANN] win32lib update - call for testers
- Posted by CChris <christian.cuvier at agriculture.gou?.f?> Oct 22, 2007
- 709 views
I just uploaded to RDS an updated version of win32lib v0.70.1 that apparently fixes the two main standing bugs reported to date: locked shifts on keyboard and inadequately huge print size when setting the printer font. Judith's IDE appears to work properly with this release. I also incorporated Shawn Pringle's patch he recently posted. However, I changed WIN_XP to WIN_2000, since MSDN states that GetDefaultPrinter() is supported from Win2K onwards. If anyone with Windows 2000 encounters a problem, I'll revert to the original. I only have XP available. I don't know how long it will take for the updated archive to appear in the recent contribution list, so perhaps check for the update notice before downloading again. Beware of your browser cache possibly needing a refresh, as usual. I consider this to be a beta release. This post is a call for as many people as possible to test the library and report any bugs they find. The preferred way is to use the bug tracker on Sourceforge. Otherwise, you can email oedoc hat free doubt fr: that's my private email address. The project home page is at http://sourceforge.net/projects/win32libex The only standing bug is the one CK reported. I am still waiting from input on his .prj file. I don't even know whether it is a win32lib or IDE bug. I still didn't update the SVN repository, so v0.70.1 or .2 there doesn't have the fixes yet. This is expected to be done within the next 36 hours. When some time has passed without unfixed bugs, then an official release will be in order. I'd consider a 4 week period as adequate. CChris
2. Re: [ANN] win32lib update - call for testers
- Posted by c.k.lester <euphoric at cklester.??m> Oct 22, 2007
- 680 views
- Last edited Oct 23, 2007
CChris wrote: > > The only standing bug is the one CK reported. I will test this latest revision with my prj files and let you know what happens.
3. Re: [ANN] win32lib update - call for testers
- Posted by c.k.lester <euphoric at ?kleste?.com> Oct 24, 2007
- 686 views
There is a problem. I'm using the latest Win32Lib and version 1.0.0 (May 23, 2007) of the IDE. In the .prj file, the bttn_Prepaid is defined (and appears on the Form Design window, but it does not get inserted into the .exw file when saved/run. I'll try to get a minimal example and post the prj file... give me some time. :)
4. Re: [ANN] win32lib update - call for testers
- Posted by c.k.lester <euphoric at ?kleste?.com> Oct 24, 2007
- 683 views
c.k.lester wrote: > > I'm using the latest Win32Lib and version 1.0.0 (May 23, 2007) of the IDE. I see that the IDE is at 1.0.2... I'll try that version and let you know.
5. Re: [ANN] win32lib update - call for testers
- Posted by Matt Lewis <matthewwalkerlewis at ?mail.c?m> Oct 24, 2007
- 665 views
c.k.lester wrote: > > There is a problem. > > I'm using the latest Win32Lib and version 1.0.0 (May 23, 2007) of the IDE. > In the .prj file, the bttn_Prepaid is defined (and appears on the Form Design > window, but it does not get inserted into the .exw file when saved/run. > > I'll try to get a minimal example and post the prj file... give me some time. > :) Make sure you update the bug report: http://sourceforge.net/tracker/index.php?func=detail&aid=1793556&group_id=9153&atid=109153 ...and upload the .prj file there, too, so we won't lose it again. Matt
6. Re: [ANN] win32lib update - call for testers
- Posted by c.k.lester <euphoric at ?klester.?om> Oct 24, 2007
- 670 views
Matt Lewis wrote: > c.k.lester wrote: > > There is a problem. > > I'm using the latest Win32Lib and version 1.0.0 (May 23, 2007) of the IDE. > > In the .prj file, the bttn_Prepaid is defined (and appears on the Form > > Design > > window, but it does not get inserted into the .exw file when saved/run. > > I'll try to get a minimal example and post the prj file... give me some > > time. > > :) > Make sure you update the bug report: > <a > href="http://sourceforge.net/tracker/index.php?func=detail&aid=1793556&group_id=9153&atid=109153">http://sourceforge.net/tracker/index.php?func=detail&aid=1793556&group_id=9153&atid=109153</a> > > ...and upload the .prj file there, too, so we won't lose it again. I've got sample prj files! I don't see a way to upload the files to the SF repository.
7. Re: [ANN] win32lib update - call for testers
- Posted by Bob Thompson <rthompson at rt?omp?on.karoo.co.uk> Oct 24, 2007
- 673 views
- Last edited Oct 25, 2007
CChris wrote: > This post is a call for as many people > as possible to test the library and report any bugs they find. The preferred > way is to use the bug tracker on Sourceforge. > The project home page is at <a > href="http://sourceforge.net/projects/win32libex">http://sourceforge.net/projects/win32libex</a> > CChris Hi. I've just dropped what I believe to be bug report at sourceforge regarding paste issues with 70.1 but had some difficulty navigating the site and didn't fancy registering. Anyway, it's there in its raw state. Any help would be appreciated. Regards, Bob
8. Re: [ANN] win32lib update - call for testers
- Posted by CChris <christian.cuvier at agriculture.go?v.?r> Oct 25, 2007
- 672 views
Bob Thompson wrote: > > CChris wrote: > > > This post is a call for as many people > > as possible to test the library and report any bugs they find. The preferred > > way is to use the bug tracker on Sourceforge. > > The project home page is at <a > > href="http://sourceforge.net/projects/win32libex">http://sourceforge.net/projects/win32libex</a> > > > CChris > > Hi. > > I've just dropped what I believe to be bug report at sourceforge regarding > paste issues with 70.1 but had some difficulty navigating the site and didn't > fancy registering. > > Anyway, it's there in its raw state. Any help would be appreciated. > > Regards, > > Bob The bug is there, and you may have got my comment by email. Text handling routines for RichEdit controls have been modified somewhat to accommodate RichEdit v3.0 (remember, the controls would hardly work on XP with 0.60). Probably the lib is using a non extended WM_ or EM_ message at some point - a remainder that the message architecture is still largely the one of the 16-bit win.exe -. I'll see if I can post a fix tonight, ie 12-15h from now, else this weekend. CChris
9. Re: [ANN] win32lib update - call for testers
- Posted by CChris <christian.cuvier at agric?ltur?.gouv.fr> Oct 28, 2007
- 693 views
Bob Thompson wrote: > > CChris wrote: > > > This post is a call for as many people > > as possible to test the library and report any bugs they find. The preferred > > way is to use the bug tracker on Sourceforge. > > The project home page is at <a > > href="http://sourceforge.net/projects/win32libex">http://sourceforge.net/projects/win32libex</a> > > > CChris > > Hi. > > I've just dropped what I believe to be bug report at sourceforge regarding > paste issues with 70.1 but had some difficulty navigating the site and didn't > fancy registering. > > Anyway, it's there in its raw state. Any help would be appreciated. > > Regards, > > Bob Does getText() work as you'd expect, or is it only pasting that exhibits the problem? CChris
10. Re: [ANN] win32lib update - call for testers
- Posted by CChris <christian.cuvier at a?ricu?ture.gouv.fr> Oct 28, 2007
- 693 views
Bob Thompson wrote: > > CChris wrote: > > > This post is a call for as many people > > as possible to test the library and report any bugs they find. The preferred > > way is to use the bug tracker on Sourceforge. > > The project home page is at <a > > href="http://sourceforge.net/projects/win32libex">http://sourceforge.net/projects/win32libex</a> > > > CChris > > Hi. > > I've just dropped what I believe to be bug report at sourceforge regarding > paste issues with 70.1 but had some difficulty navigating the site and didn't > fancy registering. > > Anyway, it's there in its raw state. Any help would be appreciated. > > Regards, > > Bob I think I got it. Locate the getData() function in win32lib.ew and replace the starting if branch like this:
if ctrl_Type[ id ] = RichEdit then -- return selection buffer = w32to_memory(0,ID_CHARRANGE, {0, -1}) VOID = sendMessage( id, EM_EXGETSEL, 0, buffer ) result = w32fetch( buffer, CHARRANGE_cpMax ) - w32fetch( buffer, CHARRANGE_cpMin ) w32release_mem(buffer) if result > 0 then if equal(WC_RICHEDIT,WC_RICHEDIT50) then buffer = w32acquire_mem(0, 2*result + 2 ) -- add 2 for '/0' character. iLength = sendMessage( id, EM_GETSELTEXT, 0, buffer ) text=repeat(0,iLength) lmh=buffer for i=1 to iLength do text[i]=peek(lmh)+256*peek(lmh+1) lmh+=2 end for else buffer = w32acquire_mem(0, result + 1 ) -- add 1 for '/0' character. iLength = sendMessage( id, EM_GETSELTEXT, 0, buffer ) text = peek( {buffer , iLength}) end if w32release_mem( buffer ) else iLength=getCharacterCount(id,0) buffer=w32acquire_mem(0,iLength) lmh=w32to_memory(0,ID_GETTEXTEX, {iLength,GT_DEFAULT,CP_ACP,0,0}) iLength=sendMessage(id,EM_GETTEXTEX,lmh,buffer) text=peek({buffer,iLength}) end if
So it wasn't a wrong messahe, but a wrong buffer length with the newer RE controls. Please report whether this fixes the issue for you. I'll update the bug accordingly. CChris Note: all fixes are now going in the 70.2 version, which discontinues support for the onXXX syntax. I'll upload it when a couple more bugs are reported and fixed.
11. Re: [ANN] win32lib update - call for testers
- Posted by Bob Thompson <rthompson at rthomps?n.karo?.co.uk> Oct 29, 2007
- 723 views
- Last edited Oct 30, 2007
> CChris wrote: > I think I got it. Locate the getData() function in win32lib.ew and replace > the starting if branch like this: <snip> This is part of ex.err from Win32lib.ew without your modification. I'm still getting much the same error with your modification using the example I submitted. Crashing still initiates with the paste event. Regards, Bob C:\EUPHORIA\WIN32LIB\INCLUDE\w32dll.ew:212 in function w32Func() A machine-level exception occurred during execution of this statement funcid = 137 parms = {-64043,853026,770,0,0} lRC = <no value> libfunc = <no value> lFuncDef = 38'&' linked = <no value> memset = 0 i = 5 ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23590 in function DefProcessing() id = 18 pSource = -9987 hWnd = 853026 iMsg = 770 wParam = 0 lParam = 0 lResult = <no value> ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23684 in function MessageProcessor() pSource = -9987 hWnd = 853026 iMsg = 770 wParam = 0 lParam = 0 id = 18 lHandledEvent = 0 lTemp = 42'*' result = <no value> lUserReturn = <no value> ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23744 in function SubProc() hWnd = 853026 iMsg = 770 wParam = 0 lParam = 0 ^^^ call-back from Windows ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:3827 in function sendMessage() id = 18 pCmd = 770 wParm = 0 lParm = 0 memset = 0 lRetVal = <no value> ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:16644 in procedure paste() id = 18 ... called from C:\EUPHORIA\BIN\z_window.exw:20 in procedure Paste() self = 14 event = 4 params = {} ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:4175 in function invokeHandler() id = 14 event = 4 params = {} lRoutines = { {152} } lStates = { {1} } lCallType = 1 lPos = <no value> lNotify = <no value> lRecvr = <no value> i = 1 j = 1 i = <no value> ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:22369 in function fDoCommand() id = 14 hWnd = 4522872 iMsg = 273 wParam = 14 lParam = 0 pReturn = -2761 lRC = {-9987} lChildId = <no value> lParent = <no value> ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23687 in function MessageProcessor() pSource = -2761 hWnd = 4522872 iMsg = 273 wParam = 14 lParam = 0 id = 3 lHandledEvent = 16 lTemp = 1 result = <no value> lUserReturn = <no value> ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23738 in function WndProc() hWnd = 4522872 iMsg = 273 wParam = 14 lParam = 0 ^^^ call-back from Windows ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\w32dll.ew:280 in procedure w32Proc() funcid = 101'e' parms = {955700} libfunc = <no value> lFuncDef = 52'4' memset = 0 i = 1 ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:24254 in procedure eventLoop() pData = {} temp = <no value> msg = 955700 getRC = 1 inc = <no value> el = 1 lTock = 0 ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:24473 in procedure WinMain() id = 3 style = 0 lInitFocus = -1 lRtnId = <no value> lEventName = <no value> lInitView = <no value> ... called from C:\EUPHORIA\BIN\z_window.exw:47
12. Re: [ANN] win32lib update - call for testers
- Posted by CChris <christian.cuvier at ?gric?lture.gouv.fr> Oct 30, 2007
- 708 views
Bob Thompson wrote: > > > CChris wrote: > > > I think I got it. Locate the getData() function in win32lib.ew and replace > > the starting if branch like this: > > <snip> > > This is part of ex.err from Win32lib.ew without your modification. > I'm still getting much the same error with your modification using the example > I submitted. Crashing still initiates with the paste event. > > Regards, > > Bob > > C:\EUPHORIA\WIN32LIB\INCLUDE\w32dll.ew:212 in function w32Func() > A machine-level exception occurred during execution of this statement > funcid = 137 > parms = {-64043,853026,770,0,0} > lRC = <no value> > libfunc = <no value> > lFuncDef = 38'&' > linked = <no value> > memset = 0 > i = 5 > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23590 in function > DefProcessing() > > id = 18 > pSource = -9987 > hWnd = 853026 > iMsg = 770 > wParam = 0 > lParam = 0 > lResult = <no value> > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23684 in function > MessageProcessor() > > pSource = -9987 > hWnd = 853026 > iMsg = 770 > wParam = 0 > lParam = 0 > id = 18 > lHandledEvent = 0 > lTemp = 42'*' > result = <no value> > lUserReturn = <no value> > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23744 in function > SubProc() > > hWnd = 853026 > iMsg = 770 > wParam = 0 > lParam = 0 > > ^^^ call-back from Windows > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:3827 in function > sendMessage() > > id = 18 > pCmd = 770 > wParm = 0 > lParm = 0 > memset = 0 > lRetVal = <no value> > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:16644 in procedure > paste() > id = 18 > > ... called from C:\EUPHORIA\BIN\z_window.exw:20 in procedure Paste() > self = 14 > event = 4 > params = {} > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:4175 in function > invokeHandler() > > id = 14 > event = 4 > params = {} > lRoutines = { > {152} > } > lStates = { > {1} > } > lCallType = 1 > lPos = <no value> > lNotify = <no value> > lRecvr = <no value> > i = 1 > j = 1 > i = <no value> > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:22369 in function > fDoCommand() > > id = 14 > hWnd = 4522872 > iMsg = 273 > wParam = 14 > lParam = 0 > pReturn = -2761 > lRC = {-9987} > lChildId = <no value> > lParent = <no value> > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23687 in function > MessageProcessor() > > pSource = -2761 > hWnd = 4522872 > iMsg = 273 > wParam = 14 > lParam = 0 > id = 3 > lHandledEvent = 16 > lTemp = 1 > result = <no value> > lUserReturn = <no value> > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:23738 in function > WndProc() > > hWnd = 4522872 > iMsg = 273 > wParam = 14 > lParam = 0 > > ^^^ call-back from Windows > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\w32dll.ew:280 in procedure > w32Proc() > > funcid = 101'e' > parms = {955700} > libfunc = <no value> > lFuncDef = 52'4' > memset = 0 > i = 1 > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:24254 in procedure > eventLoop() > pData = {} > temp = <no value> > msg = 955700 > getRC = 1 > inc = <no value> > el = 1 > lTock = 0 > > ... called from C:\EUPHORIA\WIN32LIB\INCLUDE\Win32lib.ew:24473 in procedure > WinMain() > id = 3 > style = 0 > lInitFocus = -1 > lRtnId = <no value> > lEventName = <no value> > lInitView = <no value> > > ... called from C:\EUPHORIA\BIN\z_window.exw:47 Strange, as I can run your test file with n=10000000 without a crash... I'll check this further, but there is hardly a clue abou the origin of he problem. Emailing you the whole distribution, it may help. CChris
13. Re: [ANN] win32lib update - call for testers
- Posted by Bob Thompson <rthompson at rthompson.karo?.co.u?> Oct 30, 2007
- 701 views
- Last edited Oct 31, 2007
> Strange, as I can run your test file with n=10000000 without a crash... I'll > check this further, but there is hardly a clue abou the origin of he problem. > Emailing you the whole distribution, it may help. > > CChris OK, the original demo still crashes with 70.2. However, I think the problem lies with setIndex(edit, {1, 0}). If I replace this with setIndex(edit, {1, length(buffer) +1}) it works fine. Modified test programme below; Regards, Bob include Win32lib.ew without warning constant win = createEx(Window, "Demo", 0, 20, 20, 400, 280, 0, 0) constant edit = createEx(RichEdit, "", win, 0, 0, w32Edge, w32Edge, 0, 0) constant Menu_Edit = createEx(Menu, "Menu", win, 0, 1, 0, 0, 0, 0) constant MenuItem_Cut = createEx(MenuItem, "Cu&t", Menu_Edit, 0, 2, 0, 0, 0, 0) constant MenuItem_Paste = createEx(MenuItem, "&Paste", Menu_Edit, 0, 3, 0, 0, 0, 0) constant MenuItem_Delete = createEx(MenuItem, "&Delete", Menu_Edit, 0, 4, 0, 0, 0, 0) constant MenuItem_Select_All = createEx(MenuItem, "Select&All", Menu_Edit, 0, 5, 0, 0, 0, 0) --=================================== sequence buffer --=================================== --Cut procedure Cut(atom self, atom event, sequence params) cut(edit) end procedure setHandler(MenuItem_Cut, w32HClick, routine_id("Cut")) --=================================== --Paste procedure Paste(atom self, atom event, sequence params) paste(edit) end procedure setHandler(MenuItem_Paste, w32HClick, routine_id("Paste")) --=================================== --Delete procedure Delete(atom self, atom event, sequence params) clear(edit) end procedure setHandler(MenuItem_Delete, w32HClick, routine_id("Delete")) --=================================== --Select All procedure Select_All(atom self, atom event, sequence params) --setIndex(edit, {1, 0})--crashes setIndex(edit, {1, length(buffer) +1})--OK end procedure setHandler(MenuItem_Select_All, w32HClick, routine_id("Select_All")) --=================================== constant n = 5000000 buffer = repeat('a', n) & repeat('z', n) setText(edit, buffer) WinMain(win, Normal)
14. Re: [ANN] win32lib update - call for testers
- Posted by CChris <christian.cuvier at agri?u?ture.gouv.fr> Oct 31, 2007
- 685 views
Bob Thompson wrote: > > > > Strange, as I can run your test file with n=10000000 without a crash... I'll > > check this further, but there is hardly a clue abou the origin of he > > problem. > > Emailing you the whole distribution, it may help. > > > > CChris > > OK, the original demo still crashes with 70.2. > > However, I think the problem lies with setIndex(edit, {1, 0}). If I replace > this with > setIndex(edit, {1, length(buffer) +1}) it works fine. > > Modified test programme below; > > Regards, > > Bob > > include Win32lib.ew > without warning > > constant win = createEx(Window, "Demo", 0, 20, 20, 400, 280, 0, 0) > constant edit = createEx(RichEdit, "", win, 0, 0, w32Edge, w32Edge, 0, 0) > constant Menu_Edit = createEx(Menu, "Menu", win, > 0, 1, 0, 0, 0, 0) > constant MenuItem_Cut = createEx(MenuItem, "Cu&t", Menu_Edit, > 0, 2, 0, 0, 0, 0) > constant MenuItem_Paste = createEx(MenuItem, "&Paste", Menu_Edit, > 0, 3, 0, 0, 0, 0) > constant MenuItem_Delete = createEx(MenuItem, "&Delete", Menu_Edit, > 0, 4, 0, 0, 0, 0) > constant MenuItem_Select_All = createEx(MenuItem, "Select&All", Menu_Edit, > 0, 5, 0, 0, 0, 0) > --=================================== > > sequence buffer > > --=================================== > --Cut > procedure Cut(atom self, atom event, sequence params) > cut(edit) > end procedure > setHandler(MenuItem_Cut, w32HClick, routine_id("Cut")) > --=================================== > --Paste > procedure Paste(atom self, atom event, sequence params) > paste(edit) > end procedure > setHandler(MenuItem_Paste, w32HClick, routine_id("Paste")) > --=================================== > --Delete > procedure Delete(atom self, atom event, sequence params) > clear(edit) > end procedure > setHandler(MenuItem_Delete, w32HClick, routine_id("Delete")) > --=================================== > --Select All > procedure Select_All(atom self, atom event, sequence params) > > --setIndex(edit, {1, 0})--crashes > setIndex(edit, {1, length(buffer) +1})--OK > > end procedure > setHandler(MenuItem_Select_All, w32HClick, routine_id("Select_All")) > --=================================== > > constant n = 5000000 > > buffer = repeat('a', n) & repeat('z', n) > setText(edit, buffer) > > WinMain(win, Normal) Oh I see. I'll look into it this week. CChris