On Thu, Aug 15, 2013 at 5:29 PM, Art Heimsoth <artst...@artheimsoth.com>wrote:
>
> In the SimpleParentDlg that you had modified, why the "reply .false"
> statement?
>
The 'reply .false' returns .false to the method's invoker but the method
continues to execute in a second thread.
>
> > ::class "SimpleParentDlg" subclass UserDialog
> >
> >
> > ::method init
> > forward class (super) continue
> >
> > ...
>
> >> ::method ok unguarded <====needs to be unguarded
> > childDlg = .ExampleChildDlg~new
> >
> >
> > reply .false <============ what is this/ what does it do?
>
returns .false to the caller of ok()
continues to execute here in a second thread. Or a second "activity" as
the ooRexx reference manual calls it in explaining concurrency
> >
> > self~newPushButton(IDOK)~disable
> > self~newPushButton(IDCANCEL)~disable
> >
> >
>
>
The reply is not strictly necessary here, but it is the "proper" thing to
do.
The ok() method is invoked from the window message processing loop. You
should be aware that under normal circumstances, the window message
processing loop is stuck waiting for the ok() method to return. If you
spend 40 seconds in the ok() method before you return, the user interface
will be stuck and the OS will mark the window as "not responding." And
indeed, to the user it would appear hung.
In reality though, the ooDialog framework invokes the ok() method using
start() and is not stuck in the window processing loop waiting for the
return of ok(). This is a concession I made to allow older existing
programs to continue to work. Programs that were coded for the original
version of ooDialog where it was impossible to invoke a Rexx method from
the window message processing loop.
--
Mark Miesfeld
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Oorexx-users mailing list
Oorexx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-users