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

walletTabUnderlay.py (2738B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\neocom\wallet\walletTabUnderlay.py
      2 from carbonui import uiconst
      3 from carbonui.primitives.container import Container
      4 from carbonui.primitives.frame import Frame
      5 from carbonui.primitives.sprite import Sprite
      6 from carbonui.util.color import Color
      7 MOUSE_UP_ALPHA = 0.1
      8 MOUSE_OVER_ALPHA = 0.3
      9 MOUSE_DOWN_ALPHA = 0.4
     10 SELECTED_ALPHA = 0.5
     11 ACCENT_MOUSE_OVER_ALPHA = 0.3
     12 ACCENT_MOUSE_DOWN_ALPHA = 0.2
     13 
     14 class WalletTabUnderlay(Container):
     15     default_fillColor = Color.GRAY
     16 
     17     def ApplyAttributes(self, attributes):
     18         super(WalletTabUnderlay, self).ApplyAttributes(attributes)
     19         self.isSelected = False
     20         self.isBlinking = False
     21         self.fillColor = attributes.get('fillColor', self.default_fillColor)
     22         self.ConstructBackground()
     23         self.ConstructSideAccent()
     24 
     25     def ConstructBackground(self):
     26         self.fillFrame = Frame(name='fillFrame', bgParent=self, texturePath='res:/UI/Texture/Shared/DarkStyle/panel1Corner_Solid.png', cornerSize=9, color=self.fillColor, opacity=MOUSE_UP_ALPHA, outputMode=uiconst.OUTPUT_COLOR_AND_GLOW, glowBrightness=0.5)
     27 
     28     def ConstructSideAccent(self):
     29         self.sideAccent = Sprite(name='sideAccent', parent=self, align=uiconst.TORIGHT_NOPUSH, state=uiconst.UI_DISABLED, texturePath='res:/UI/Texture/Shared/DarkStyle/edgeDecoRight.png', width=11, opacity=MOUSE_UP_ALPHA)
     30 
     31     def SetFillColor(self, color):
     32         self.fillFrame.SetRGBA(*color)
     33 
     34     def OnMouseEnter(self, *args):
     35         if self.isSelected:
     36             return
     37         self.fillFrame.SetAlpha(MOUSE_OVER_ALPHA)
     38         self.sideAccent.SetAlpha(ACCENT_MOUSE_OVER_ALPHA)
     39 
     40     def OnMouseExit(self, *args):
     41         if self.isSelected:
     42             return
     43         self.fillFrame.SetAlpha(MOUSE_UP_ALPHA)
     44         self.sideAccent.SetAlpha(MOUSE_UP_ALPHA)
     45 
     46     def OnMouseDown(self, *args):
     47         if self.isSelected:
     48             return
     49         self.fillFrame.SetAlpha(MOUSE_DOWN_ALPHA)
     50         self.sideAccent.SetAlpha(ACCENT_MOUSE_DOWN_ALPHA)
     51 
     52     def OnMouseUp(self, *args):
     53         if self.isSelected:
     54             return
     55         self.fillFrame.SetAlpha(MOUSE_UP_ALPHA)
     56 
     57     def Blink(self, loops = 1):
     58         self.isBlinking = True
     59 
     60     def StopBlink(self):
     61         self.isBlinking = False
     62 
     63     def Select(self):
     64         if self.isSelected:
     65             return
     66         self.fillFrame.SetAlpha(SELECTED_ALPHA)
     67         self.sideAccent.SetAlpha(ACCENT_MOUSE_OVER_ALPHA)
     68         self.isSelected = True
     69 
     70     def Deselect(self):
     71         if not self.isSelected:
     72             return
     73         self.fillFrame.SetAlpha(MOUSE_UP_ALPHA)
     74         self.sideAccent.SetAlpha(MOUSE_UP_ALPHA)
     75         self.isSelected = False