diff options
author | Tuukka Hastrup <Tuukka.Hastrup@iki.fi> | 2010-06-05 16:58:36 (GMT) |
---|---|---|
committer | Tuukka Hastrup <Tuukka.Hastrup@iki.fi> | 2010-06-05 19:05:38 (GMT) |
commit | 6f526ef39d6ef5b8be82f90b03f8b5986a46f961 (patch) | |
tree | 9d3ee45d33310feb6d3d5c803b6677f775d4059f | |
parent | ae81436daef81892ab48ef28a3bef27a995cc637 (diff) |
-rw-r--r-- | abacus_window.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/abacus_window.py b/abacus_window.py index 07313bd..5b799d1 100644 --- a/abacus_window.py +++ b/abacus_window.py @@ -275,10 +275,12 @@ class Abacus(): self.dragpos = x else: self.press = None + self.mouse_dragged = False return True def _mouse_move_cb(self, win, event): """ Callback to handle the mouse moves """ + self.mouse_dragged = True if self.press is None: self.dragpos = 0 return True @@ -294,6 +296,8 @@ class Abacus(): """ Callback to handle the button releases """ if self.press == None: return True + elif self.press.type == 'bead' and not self.mouse_dragged: + self.mode.move_bead(self.press, None) self.press = None # The complexity below is to make the label as simple as possible sum = "" @@ -583,7 +587,7 @@ class AbacusGeneric(): b = i % (self.top_beads+self.bot_beads) if b < self.top_beads: - if dy > 0 and bead.get_state() == 0: + if (dy is None or dy > 0) and bead.get_state() == 0: self.fade_colors() bead.set_color(self.colors[3]) bead.move_down() @@ -592,7 +596,7 @@ class AbacusGeneric(): if self.beads[i+ii].state == 0: self.beads[i+ii].set_color(self.colors[3]) self.beads[i+ii].move_down() - elif dy < 0 and bead.state == 1: + elif (dy is None or dy < 0) and bead.state == 1: self.fade_colors() bead.set_color(self.colors[3]) bead.move_up() @@ -602,7 +606,7 @@ class AbacusGeneric(): self.beads[i-ii].set_color(self.colors[3]) self.beads[i-ii].move_up() else: - if dy < 0 and bead.state == 0: + if (dy is None or dy < 0) and bead.state == 0: self.fade_colors() bead.set_color(self.colors[3]) bead.move_up() @@ -611,7 +615,7 @@ class AbacusGeneric(): if self.beads[i-ii].state == 0: self.beads[i-ii].set_color(self.colors[3]) self.beads[i-ii].move_up() - elif dy > 0 and bead.state == 1: + elif (dy is None or dy > 0) and bead.state == 1: self.fade_colors() bead.set_color(self.colors[3]) bead.move_down() |