Mercurial > code > home > repos > light9
changeset 263:5da9139982c0
fix curvecalc esc key recentering
author | drewp@bigasterisk.com |
---|---|
date | Thu, 16 Jun 2005 22:32:29 +0000 |
parents | 9bc5e908c361 |
children | 0f112a7dd6b3 |
files | light9/zoomcontrol.py |
diffstat | 1 files changed, 8 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/light9/zoomcontrol.py Thu Jun 16 22:26:17 2005 +0000 +++ b/light9/zoomcontrol.py Thu Jun 16 22:32:29 2005 +0000 @@ -21,8 +21,9 @@ def fget(self): return self._start def fset(self,v): v = max(self.mintime,v) - if v < self._end: - self._start = v + # don't protect for start<end since zooming sometimes sets + # start temporarily after end + self._start = v return locals() start = property(**start()) @@ -30,8 +31,7 @@ def fget(self): return self._end def fset(self,v): v = min(self.maxtime,v) - if v > self._start: - self._end = v + self._end = v return locals() end = property(**end()) @@ -91,12 +91,10 @@ def see_time(self,t): vis_seconds = self.end - self.start - margin = vis_seconds * .9 # left side is nicest - if t < self.start: - self.offset -= (self.start - t) + margin - # t doesn't have to be ALL the way off-screen - if t > (self.end - vis_seconds * .3): - self.offset += (t - self.end) + margin + margin = vis_seconds * .1 + if t < self.start or t > (self.end - vis_seconds * .3): + self.offset = t - margin + self.redrawzoom() def input_time(self,val):