Update of /cvsroot/q-lang/qcalc
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv22719
Modified Files:
calclib.q
Log Message:
make the window id the initial value of a task window element
Index: calclib.q
===================================================================
RCS file: /cvsroot/q-lang/qcalc/calclib.q,v
retrieving revision 1.53
retrieving revision 1.54
diff -C2 -d -r1.53 -r1.54
*** calclib.q 2 Dec 2007 01:12:18 -0000 1.53
--- calclib.q 2 Dec 2007 01:34:56 -0000 1.54
***************
*** 450,454 ****
where (I,J|_) = get YYTLD!thread_no this_thread:
// request by a task to replace itself with a new task
! = yyset (I,J) () || X;
where (I,J) = get YYKEY:
// update existing task
--- 450,454 ----
where (I,J|_) = get YYTLD!thread_no this_thread:
// request by a task to replace itself with a new task
! = yyset (I,J) 0 || X;
where (I,J) = get YYKEY:
// update existing task
***************
*** 456,460 ****
// start up a new task
= YYTASKS := insert (get YYTASKS) (I,J;H,SEM) ||
! yyset (I,J) ()
where SEM:Semaphore = semaphore,
H:Thread =
--- 456,460 ----
// start up a new task
= YYTASKS := insert (get YYTASKS) (I,J;H,SEM) ||
! yyset (I,J) 0
where SEM:Semaphore = semaphore,
H:Thread =
***************
*** 464,473 ****
/* Our actual window id is sent by the parent process via the SEM semaphore
using a yywin call (see below) when it processes the "Taskwindow"
! message. We store this value in the thread-local data so that the task can
! access it using task_winid. */
init_task (I,J,SEM)
! = YYTLD := insert (get YYTLD)
! (thread_no this_thread,(I,J,SEM,get SEM));
/* Internals. */
--- 464,475 ----
/* Our actual window id is sent by the parent process via the SEM semaphore
using a yywin call (see below) when it processes the "Taskwindow"
! message. We make this value the initial value of the task's cell, and we
! also store it in the thread-local data so that the task can access it using
! task_winid. */
init_task (I,J,SEM)
! = setval (I,J) ID || YYTLD := insert (get YYTLD)
! (thread_no this_thread,(I,J,SEM,ID))
! where ID = get SEM;
/* Internals. */
***************
*** 582,586 ****
where (H,SEM) = get YYTASKS!(I,J):
// task is alive and kicking, update it with the new data
! = post SEM '(taskwindow X) || yyset (I,J) ()
where 'X = subst 'X
if isthread H and then active H;
--- 584,588 ----
where (H,SEM) = get YYTASKS!(I,J):
// task is alive and kicking, update it with the new data
! = post SEM '(taskwindow X) || yyset (I,J) 0
where 'X = subst 'X
if isthread H and then active H;
|