NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

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