version 1.2, 1999/10/28 16:32:07
|
version 1.9, 2000/01/10 22:40:30
|
Line 153 proc runScorer { setFile } {
|
Line 153 proc runScorer { setFile } {
|
configureOptions $num |
configureOptions $num |
loadScorerConfig $num |
loadScorerConfig $num |
Centre_Dialog $scorerWin default |
Centre_Dialog $scorerWin default |
|
# trace variable gScorer(quit.$num) w "scorerClose $num 0" |
} |
} |
|
|
########################################################### |
########################################################### |
Line 411 proc insertQuest { num where } {
|
Line 412 proc insertQuest { num where } {
|
} |
} |
} |
} |
renumberScorerQuest $num |
renumberScorerQuest $num |
|
update |
|
$gScorer(quest.$num) see $where |
} |
} |
|
|
########################################################### |
########################################################### |
Line 506 proc cloneScorerQuest { num } {
|
Line 509 proc cloneScorerQuest { num } {
|
|
|
set temp [ $gScorer(quest.$num) get [ $gScorer(quest.$num) curselection ] ] |
set temp [ $gScorer(quest.$num) get [ $gScorer(quest.$num) curselection ] ] |
$gScorer(quest.$num) insert end $temp |
$gScorer(quest.$num) insert end $temp |
|
$gScorer(quest.$num) see end |
renumberScorerQuest $num |
renumberScorerQuest $num |
} |
} |
|
|
Line 760 proc initScorer { num } {
|
Line 764 proc initScorer { num } {
|
proc getLine { num } { |
proc getLine { num } { |
global gScorer |
global gScorer |
|
|
scorerMessage $num "Getting Responses" |
scorerMessage $num "\nGetting Responses" |
|
|
set done 0 |
set done 0 |
while { ! $done } { |
while { ! $done } { |
Line 826 proc parseLine { num answerLine answerSt
|
Line 830 proc parseLine { num answerLine answerSt
|
set perQuest [lindex $gScorer($sheet.Question) 2] |
set perQuest [lindex $gScorer($sheet.Question) 2] |
set parsedIn(multiplemarks) 0 |
set parsedIn(multiplemarks) 0 |
set parsedIn(spaces) 0 |
set parsedIn(spaces) 0 |
|
set parsedIn(maxQuest) $maxQuest |
for { set i 0 } { $i < $maxQuest } { incr i } { |
for { set i 0 } { $i < $maxQuest } { incr i } { |
if { [ catch { set gScorer(quest.$i.type.$num) } ] } { |
if { [ catch { set gScorer(quest.$i.type.$num) } ] } { |
set parsedIn(maxQuest) $i |
set parsedIn(maxQuest) $i |
Line 943 proc getAnswers { PID set maxQuest num }
|
Line 948 proc getAnswers { PID set maxQuest num }
|
global gFile gCapaConfig |
global gFile gCapaConfig |
set pwd [pwd] |
set pwd [pwd] |
cd $gFile($num) |
cd $gFile($num) |
set temp [exec $gCapaConfig($num.answers_command) $PID {} 1 $set] |
set temp [exec $gCapaConfig($num.answers_command) $PID {} 0 $set] |
cd $pwd |
cd $pwd |
set result "" |
set result "" |
foreach line [split $temp "\n"] { |
foreach line [split $temp "\n"] { |
Line 1026 proc handleStudent { num answerStructVar
|
Line 1031 proc handleStudent { num answerStructVar
|
if { [catch { set answerStruct(correct.$questionPID) \ |
if { [catch { set answerStruct(correct.$questionPID) \ |
[getAnswers $questionPID $gScorer(set.$num) \ |
[getAnswers $questionPID $gScorer(set.$num) \ |
$answerStruct(maxQuest) $num] } errorMsg ] } { |
$answerStruct(maxQuest) $num] } errorMsg ] } { |
puts $errorMsg |
catch {puts $errorMsg} |
scorerError $num UNABLE_TO_PARSE "$answerStruct(orignalLine)" \ |
scorerError $num UNABLE_TO_PARSE "$answerStruct(orignalLine)" \ |
$answerStruct(StudentNumber) |
$answerStruct(StudentNumber) |
error UNABLE_TO_PARSE |
error UNABLE_TO_PARSE |
Line 1286 proc scorerStudent { num } {
|
Line 1291 proc scorerStudent { num } {
|
finishScoring $num answerStruct |
finishScoring $num answerStruct |
return |
return |
} |
} |
incr gScorer(student.$num) |
|
update |
|
set gScorer(needToUpdateDB) 1 |
set gScorer(needToUpdateDB) 1 |
#parseanswerline |
#parseanswerline |
if { [catch {parseLine $num $answer answerStruct} errorMsg ] } { |
if { [catch {parseLine $num $answer answerStruct} errorMsg ] } { |
Line 1302 proc scorerStudent { num } {
|
Line 1305 proc scorerStudent { num } {
|
displayError "An error occured when attempting to grade a student. The error is: $errorMsg" |
displayError "An error occured when attempting to grade a student. The error is: $errorMsg" |
} |
} |
} |
} |
|
incr gScorer(student.$num) |
|
update |
after idle "scorerStudent $num" |
after idle "scorerStudent $num" |
} |
} |
|
|
Line 1541 proc scorerQuit { num } {
|
Line 1546 proc scorerQuit { num } {
|
global gScorer |
global gScorer |
set gScorer(pause.$num) 1 |
set gScorer(pause.$num) 1 |
set gScorer(quit.$num) 1 |
set gScorer(quit.$num) 1 |
|
#puts [trace vinfo gScorer(quit.$num)] |
catch {scorerMessage $num "Quitting. . . " info} |
catch {scorerMessage $num "Quitting. . . " info} |
} |
} |
|
|
Line 1552 proc scorerQuit { num } {
|
Line 1558 proc scorerQuit { num } {
|
proc scorerClose { num {mustClose 0} {dummy ""} {dummy2 ""} {dummy3 ""}} { |
proc scorerClose { num {mustClose 0} {dummy ""} {dummy2 ""} {dummy3 ""}} { |
global gScorer |
global gScorer |
|
|
if { $gScorer(needToUpdateDB) } { |
set message "Are you sure you wish to close?" |
set message \ |
catch { |
"Are you sure you wish to close, you haven't yet updated the .sb file." |
if { $gScorer(needToUpdateDB) } { |
} else { |
set message \ |
set message "Are you sure you wish to close?" |
"Are you sure you wish to close, you haven't yet updated the .sb file." |
|
} |
} |
} |
if { (! $mustClose ) && [makeSure $message ] == "Cancel" } { return 0 } |
if { (! $mustClose ) && [makeSure $message ] == "Cancel" } { return 0 } |
stopScorer $num |
stopScorer $num |