diff light8/ExtSliderMapper.py @ 98:57319ec2bfad

tracing etc seems to work
author drewp
date Sat, 13 Jul 2002 04:26:59 +0000
parents d1a1ded20ec7
children 7910445b81e3
line wrap: on
line diff
--- a/light8/ExtSliderMapper.py	Sat Jul 13 04:04:33 2002 +0000
+++ b/light8/ExtSliderMapper.py	Sat Jul 13 04:26:59 2002 +0000
@@ -74,8 +74,19 @@
             self.lastbgcolor = color
     def set_sublevel_var(self, newvar):
         'newvar is one of the variables in scalelevels'
-        self.sublevel = newvar
-        self.sublevel.trace('w', self.unsync)
+
+        if newvar is not self.sublevel:
+            try:
+                # remove an old trace
+                self.sublevel.trace_vdelete('w',self.sublevel.unsync_trace_cbname)
+            except AttributeError:
+                pass # it didn't have one
+
+            self.sublevel = newvar
+            self.sublevel.unsync_trace_cbname = self.sublevel.trace('w', self.unsync)
+            
+#        self.sublevel = newvar
+
         if self.sublabel:
             self.sublabel.configure(textvariable=newvar)
         self.check_synced()