Mercurial > pyntnclick
changeset 719:3aa6163f0775 pyntnclick
Correctly pause rect drawer while file chooser is active (avoid spurious empty rectangle)
author | Neil Muller <neil@dip.sun.ac.za> |
---|---|
date | Mon, 06 Aug 2012 11:24:16 +0200 |
parents | ab489f7e87f8 |
children | 26a971e2278d |
files | pyntnclick/tools/rect_drawer.py |
diffstat | 1 files changed, 8 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/pyntnclick/tools/rect_drawer.py Mon Aug 06 11:17:27 2012 +0200 +++ b/pyntnclick/tools/rect_drawer.py Mon Aug 06 11:24:16 2012 +0200 @@ -354,6 +354,7 @@ else: self.filechooser.refresh() self.invalidate() + self._parent.paused = True self._parent.add(self.filechooser) def do_load_image(self, filename): @@ -456,6 +457,9 @@ def mouse_down(self, ev, widget): pos = self._conv_pos(ev.pos) + if self._parent.paused: + # Ignore this if the filechooser is active + return False if self.mode == 'del': cand = None # Images are drawn above rectangles, so search those first @@ -514,6 +518,8 @@ self.invalidate() def mouse_up(self, ev, widget): + if self._parent.paused: + return False if self.mode == 'draw': rect = pygame.rect.Rect(self.start_pos[0], self.start_pos[1], self.end_pos[0] - self.start_pos[0], @@ -592,6 +598,8 @@ except KeyError: raise RectDrawerError('Invalid detail: %s' % detail) + self.paused = False + self.image = AppImage(self, gd, state, scene, detail is not None) self.add(self.image) mode_label = ModeLabel(pygame.Rect((805, 0), (200, 25)),