tooltip.py (3486B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\infoPanels\milestoneTimer\tooltip.py 2 from carbonui import uiconst 3 from carbonui.control.button import Button 4 from eve.client.script.ui.control.tooltips import TooltipPanel 5 from eve.client.script.ui.control import tooltipConst 6 from eve.client.script.ui.shared.infoPanels.milestoneTimer.milestoneTimerMessenger import MilestoneTimerMessenger 7 from eve.client.script.ui.tooltips.tooltipsWrappers import TooltipBaseWrapper 8 from localization import GetByLabel 9 10 class MilestoneTooltip(TooltipBaseWrapper): 11 12 def __init__(self, milestoneID, totalSeconds, secondsLeftFunc, *args, **kwargs): 13 super(MilestoneTooltip, self).__init__(*args, **kwargs) 14 self.milestoneID = milestoneID 15 self.totalSeconds = totalSeconds 16 self.secondsLeftFunc = secondsLeftFunc 17 18 def CreateTooltip(self, parent, owner, idx): 19 self.tooltipPanel = TooltipPanel(parent=parent, owner=owner, idx=idx) 20 self.tooltipPanel.LoadGeneric1ColumnTemplate() 21 self.tooltipPanel.SetState(uiconst.UI_NORMAL) 22 self.tooltipPanel.margin = tooltipConst.TOOLTIP_MARGIN 23 self.ConstructEncouragementSection() 24 MilestoneTimerMessenger(sm.GetService('publicGatewaySvc')).tooltip_displayed(self.milestoneID) 25 return self.tooltipPanel 26 27 def ConstructEncouragementSection(self): 28 self.tooltipPanel.AddLabelMedium(text=GetByLabel('UI/Crimewatch/Timers/milestoneRewardTooltip', minutes=self.totalSeconds / 60.0), wrapWidth=200) 29 self.tooltipPanel.AddSpacer(height=10) 30 self.tooltipPanel.AddCaptionMedium(text=GetByLabel('UI/Milestones/MinutesLoggedIn', minutesPassed=self.secondsLeftFunc() / 60.0, totalMinutes=self.totalSeconds / 60.0), wrapWidth=200) 31 32 33 class MilestoneRewardTooltip(TooltipBaseWrapper): 34 35 def __init__(self, milestoneID, iskAmount, claimFunc, milestoneMinutes, *args, **kwargs): 36 super(MilestoneRewardTooltip, self).__init__(*args, **kwargs) 37 self.milestoneID = milestoneID 38 self.iskAmount = iskAmount 39 self.claimFunc = claimFunc 40 self.milestoneMinutes = milestoneMinutes 41 42 def CreateTooltip(self, parent, owner, idx): 43 self.tooltipPanel = TooltipPanel(parent=parent, owner=owner, idx=idx) 44 self.tooltipPanel.LoadGeneric1ColumnTemplate() 45 self.tooltipPanel.SetState(uiconst.UI_NORMAL) 46 self.tooltipPanel.margin = tooltipConst.TOOLTIP_MARGIN 47 self.ConstructRewardClaimSection() 48 MilestoneTimerMessenger(sm.GetService('publicGatewaySvc')).tooltip_displayed(self.milestoneID) 49 return self.tooltipPanel 50 51 def ConstructRewardClaimSection(self): 52 self.tooltipPanel.AddCaptionLarge(text=GetByLabel('UI/Agency/Rewards'), wrapWidth=200, textAlign=uiconst.CENTER) 53 self.tooltipPanel.AddSpacer(height=10) 54 self.tooltipPanel.AddLabelMedium(text=GetByLabel('UI/Milestones/Congratulations', minutesPlayed=self.milestoneMinutes), wrapWidth=200) 55 self.tooltipPanel.AddSpacer(height=10) 56 self.tooltipPanel.AddCaptionSmall(text=GetByLabel('UI/Milestones/ClaimISK', amount=self.iskAmount), wrapWidth=200) 57 self.tooltipPanel.AddSpacer(height=5) 58 button = Button(name='claimMilestoneRewardButton', align=uiconst.CENTERLEFT, label=GetByLabel('UI/Seasons/ClaimReward'), func=self.claimFunc, analyticID='claimMilestoneRewardButton') 59 self.tooltipPanel.AddCell(button, cellPadding=(0, 10, 0, 10))