Diff for /capa/capa51/GUITools/scorer.tcl between versions 1.2 and 1.9

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

Removed from v.1.2  
changed lines
  Added in v.1.9


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>