Analog to ⎕wgive?

APL-related discussions - a stream of APL consciousness.
Not sure where to start a discussion ? Here's the place to be
Forum rules
This forum is for discussing APL-related issues. If you think that the subject is off-topic, then the Chat forum is probably a better place for your thoughts !

Analog to ⎕wgive?

Postby ArrayMac227 on Mon May 04, 2020 2:28 pm

Is there a way for a running function to allow GUI objects to refresh themselves, like ⎕wgive did in APL*PLUS? Ctrl-Break seems to be the only way.
ArrayMac227
 
Posts: 62
Joined: Sat Sep 12, 2015 1:40 pm

Re: Analog to ⎕wgive?

Postby JoHo on Mon May 04, 2020 4:15 pm

imo ctrl/break and wigive do not have the same effect.
quadDL should be an equivalent or the 'Yield' property of the Root object.
HTH
User avatar
JoHo
 
Posts: 37
Joined: Sat Nov 28, 2009 12:51 pm
Location: Austria, EU

Re: Analog to ⎕wgive?

Postby ArrayMac227 on Mon May 04, 2020 5:39 pm

Agreed, the effect is not the same, except both show the Forms.

⎕dl 0 worked like a charm! Thanks for revealing that undocumented feature!
ArrayMac227
 
Posts: 62
Joined: Sat Sep 12, 2015 1:40 pm

Re: Analog to ⎕wgive?

Postby JoHo on Mon May 04, 2020 5:53 pm

Glad that it helped.
But, with due respect, quadDL is actually documented.

If you have a very CPU intensive Dyalog application, which would delay the refresh of other (non-APL-generatd GUI) objects, you might want to consider running a separate worker thread and make it pause intermittently?
User avatar
JoHo
 
Posts: 37
Joined: Sat Nov 28, 2009 12:51 pm
Location: Austria, EU

Re: Analog to ⎕wgive?

Postby ArrayMac227 on Thu May 07, 2020 3:12 pm

Documentation on ⎕DL:

> Y must be a simple non-negative single numeric value (of any rank). A pause of
approximately Y seconds is caused.
> The shy result R is a scalar numeric value indicating the length of the pause in
seconds.
> The pause may be interrupted by a strong interrupt.

...not sure where the flushing of the Windows Event Queue is mentioned.
ArrayMac227
 
Posts: 62
Joined: Sat Sep 12, 2015 1:40 pm

Re: Analog to ⎕wgive?

Postby JoHo on Thu May 07, 2020 4:40 pm

For flushing the display buffer you'd have niladic Method 135 on the Root object,
besides the before mentioned 'Yield' property.

If you would use quadDL or a property/method of an enqueued GUI object (or Root) depends on the context.
User avatar
JoHo
 
Posts: 37
Joined: Sat Nov 28, 2009 12:51 pm
Location: Austria, EU


Return to APL Chat

Who is online

Users browsing this forum: No registered users and 1 guest