JCT software developer documentation
Instructions on how to extend various components within the JAST JCT software
Version 1.0
Craig Nicol, 5 October 2005
Overview
Adding A New XML Element to experiment data
- Add element and attribute list to 
JastExpt.dtd - Make sure to synchronise both the 
jast_srcand thejast_installversion as necessary - Add element to 
JastSAX2Handler::startElement()to process attributes - Use 
processTextAttribute()to handle all screen messages - Add element to 
JastSAX2Handler::endElement()unless content is always empty - Document new element in 
UserDoc.html 
Adding A New String to JastExpt
- Add element to experiment data if required (se above)
 - Add 
RemovableExtText*member tojast::JastExpt - Add NULL constructor to new member in 
jast::JastExpt::JastExpt() - Add 
jast::JastExpt::setText???()to be called fromJastSAX2Handler::endElement() - Remember to add to both the 
.cppand.hfile - Add default value for string to 
jast::JastExpt::validate() 
System Messages within JCT experiment
| Internal Name | code | arguments | notes | 
|---|---|---|---|
| JSM_EXPT_START | "xs" | ||
| JSM_EXPT_ABORT | 
"xa" | ||
| JSM_EXPT_END_BY_SUBJECT_REQUESTED | 
"xr" | ||
| JSM_EXPT_END_BY_SUBJECT_CONFIRMED  | 
"xc" | ||
| JSM_EXPT_END_BY_SUBJECT_REJECTED | 
"xx" | ||
| JSM_EXPT_END_TIMEOUT | 
"xt" | ||
| JSM_CURSOR_MOVE | 
"cm" | &own [0,1], &x, &y | |
| JSM_EYE_CURSOR_MOVE | 
"em" | &own [0,1], &x, &y | JCE added, move eye gaze cursor | 
| JSM_PART_MOVE | 
"pm" | &id, &x, &y | |
| JSM_PART_MOVE_START | 
"pn" | &id, &local, &x, &y | |
| JSM_PART_MOVE_END | "po" | &id, &local | |
| JSM_PART_ROTATE | 
"pr" | &id, &angle | |
| 
JSM_PART_ROTATE_START | 
"ps" | &id, &refangle, &local | |
| 
JSM_PART_ROTATE_END | 
"pt" | &id, &local | |
| 
JSM_PART_JOIN | 
"pj" | &aID, &aX, &aY, &aRot, &bID, &bX, &bY, &bRot, &newID | |
| 
JSM_PART_CREATE | 
"pa" | &uid, &x, &y, &id, &local | |
| 
JSM_PART_REMOVE | 
"pd" | &id, &countBreak, &updateUniqueCounts | |
| 
JSM_REQUEST_CURSOR_MOVE | 
"rc" | &x, &y | |
| 
JSM_REQUEST_EYE_CURSOR_MOVE | 
"re" | &x, &y | JCE added, request movement of eye gaze cursor | 
| 
JSM_REQUEST_PART_MOVE | 
"rm" | &id, &x, &y | |
| 
JSM_REQUEST_PART_MOVE_START | 
"rn" | &id, &x, &y | |
| 
JSM_REQUEST_PART_MOVE_END | 
"ro" | &id | |
| 
JSM_REQUEST_PART_ROTATE | 
"rr" | &id, &angle | |
| 
JSM_REQUEST_PART_ROTATE_START | 
"rs" | &id, &refangle | |
| 
JSM_REQUEST_PART_ROTATE_END | 
"rt" | &id | |
| 
JSM_REQUEST_PART_CREATE | 
"ra" | &uid, &x, &y, &id | |
| JSM_REQUEST_PART_REMOVE | "rd" | &id, &countBreak, &updateUniqueCounts | 

