1. IMPORTANT: Win32lib 0.60.6 and Judith Evans IDE (how to make it wo=
- Posted by "Sascha Zindel" <s.zindel at gmx.de> Feb 11, 2005
- 532 views
After doing further tests today, i found that i did not specify within fDoSetFocus what to do if findParentWindow returns 0; i just prevented it from doing wrong things. Therefore this small correction needs to be applied in line 31387: if ctrl_Destroyed[id] != 0 or (lParentWindow != 0 and ctrl_Destroyed[lParentWindow] != 0) or lParentWindow = 0 then Otherwise focus is lost for example, when editing properties within Judiths= IDE. Since the last changes might be rather confusing for someone that did not follow this thread, below you find all the changes listed completely: Modify findCurrentWindows ------------------------- line 13579: -- find the parent window if (id <= 0) or (ctrl_Parent[id] = 0) then -- The specified control has no parent return 0 end if -- loop until I hit top of the tree or a Window control. while id and (ctrl_Type[id] != Window) and (isTopLevelWindow(id) = w32False) do -- move up id = ctrl_Parent[id] end while return id end function Modify in function fDoMouse --------------------------- line 31247: if (lParent != 0 and sequence(ctrl_Mousetrap[lParent])) then Modify in function fDoSetFocus line 31393: if (lParentWindow != 0 and ctrl_Closed[lParentWindow] = 1) or (lParent = !=0 and ctrl_Closed[lParent] = 1) then Modify in function fDoKillFocus Modify in function fDoCommand ----------------------------- line 31655: if (lParent != 0 and ctrl_Type[lParent] = TabItem) then With these changes you will be able to use Judiths IDE properly without breaking other things. Besides that i am still not totally satisfied with the fDoSetFocus function= and therefore will continue to search for improvements. @Derek: Could you please consider this latest update before applying the fixes.... Greetings, Sascha Zindel > > > posted by: Ferlin Scarborough <ferlin1 at bellsouth.net> > > Sascha Zindel wrote: > >=20 > > Hi Ferlin, > >=20 > > for some reason my mail client removed a line from my sent mail. > > In function fDoSetFocus you should also change line 31387 as follows: > > if ctrl_Destroyed[id] != 0 or (lParentWindow != 0 and > > ctrl_Destroyed[lParentWindow] != 0) then > >=20 > > After that your problem is solved. > >=20 > > Greetings, > > Sascha Zindel > >=20 > Sascha, > > Thanks for the quick reply, since it is 3:17AM here now, I'll try it when= > I > get to work. > > Later. > > Ferlin Scarborough > > Learn To Program Games in Free Courses At > http://www.gameuniv.net > > My Euphoria Home Page > http://mywebpage.netscape.com/shadetreesoft > > > > -- DSL Komplett von GMX +++ Superg=FCnstig und stressfrei einsteigen! AKTION "Kein Einrichtungspreis" nutzen: http://www.gmx.net/de/go/dsl
2. Re: IMPORTANT: Win32lib 0.60.6 and Judith Evans IDE (how to make it wo=
- Posted by Ferlin Scarborough <ferlin1 at bellsouth.net> Feb 11, 2005
- 549 views
Sascha Zindel wrote: > > After doing further tests today, i found that i did not specify within > fDoSetFocus what to do if findParentWindow returns 0; i just prevented it > from doing wrong things. > > Therefore this small correction needs to be applied in line 31387: > if ctrl_Destroyed[id] != 0 or (lParentWindow != 0 and > ctrl_Destroyed[lParentWindow] != 0) or lParentWindow = 0 then > > Otherwise focus is lost for example, when editing properties within Judiths= > > IDE. > > Since the last changes might be rather confusing for someone that did not > follow this thread, below you find all the changes listed completely: > > Modify findCurrentWindows > ------------------------- > line 13579: > -- find the parent window > if (id <= 0) or (ctrl_Parent[id] = 0) then > -- The specified control has no parent > return 0 > end if > -- loop until I hit top of the tree or a Window control. > while id and (ctrl_Type[id] != Window) and (isTopLevelWindow(id) = > w32False) do > -- move up > id = ctrl_Parent[id] > end while > return id > end function > > Modify in function fDoMouse > --------------------------- > line 31247: > if (lParent != 0 and sequence(ctrl_Mousetrap[lParent])) then > > Modify in function fDoSetFocus > > line 31393: > if (lParentWindow != 0 and ctrl_Closed[lParentWindow] = 1) or (lParent = > !=0 > and ctrl_Closed[lParent] = 1) then > > Modify in function fDoKillFocus > > Modify in function fDoCommand > ----------------------------- > line 31655: > if (lParent != 0 and ctrl_Type[lParent] = TabItem) then > > With these changes you will be able to use Judiths IDE properly without > breaking other things. > > Besides that i am still not totally satisfied with the fDoSetFocus function= > > and therefore will continue to search for improvements. > > @Derek: Could you please consider this latest update before applying the > fixes.... > > Greetings, > Sascha Zindel > Sascha, Thanks it seems to work fine now, although you did not tell exactly what to change in the fDoKillFocus routine, I think I figured it out ok though. Later. Ferlin Scarborough Learn To Program Games in Free Courses At http://www.gameuniv.net My Euphoria Home Page http://mywebpage.netscape.com/shadetreesoft