[Rd] Plot window does not update in embedded code
Simon Urbanek
simon.urbanek at r-project.org
Wed Jul 21 22:52:15 CEST 2010
On Jul 21, 2010, at 4:28 PM, Simon Urbanek wrote:
> Use
> R_CheckUserInterrupt()
>
Actually, the above is true but assumes that you're running R's REPL and not your own R_ReadConsole (it will work even in your ReadConsole but unix handlers are not run in that case so only some events will work).
> The code below is very fragile and unix-specific.
>
That is true, too, but even after R_ProcessEvenrts refactorization the handlers are still-unix specific so I stand corrected and you still have to run handlers manually (note that you don't need PolledEvents anymore since they are part of the handlers).
Cheers,
Simon
>>
>> On Wednesday 21 July 2010, Jan van der Laan wrote:
>>> How do I ensure that the windows keep being updated?
>>
>> in RKWard we run the following periodically during idle phases:
>>
>>
>> // this basically copied from R's unix/sys-std.c (Rstd_ReadConsole)
>> #ifndef Q_WS_WIN
>> for (;;) {
>> fd_set *what;
>> what = R_checkActivityEx(R_wait_usec > 0 ? R_wait_usec : 50, 1,
>> Rf_onintr);
>> R_runHandlers(R_InputHandlers, what);
>> if (what == NULL) break;
>> }
>> /* This seems to be needed to make Rcmdr react to events. Has this always
>> been the case? It was commented out for a long time, without anybody noticing.
>> */
>> R_PolledEvents ();
>> #else
>> R_ProcessEvents();
>> #endif
>>
>>
>> Regards
>> Thomas
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>
More information about the R-devel
mailing list