python类connect_signal()的实例源码

app.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 17 收藏 0 点赞 0 评论 0
def __init__(self, app, default):
        self.app = app
        search_button = mywid.FixedButton('Search')
        cancel_button = mywid.FixedButton('Cancel')
        urwid.connect_signal(search_button, 'click',
                             lambda button:self._emit('search'))
        urwid.connect_signal(cancel_button, 'click',
                             lambda button:self._emit('cancel'))
        super(SearchDialog, self).__init__("Search",
                                           "Enter a change number or search string.",
                                           entry_prompt="Search: ",
                                           entry_text=default,
                                           buttons=[search_button,
                                                    cancel_button],
                                           ring=app.ring)
app.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def quit(self):
        dialog = mywid.YesNoDialog(u'Quit',
                                   u'Are you sure you want to quit?')
        urwid.connect_signal(dialog, 'no', self.backScreen)
        urwid.connect_signal(dialog, 'yes', self._quit)

        self.popup(dialog)
app.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
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)

    #storyboard
app.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def searchDialog(self, default):
        dialog = SearchDialog(self, default)
        urwid.connect_signal(dialog, 'cancel',
            lambda button: self.backScreen())
        urwid.connect_signal(dialog, 'search',
            lambda button: self._searchDialog(dialog))
        self.popup(dialog, min_width=76, min_height=8)
app.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def newStory(self):
        if hasattr(self.frame.body, 'project_key'):
            project_key = self.frame.body.project_key
        else:
            project_key = None
        dialog = view_story.NewStoryDialog(self, project_key)
        urwid.connect_signal(dialog, 'save',
                             lambda button: self.saveNewStory(dialog))
        urwid.connect_signal(dialog, 'cancel',
                             lambda button: self.cancelNewStory(dialog))
        self.popup(dialog,
                   relative_width=50, relative_height=25,
                   min_width=60, min_height=8)
mywid.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def __init__(self, app, title, message, entry_prompt=None,
                 entry_text='', ring=None):
        self.app = app
        save_button = FixedButton('Save')
        cancel_button = FixedButton('Cancel')
        urwid.connect_signal(save_button, 'click',
                             lambda button:self._emit('save'))
        urwid.connect_signal(cancel_button, 'click',
                             lambda button:self._emit('cancel'))
        super(LineEditDialog, self).__init__(title, message, entry_prompt,
                                             entry_text,
                                             buttons=[save_button,
                                                      cancel_button],
                                             ring=ring)
mywid.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self, title, message):
        ok_button = FixedButton('OK')
        urwid.connect_signal(ok_button, 'click',
                             lambda button:self._emit('close'))
        super(MessageDialog, self).__init__(title, message, buttons=[ok_button])
mywid.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self, title, message):
        yes_button = FixedButton('Yes')
        no_button = FixedButton('No')
        urwid.connect_signal(yes_button, 'click',
                             lambda button:self._emit('yes'))
        urwid.connect_signal(no_button, 'click',
                             lambda button:self._emit('no'))
        super(YesNoDialog, self).__init__(title, message, buttons=[yes_button,
                                                                   no_button])
mywid.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self, app, title, key, value, values):
        self.app = app
        self.title = title
        self.values = values
        urwid.connect_signal(self, 'click',
                             lambda button:self.onClick())
        super(SearchSelectButton, self).__init__(u'')
        self.update(key, value)
mywid.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def onClick(self):
        dialog = SearchSelectDialog(self.app, self.title, self.key, self.values)
        urwid.connect_signal(dialog, 'save',
                             lambda d:self.onChanged(d))
        self.app.popup(dialog,
                       relative_width=30, relative_height=75,
                       min_width=30, min_height=20)
commentlink.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def replace(self, app, data):
        link = mywid.Link(self.text.format(**data), 'link', 'focused-link')
        urwid.connect_signal(link, 'selected',
            lambda link:self.activate(app, self.url.format(**data)))
        return link
