def __init__(self, pubpen):
self.pubpen = pubpen
self.display_stack = []
self.blank = LineBox(urwid.SolidFill(' '), lline=None,
blcorner='?', tlcorner='?',
trcorner='\u252c', brcorner='\u2524')
self.background = urwid.WidgetPlaceholder(self.blank)
super().__init__(self.background)
# Widgets traded in and out of the main display area
self.market_display = MarketDisplay(self.pubpen)
self.cargo_order_dialog = CargoOrderDialog(self.pubpen)
self.travel_menu = TravelDisplay(self.pubpen)
self.game_menu = GameMenuDialog(self.pubpen)
self.port_display = PortDisplay(self.pubpen)
self.equip_order_dialog = EquipOrderDialog(self.pubpen)
self.financial_display = FinancialDisplay(self.pubpen)
self.display_map = {
'MarketDisplay': self.market_display,
'CargoOrderDialog': self.cargo_order_dialog,
'PortDisplay': self.port_display,
'EquipOrderDialog': self.equip_order_dialog,
'FinancialDisplay': self.financial_display,
'TravelDisplay': self.travel_menu,
'GameMenuDialog': self.game_menu,
'Blank': self.blank
}
self.dialogs = frozenset(n for n in self.display_map if n.endswith('Dialog'))
self.push_display('Blank')
urwid.connect_signal(self.market_display, 'close_market_display', self.pop_display)
urwid.connect_signal(self.market_display, 'open_cargo_order_dialog',
partial(self.push_display, 'CargoOrderDialog'))
urwid.connect_signal(self.cargo_order_dialog, 'close_cargo_order_dialog', self.pop_display)
urwid.connect_signal(self.port_display, 'open_equip_order_dialog',
partial(self.push_display, 'EquipOrderDialog'))
urwid.connect_signal(self.equip_order_dialog, 'close_equip_order_dialog', self.pop_display)
urwid.connect_signal(self.travel_menu, 'close_travel_menu', self.pop_display)
urwid.connect_signal(self.game_menu, 'close_game_menu', self.pop_display)
评论列表
文章目录