コード例 #1
0
ファイル: window.py プロジェクト: JamHart88/pycurses-widgets
class Window(Screen):
    def __init__(self, win):
        super(Window, self).__init__(win)

        self.title = TitleBar(self)

        self.main = TabPanel(self)
        self.main.create_tab(TextPanel, 'main')
        self.main.create_tab(TextPanel, 'help')
        self.main.tabs['help'].add_line('Help !')

        self.status = StatusBar(self)
        self.command = CommandBar(self)

        self.register_event('<KEY_TAB>', self.show_next_tab)
        self.register_event('<KEY_BTAB>', self.show_prev_tab)

        self.redraw()

    def set_title(self, text):
        self.title.set_text(text)

    def set_status(self, text):
        self.status.set_text(text)

    def show_next_tab(self):
        self.main.show_next_tab()
        self.update_title()

    def show_prev_tab(self):
        self.main.show_prev_tab()
        self.update_title()

    def update_title(self):
        title = ''
        for tab in self.main.childs:
            if title != '':
                title += ' '
            if tab.name == self.main.current.name:
                title += '[%s]' % tab.name
            else:
                title += tab.name

        self.set_title('%s v%s %s' %
                       (common.PROGNAME, common.PROGVERSION, title))

    def run(self):
        curses.curs_set(0)
        while True:
            c = self.command.get_char()
            if c == 'q':
                break
コード例 #2
0
ファイル: window.py プロジェクト: Oseenix/respub
class Window(Screen):
    def __init__(self, win):
        super(Window, self).__init__(win)

        self.title = TitleBar(self)

        self.main = TabPanel(self)
        self.main.create_tab(TextPanel, 'main')
        self.main.create_tab(TextPanel, 'help')
        self.main.tabs['help'].add_line('Help !')

        self.status = StatusBar(self)
        self.command = CommandBar(self)

        self.register_event('<KEY_TAB>', self.show_next_tab)
        self.register_event('<KEY_BTAB>', self.show_prev_tab)

        self.redraw()

    def set_title(self, text):
        self.title.set_text(text)

    def set_status(self, text):
        self.status.set_text(text)

    def show_next_tab(self):
        self.main.show_next_tab()
        self.update_title()

    def show_prev_tab(self):
        self.main.show_prev_tab()
        self.update_title()

    def update_title(self):
        title = ''
        for tab in self.main.childs:
            if title != '':
                title += ' '
            if tab.name == self.main.current.name:
                title += '[%s]' % tab.name
            else:
                title += tab.name

        self.set_title('%s v%s %s' % (common.PROGNAME, common.PROGVERSION, title))

    def run(self):
        curses.curs_set(0)
        while True:
            c = self.command.get_char()
            if c == 'q':
                break