[rkward-cvs] rkward/rkward/rbackend rembedinternal.cpp,1.12,1.13 rembedinternal.h,1.7,1.8 rthread.cpp,1.12,1.13

Thomas Friedrichsmeier tfry at users.sourceforge.net
Wed Apr 20 17:41:40 UTC 2005


Update of /cvsroot/rkward/rkward/rkward/rbackend
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6327

Modified Files:
	rembedinternal.cpp rembedinternal.h rthread.cpp 
Log Message:
Some cosmetics on x11-events. Documentation, processing between commands

Index: rembedinternal.h
===================================================================
RCS file: /cvsroot/rkward/rkward/rkward/rbackend/rembedinternal.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** rembedinternal.h	20 Apr 2005 17:15:07 -0000	1.7
--- rembedinternal.h	20 Apr 2005 17:41:37 -0000	1.8
***************
*** 41,47 ****
  
  public:
  // these will need QStrings and stuff and hence are handled in REmbed
  	virtual void handleSubstackCall (char **call, int call_length) = 0;
- 	static void processEvents ();
  	//virtual char **handleGetValueCall (char **call, int call_length, int *reply_length) = 0;
  
--- 41,49 ----
  
  public:
+ /** call this periodically to make R's x11 windows process their events */
+ 	static void processX11Events ();
+ 
  // these will need QStrings and stuff and hence are handled in REmbed
  	virtual void handleSubstackCall (char **call, int call_length) = 0;
  	//virtual char **handleGetValueCall (char **call, int call_length, int *reply_length) = 0;
  

Index: rthread.cpp
===================================================================
RCS file: /cvsroot/rkward/rkward/rkward/rbackend/rthread.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** rthread.cpp	20 Apr 2005 17:15:07 -0000	1.12
--- rthread.cpp	20 Apr 2005 17:41:37 -0000	1.13
***************
*** 71,74 ****
--- 71,75 ----
  				// mutex will be unlocked inside
  				doCommand (command);
+ 				embeddedR->processEvents ();
  			}
  		
***************
*** 130,133 ****
--- 131,135 ----
  	while (!done) {
  		MUTEX_LOCK;
+ 		embeddedR->processEvents ();
  		// while commands are in queue, don't wait
  		while (reply_stack->isActive () && !locked) {
***************
*** 137,140 ****
--- 139,143 ----
  				// mutex will be unlocked inside
  				doCommand (command);
+ 				embeddedR->processEvents ();
  			}
  		}

Index: rembedinternal.cpp
===================================================================
RCS file: /cvsroot/rkward/rkward/rkward/rbackend/rembedinternal.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** rembedinternal.cpp	20 Apr 2005 17:15:07 -0000	1.12
--- rembedinternal.cpp	20 Apr 2005 17:41:36 -0000	1.13
***************
*** 48,52 ****
  }
  
! void REmbedInternal::processEvents () {
  	extern InputHandler *R_InputHandlers;
  	InputHandler *handler = R_InputHandlers;
--- 48,54 ----
  }
  
! void REmbedInternal::processX11Events () {
! /* what we do here is walk the list of objects, that have told R, they're listening for events.
! We figure out which ones look for X11-events and tell those to do their stuff (regardless of whether events actually occurred) */
  	extern InputHandler *R_InputHandlers;
  	InputHandler *handler = R_InputHandlers;





More information about the rkward-tracker mailing list