Posted to tcl by Napier at Fri Jul 11 17:44:10 GMT 2014view raw

  1. proc traceCallback {val name1 args} {
  2. puts $name1
  3. upvar 1 $name1 newValue
  4. puts "$val > changed to > $newValue"
  5. uplevel [list trace remove variable $name1 write [list traceCallback $val]]
  6. uplevel [list trace add variable $name1 write [list traceCallback $newValue]]
  7. }
  8.  
  9. proc setTrace {varName} {
  10. uplevel [list trace add variable $varName write [list traceCallback ""]]
  11. }