commentlink.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def replace(self, app, data):
        link = mywid.Link(self.text.format(**data), 'link', 'focused-link')
        urwid.connect_signal(link, 'selected',
            lambda link:app.doSearch(self.query.format(**data)))
        return link
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __init__(self, app, project_key):
        self.app = app
        save_button = mywid.FixedButton(u'Save')
        cancel_button = mywid.FixedButton(u'Cancel')
        urwid.connect_signal(save_button, 'click',
            lambda button:self._emit('save'))
        urwid.connect_signal(cancel_button, 'click',
            lambda button:self._emit('cancel'))

        rows = []
        buttons = [('pack', save_button),
                   ('pack', cancel_button)]
        buttons = urwid.Columns(buttons, dividechars=2)

        if project_key:
            with self.app.db.getSession() as session:
                project = session.getProject(project_key)
                project_name = project.name
        else:
            project_name = None

        self.project_button = ProjectButton(self.app, project_key, project_name)
        self.title_field = mywid.MyEdit(u'', edit_text=u'', ring=app.ring)
        self.description_field = mywid.MyEdit(u'', edit_text='',
                                              multiline=True, ring=app.ring)

        for (label, w) in [
                (u'Title:', self.title_field),
                (u'Description:', self.description_field),
                (u'Project:', ('pack', self.project_button)),
                ]:
            row = urwid.Columns([(12, urwid.Text(label)), w])
            rows.append(row)

        rows.append(urwid.Divider())
        rows.append(buttons)
        pile = urwid.Pile(rows)
        fill = urwid.Filler(pile, valign='top')
        super(NewStoryDialog, self).__init__(urwid.LineBox(fill, 'New Story'))
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def __init__(self, app):
        self.app = app
        save_button = mywid.FixedButton(u'Save')
        cancel_button = mywid.FixedButton(u'Cancel')
        urwid.connect_signal(save_button, 'click',
            lambda button:self._emit('save'))
        urwid.connect_signal(cancel_button, 'click',
            lambda button:self._emit('cancel'))

        rows = []
        buttons = [('pack', save_button),
                   ('pack', cancel_button)]
        buttons = urwid.Columns(buttons, dividechars=2)

        self.project_button = ProjectButton(self.app)
        self.status_button = StatusButton(self.app)
        self.assignee_button = AssigneeButton(self.app)
        self.title_field = mywid.MyEdit(u'', edit_text=u'', ring=app.ring)

        for (label, w) in [
                (u'Project:', ('pack', self.project_button)),
                (u'Title:', self.title_field),
                (u'Status:', ('pack', self.status_button)),
                (u'Assignee:', ('pack', self.assignee_button)),
                ]:
            row = urwid.Columns([(12, urwid.Text(label)), w])
            rows.append(row)

        rows.append(urwid.Divider())
        rows.append(buttons)
        pile = urwid.Pile(rows)
        fill = urwid.Filler(pile, valign='top')
        super(NewTaskDialog, self).__init__(urwid.LineBox(fill, 'New Task'))
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def editNote(self, note_button):
        dialog = mywid.LineEditDialog(self.app, 'Edit Task Note', '',
                                      'Note: ', self._note,
                                      ring=self.app.ring)
        urwid.connect_signal(dialog, 'save',
            lambda button: self.updateNote(dialog, True))
        urwid.connect_signal(dialog, 'cancel',
            lambda button: self.updateNote(dialog, False))
        self.app.popup(dialog)
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def delete(self):
        dialog = mywid.YesNoDialog(u'Delete Task',
                                   u'Are you sure you want to delete this task?')
        urwid.connect_signal(dialog, 'no', lambda d: self.app.backScreen())
        urwid.connect_signal(dialog, 'yes', self.finishDelete)
        self.app.popup(dialog)
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def __init__(self, story_view, story_key, text):
        super(StoryButton, self).__init__('')
        self.set_label(text)
        self.story_view = story_view
        self.story_key = story_key
        urwid.connect_signal(self, 'click',
            lambda button: self.openStory())
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def editDescription(self):
        with self.app.db.getSession() as session:
            story = session.getStory(self.story_key)
            dialog = mywid.TextEditDialog(self.app, u'Edit Description',
                                          u'Description:',
                                          u'Save', story.description)
        urwid.connect_signal(dialog, 'cancel', self.app.backScreen)
        urwid.connect_signal(dialog, 'save', lambda button:
                                 self.doEditDescription(dialog))
        self.app.popup(dialog,
                       relative_width=50, relative_height=75,
                       min_width=60, min_height=20)
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def newTask(self):
        dialog = NewTaskDialog(self.app)
        urwid.connect_signal(dialog, 'save',
                             lambda button: self.saveNewTask(dialog))
        urwid.connect_signal(dialog, 'cancel',
                             lambda button: self.cancelNewTask(dialog))
        self.app.popup(dialog,
                       relative_width=50, relative_height=25,
                       min_width=60, min_height=8)
story.py 文件源码 项目:boartty 作者: openstack 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def editTitle(self):
        dialog = mywid.LineEditDialog(self.app, 'Edit Story Title', '',
                                      'Title: ', self.story_title,
                                      ring=self.app.ring)
        urwid.connect_signal(dialog, 'save',
            lambda button: self.updateTitle(dialog, True))
        urwid.connect_signal(dialog, 'cancel',
            lambda button: self.updateTitle(dialog, False))
        self.app.popup(dialog)


问题


面经


文章

微信
公众号

扫码关注公众号