swipeAnimation.py (1903B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\inflight\scannerFiles\swipeAnimation.py 2 import carbonui.const as uiconst 3 from carbonui.primitives.container import Container 4 from carbonui.primitives.gradientSprite import GradientSprite, GradientConst 5 from carbonui.uianimations import animations 6 import trinity 7 8 class SwipeAnimator(Container): 9 10 def ApplyAttributes(self, attributes): 11 super(SwipeAnimator, self).ApplyAttributes(attributes) 12 GradientSprite(parent=self, align=uiconst.TORIGHT, blendMode=trinity.TR2_SBM_ADD, pos=(0, 0, 200, 0), rgbData=[(0, (0.2941177, 0.7921569, 1.0))], alphaData=[(0, 0), 13 (0.95, 0.3), 14 (0.99, 0.5), 15 (1, 1)], alphaInterp=GradientConst.INTERP_LINEAR, colorInterp=GradientConst.INTERP_LINEAR) 16 17 def start(self, swipe_duration, fade_in_duration = None, highlight_duration = None, fade_out_duration = None): 18 self.SetState(uiconst.UI_NORMAL) 19 fade_in_duration = fade_in_duration or 0.15 * swipe_duration 20 fade_out_duration = fade_out_duration or 0.15 * swipe_duration 21 highlight_duration = highlight_duration or 0.09 * swipe_duration 22 animations.FadeIn(self, duration=fade_in_duration) 23 animations.MorphScalar(obj=self, attrName='width', startVal=0, endVal=1, duration=swipe_duration, callback=lambda : self._highlight_and_fade_out(highlight_duration, fade_out_duration), curveType=uiconst.ANIM_LINEAR) 24 25 def _highlight_and_fade_out(self, highlight_duration, fade_out_duration): 26 animations.FadeTo(obj=self, startVal=1.0, endVal=1.5, duration=highlight_duration, callback=lambda : self._fade_out(fade_out_duration)) 27 28 def _fade_out(self, fade_out_duration): 29 animations.FadeOut(self, duration=fade_out_duration, callback=self._hide) 30 31 def _hide(self): 32 self.state = uiconst.UI_HIDDEN 33 self.width = 0