transaction_history_window.py (3914B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\dynamicresources\client\ui\transaction_history_window.py 2 from carbonui import uiconst 3 from carbonui.primitives.container import Container 4 from dynamicresources.client.ui.transaction_history_window_controller import TransactionHistoryWindowController 5 from eve.client.script.ui.control.eveScroll import Scroll 6 from carbonui.control.window import Window 7 from carbonui.control.tabGroup import TabGroup 8 from localization import GetByLabel 9 10 class TransactionHistoryWindow(Window): 11 MAIN_BANK = 1 12 RESERVE_BANK = 2 13 default_width = 500 14 default_height = 300 15 default_windowID = 'dynamicresources.ess.TransactionHistoryWindow' 16 default_caption = GetByLabel('UI/ESS/TransactionHistoryWindowCaption') 17 default_tab = RESERVE_BANK 18 __notifyevents__ = ['OnESSDataUpdate_Local'] 19 20 def ApplyAttributes(self, attributes): 21 Window.ApplyAttributes(self, attributes) 22 tab = attributes.get('tab', self.default_tab) 23 self.controller = TransactionHistoryWindowController() 24 self.ConstructLayout(tab=tab) 25 26 def ConstructLayout(self, tab = None): 27 self.tabGroup = TabGroup(parent=self.sr.main, align=uiconst.TOTOP) 28 mainBankHistoryPanel = Container(name='mainBankHistoryPanel', parent=self.sr.main) 29 reserveBankHistoryPanel = Container(name='reserveBankHistoryPanel', parent=self.sr.main) 30 self.ConstructMainBankPanel(mainBankHistoryPanel) 31 self.ConstructReserveBankPanel(reserveBankHistoryPanel) 32 self.tabGroup.AddTab(GetByLabel('UI/ESS/TransactionHistoryMainBankTab'), mainBankHistoryPanel, self.sr.main, tabID=self.MAIN_BANK) 33 self.tabGroup.AddTab(GetByLabel('UI/ESS/TransactionHistoryReserveBankTab'), reserveBankHistoryPanel, self.sr.main, tabID=self.RESERVE_BANK) 34 if tab: 35 self.ShowTab(tab) 36 else: 37 self.tabGroup.AutoSelect() 38 39 def OnESSDataUpdate_Local(self): 40 currentTab = self.tabGroup.GetSelectedID() 41 self.sr.main.Flush() 42 self.ConstructLayout(tab=currentTab) 43 44 def ConstructMainBankPanel(self, mainBankPanel): 45 entries = self.controller.GetMainBankAccessHistoryListItems() 46 scroll = TransactionHistoryScroll(parent=mainBankPanel, align=uiconst.TOALL, padding=1) 47 nameHeading = GetByLabel('UI/ESS/TransactionHistoryNameTableHeading') 48 amountHeading = GetByLabel('UI/ESS/TransactionHistoryAmountTableHeading') 49 scroll.Load(contentList=entries, headers=('', nameHeading, amountHeading), noContentHint=GetByLabel('UI/ESS/TransactionHistoryNoData')) 50 51 def ConstructReserveBankPanel(self, reserveBankPanel): 52 entries = self.controller.GetReserveBankAccessHistoryListItems() 53 scroll = TransactionHistoryScroll(parent=reserveBankPanel, align=uiconst.TOALL, padding=1) 54 nameHeading = GetByLabel('UI/ESS/TransactionHistoryNameTableHeading') 55 dateHeading = GetByLabel('UI/ESS/TransactionHistoryDateTableHeading') 56 amountHeading = GetByLabel('UI/ESS/TransactionHistoryAmountTableHeading') 57 scroll.Load(contentList=entries, headers=('', 58 nameHeading, 59 dateHeading, 60 amountHeading), noContentHint=GetByLabel('UI/ESS/TransactionHistoryNoData')) 61 62 def ShowTab(self, tab): 63 self.tabGroup.ShowPanelByID(tab) 64 65 @classmethod 66 def OpenToTab(cls, tab): 67 if TransactionHistoryWindow.IsOpen(): 68 w = TransactionHistoryWindow.GetIfOpen() 69 w.Maximize() 70 w.ShowTab(tab) 71 else: 72 TransactionHistoryWindow.Open(tab=tab) 73 74 @classmethod 75 def OpenToMainBank(cls): 76 cls.OpenToTab(cls.MAIN_BANK) 77 78 @classmethod 79 def OpenToReserveBank(cls): 80 cls.OpenToTab(cls.RESERVE_BANK) 81 82 83 class TransactionHistoryScroll(Scroll): 84 default_id = 'MainBankTransactionHistoryScroll' 85 default_columnWidth = {'': 32}