main_screen.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:stellarmagnate 作者: abadger 项目源码 文件源码
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)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号