示例#1
0
文件: app.py 项目: BruceZu/gertty
 def localCherryPickCommit(self, project_name, commit_sha):
     repo = gitrepo.get_repo(project_name, self.config)
     try:
         repo.cherryPick(commit_sha)
         dialog = mywid.MessageDialog('Cherry-Pick', 'Change cherry-picked in %s' % repo.path)
         min_height=8
     except gitrepo.GitCheckoutError as e:
         dialog = mywid.MessageDialog('Error', e.msg)
         min_height=12
     urwid.connect_signal(dialog, 'close',
         lambda button: self.backScreen())
     self.popup(dialog, min_height=min_height)
示例#2
0
 def cherryPick(self, button):
     repo = self.app.getRepo(self.project_name)
     try:
         repo.cherryPick(self.commit_sha)
         dialog = mywid.MessageDialog(
             'Cherry-Pick', 'Change cherry-picked in %s' % repo.path)
         min_height = 8
     except gitrepo.GitCheckoutError as e:
         dialog = mywid.MessageDialog('Error', e.msg)
         min_height = 12
     urwid.connect_signal(dialog, 'close',
                          lambda button: self.app.backScreen())
     self.app.popup(dialog, min_height=min_height)
示例#3
0
 def help(self):
     if not hasattr(self.loop.widget, 'help'):
         return
     global_help = [(self.config.keymap.formatKeys(k), t)
                    for (k, t) in mywid.GLOBAL_HELP]
     for d in self.config.dashboards.values():
         global_help.append((keymap.formatKey(d['key']), d['name']))
     parts = [('Global Keys', global_help),
              ('This Screen', self.loop.widget.help())]
     keylen = 0
     for title, items in parts:
         for keys, text in items:
             keylen = max(len(keys), keylen)
     text = ''
     for title, items in parts:
         if text:
             text += '\n'
         text += title + '\n'
         text += '%s\n' % ('=' * len(title), )
         for keys, cmdtext in items:
             text += '{keys:{width}} {text}\n'.format(keys=keys,
                                                      width=keylen,
                                                      text=cmdtext)
     dialog = mywid.MessageDialog('Help for %s' % version(), text)
     lines = text.split('\n')
     urwid.connect_signal(dialog, 'close', lambda button: self.backScreen())
     self.popup(dialog, min_width=76, min_height=len(lines) + 4)
示例#4
0
文件: app.py 项目: BruceZu/gertty
 def welcome(self):
     text = WELCOME_TEXT
     dialog = mywid.MessageDialog('Welcome', text)
     lines = text.split('\n')
     urwid.connect_signal(dialog, 'close',
         lambda button: self.backScreen())
     self.popup(dialog, min_width=76, min_height=len(lines)+4)
示例#5
0
    def error(self, message, title='Error'):
        dialog = mywid.MessageDialog(title, message)
        urwid.connect_signal(dialog, 'close', lambda button: self.backScreen())

        cols, rows = self.loop.screen.get_cols_rows()
        cols = int(cols * .5)
        lines = textwrap.wrap(message, cols)
        min_height = max(4, len(lines) + 4)

        self.popup(dialog, min_height=min_height)
        return None
示例#6
0
 def help(self):
     if not hasattr(self.frame.body, 'help'):
         return
     global_help = self.getGlobalHelp()
     parts = [('Global Keys', global_help),
              ('This Screen', self.frame.body.help())]
     keylen = 0
     for title, items in parts:
         for cmd, keys, text in items:
             keylen = max(len(keys), keylen)
     text = ''
     for title, items in parts:
         if text:
             text += '\n'
         text += title + '\n'
         text += '%s\n' % ('=' * len(title), )
         for cmd, keys, cmdtext in items:
             text += '{keys:{width}} {text}\n'.format(keys=keys,
                                                      width=keylen,
                                                      text=cmdtext)
     dialog = mywid.MessageDialog('Help for %s' % version(), text)
     lines = text.split('\n')
     urwid.connect_signal(dialog, 'close', lambda button: self.backScreen())
     self.popup(dialog, min_width=76, min_height=len(lines) + 4)
示例#7
0
 def error(self, message):
     dialog = mywid.MessageDialog('Error', message)
     urwid.connect_signal(dialog, 'close', lambda button: self.backScreen())
     self.popup(dialog, min_height=4)
     return None