- self.angle_timer_start=time.time()
- gobject.timeout_add(20, self.timerAngle)
+ # Don't start another timer
+ # Instead adjust the time start to produce a nice effect ;-)
+ if self.angle_timer_start==0:
+ self.angle_timer_start=time.time()
+ gobject.timeout_add(20, self.timerAngle)
+ else:
+ dt=time.time()-self.angle_timer_start
+ da=90.0*dt/self.rotation_time
+
+ da2=90.0-da
+ dt2=da2*self.rotation_time/90.0
+ self.angle_timer_start=time.time()-dt2
+ else:
+ if self.mode=='l':
+ self.setAngle(0)
+ else:
+ self.setAngle(90)
+
+ if do_draw:
+ self.queue_draw()
+
+ def disableAnimation(self):
+ self.do_animations=False
+
+ def enableAnimation(self):
+ self.do_animations=True
+
+ def setAnimationEnable(self, value):
+ if value:
+ self.enableAnimation()
+ else:
+ self.disableAnimation()