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

nameAndTierContainer.py (1874B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\cosmetics\ship\pages\studio\nameAndTierContainer.py
      2 from carbonui import uiconst
      3 from carbonui.primitives.container import Container
      4 from carbonui.uianimations import animations
      5 from eve.client.script.ui.cosmetics.ship.const import ANIM_DURATION_LONG
      6 from eve.client.script.ui.cosmetics.ship.pages.studio.skinNameEntry import SkinNameEntry
      7 from eve.client.script.ui.cosmetics.ship.pages.studio.studioUtil import get_circular_layout_radius
      8 from eve.client.script.ui.cosmetics.ship.pages.studio.tierGauge import TierGauge
      9 from eve.client.script.ui.cosmetics.ship.pages.studio.currentDesignTierIndicator import CurrentDesignTierIndicator
     10 
     11 class NameAndTierContainer(Container):
     12 
     13     def __init__(self, **kw):
     14         super(NameAndTierContainer, self).__init__(**kw)
     15         self.tier_gauge = TierGauge(name='tier_gauge', parent=self)
     16         self.tier_indicator = CurrentDesignTierIndicator(name='tier_indicator', parent=self)
     17         self.skin_name_entry = SkinNameEntry(name='skin_name_entry', parent=self)
     18         self.on_size_changed.connect(self._on_size_changed)
     19 
     20     def LoadPanel(self, animate = True):
     21         self.state = uiconst.UI_PICKCHILDREN
     22         animations.FadeTo(self, self.opacity, 1.0, duration=0.6, timeOffset=ANIM_DURATION_LONG)
     23         self.skin_name_entry.update_text()
     24         self.tier_indicator.update_tier()
     25         self.tier_gauge.update_tier_values()
     26 
     27     def UnloadPanel(self, animate = True):
     28         self.Disable()
     29         animations.FadeTo(self, self.opacity, 0.0, duration=0.2, callback=self.Hide)
     30 
     31     def _on_size_changed(self, width, height):
     32         radius = get_circular_layout_radius(*self.GetAbsoluteSize())
     33         self.tier_gauge.radius = radius
     34         self.tier_indicator.radius = radius
     35         self.skin_name_entry.radius = radius