progress.py (2182B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\achievement_system\client\ui\window\card\components\progress.py 2 import threadutils 3 from carbonui import Align, TextColor, uiconst 4 from carbonui.primitives.container import Container 5 from carbonui.primitives.containerAutoSize import ContainerAutoSize 6 from carbonui.text.styles import TextDetail, TextBody 7 from eve.client.script.ui.control.gauge import Gauge 8 from localization import GetByLabel 9 10 class AchievementProgressHover(ContainerAutoSize): 11 label_container_height = 16 12 label_class = TextDetail 13 14 def __init__(self, controller, *args, **kwargs): 15 super(AchievementProgressHover, self).__init__(*args, **kwargs) 16 self.controller = controller 17 self.construct_layout() 18 self.update() 19 20 def construct_layout(self): 21 label_container = Container(name='label_container', parent=self, align=Align.TOTOP, height=self.label_container_height) 22 self.title_label = self.label_class(name='title_label', parent=label_container, align=Align.TOLEFT, text=GetByLabel('UI/Common/Progress'), color=TextColor.SECONDARY) 23 self.score_label = self.label_class(name='score_label', parent=label_container, align=Align.TOLEFT, state=uiconst.UI_NORMAL, padLeft=4) 24 self.gauge = Gauge(name='gauge', parent=self, align=Align.TOTOP, gaugeHeight=4, padTop=4) 25 26 @threadutils.highlander_threaded 27 def update(self): 28 self.update_color() 29 self.update_value() 30 31 def update_color(self): 32 self.gauge.SetColor(self.controller.milestone_progress_bar_color) 33 34 def update_value(self): 35 self.score_label.text = '(%s)' % self.controller.progress_score_text_for_selected_milestone 36 self.score_label.hint = self.controller.progress_score_hint_for_selected_milestone 37 self.gauge.SetValue(self.controller.percent_progress_towards_selected_milestone, animate=False) 38 39 def OnColorThemeChanged(self): 40 super(AchievementProgressHover, self).OnColorThemeChanged() 41 self.update_color() 42 43 44 class AchievementProgressExpanded(AchievementProgressHover): 45 label_container_height = 20 46 label_class = TextBody