X-Git-Url: https://scm.cri.ensmp.fr/git/minwii.git/blobdiff_plain/21025650d4d91bd0e1848bf1a78208301180e604..3349512a69489bc7679799d05f21fb11abaec90d:/src/app/widgets/cursors.py diff --git a/src/app/widgets/cursors.py b/src/app/widgets/cursors.py index db1ac56..1e3fc4e 100755 --- a/src/app/widgets/cursors.py +++ b/src/app/widgets/cursors.py @@ -20,7 +20,7 @@ class WarpingCursor(pygame.sprite.DirtySprite, EventHandlerMixin): @staticmethod def _get_theme_images(name) : basePath = os.path.abspath(__file__).split(os.path.sep)[:-1] - basePath.append('data') + basePath.extend(['data', 'cursor']) basePath.append(name) basePath = os.path.sep.join(basePath) images = [f for f in os.listdir(basePath) if os.path.splitext(f)[1] == '.png'] @@ -60,16 +60,16 @@ class WarpingCursor(pygame.sprite.DirtySprite, EventHandlerMixin): self.blinkMode = blinkMode self._startBlink() - def _stopBlink(self) : - if self.blinkMode : - pygame.time.set_timer(TIMEOUT, 0) - def _startBlink(self) : if self.blinkMode : self._blinking = True pygame.time.set_timer(TIMEOUT, self.duration) self.iterator = self.iterImages() + def _stopBlink(self) : + if self.blinkMode : + pygame.time.set_timer(TIMEOUT, 0) + def iterImages(self) : for img in cycle(self.images) : yield img @@ -99,3 +99,9 @@ class WarpingCursor(pygame.sprite.DirtySprite, EventHandlerMixin): def move(self, event) : self.dirty = 1 self.rect.move_ip(event.rel) + + def setPosition(self, pos) : + self.dirty = 1 + x, y = pos + rx, ry = self.rect.centerx, self.rect.centery + self.rect.move_ip(x-rx, y-ry)