本文整理汇总了Python中quodlibet.qltk.models.ObjectStore.connect方法的典型用法代码示例。如果您正苦于以下问题:Python ObjectStore.connect方法的具体用法?Python ObjectStore.connect怎么用?Python ObjectStore.connect使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类quodlibet.qltk.models.ObjectStore
的用法示例。
在下文中一共展示了ObjectStore.connect方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_iter_path_changed
# 需要导入模块: from quodlibet.qltk.models import ObjectStore [as 别名]
# 或者: from quodlibet.qltk.models.ObjectStore import connect [as 别名]
def test_iter_path_changed(self):
m = ObjectStore()
def handler(model, path, iter_, result):
result[0] += 1
result = [0]
m.connect("row-changed", handler, result)
m.append([object()])
iter_ = m.get_iter_first()
m.iter_changed(iter_)
self.assertEqual(result[0], 1)
m.path_changed(m.get_path(iter_))
self.assertEqual(result[0], 2)
示例2: test_signal_count
# 需要导入模块: from quodlibet.qltk.models import ObjectStore [as 别名]
# 或者: from quodlibet.qltk.models.ObjectStore import connect [as 别名]
def test_signal_count(self):
m = ObjectStore()
def handler(model, path, iter_, result):
result[0] += 1
inserted = [0]
m.connect("row-inserted", handler, inserted)
changed = [0]
m.connect("row-changed", handler, changed)
m.append([1])
m.prepend([8])
m.insert(0, [1])
m.insert_before(None, [1])
m.insert_after(None, [1])
m.insert_many(0, [1, 2, 3])
m.append_many([1, 2, 3])
list(m.iter_append_many([1, 2, 3]))
list(m.iter_append_many(xrange(3)))
self.assertEqual(changed[0], 0)
self.assertEqual(inserted[0], len(m))
示例3: __init__
# 需要导入模块: from quodlibet.qltk.models import ObjectStore [as 别名]
# 或者: from quodlibet.qltk.models.ObjectStore import connect [as 别名]
def __init__(self, parent, library):
super(EditTags, self).__init__(spacing=12)
self.title = _("Edit Tags")
self.set_border_width(12)
model = ObjectStore()
view = RCMHintedTreeView(model=model)
self._view = view
selection = view.get_selection()
render = Gtk.CellRendererPixbuf()
column = TreeViewColumn()
column.pack_start(render, True)
column.set_fixed_width(24)
column.set_expand(False)
def cdf_write(col, rend, model, iter_, *args):
entry = model.get_value(iter_)
rend.set_property('sensitive', entry.edited or entry.deleted)
if entry.canedit or entry.deleted:
if entry.deleted:
rend.set_property('icon-name', Icons.EDIT_DELETE)
else:
rend.set_property('icon-name', Icons.EDIT)
else:
rend.set_property('icon-name', Icons.CHANGES_PREVENT)
column.set_cell_data_func(render, cdf_write)
view.append_column(column)
render = Gtk.CellRendererText()
column = TreeViewColumn(title=_('Tag'))
column.pack_start(render, True)
def cell_data_tag(column, cell, model, iter_, data):
entry = model.get_value(iter_)
cell.set_property("text", entry.tag)
cell.set_property("strikethrough", entry.deleted)
column.set_cell_data_func(render, cell_data_tag)
column.set_sizing(Gtk.TreeViewColumnSizing.AUTOSIZE)
render.set_property('editable', True)
render.connect('edited', self.__edit_tag_name, model)
render.connect(
'editing-started', self.__tag_editing_started, model, library)
view.append_column(column)
render = Gtk.CellRendererText()
render.set_property('ellipsize', Pango.EllipsizeMode.END)
render.set_property('editable', True)
render.connect('edited', self.__edit_tag, model)
render.connect(
'editing-started', self.__value_editing_started, model, library)
column = TreeViewColumn(title=_('Value'))
column.pack_start(render, True)
def cell_data_value(column, cell, model, iter_, data):
entry = model.get_value(iter_)
markup = entry.value.get_markup()
cell.markup = markup
cell.set_property("markup", markup)
cell.set_property("editable", entry.canedit)
cell.set_property("strikethrough", entry.deleted)
column.set_cell_data_func(render, cell_data_value)
column.set_sizing(Gtk.TreeViewColumnSizing.AUTOSIZE)
view.append_column(column)
sw = Gtk.ScrolledWindow()
sw.set_shadow_type(Gtk.ShadowType.IN)
sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
sw.add(view)
self.pack_start(sw, True, True, 0)
cb = ConfigCheckButton(
_("Show _programmatic tags"), 'editing', 'alltags', populate=True,
tooltip=_("Access all tags, including machine-generated "
"ones e.g. MusicBrainz or Replay Gain tags"))
cb.connect('toggled', self.__all_tags_toggled)
self.pack_start(cb, False, True, 0)
# Add and Remove [tags] buttons
buttonbox = Gtk.HBox(spacing=18)
bbox1 = Gtk.HButtonBox()
bbox1.set_spacing(6)
bbox1.set_layout(Gtk.ButtonBoxStyle.START)
add = qltk.Button(_("_Add"), Icons.LIST_ADD)
add.set_focus_on_click(False)
self._add = add
add.connect('clicked', self.__add_tag, model, library)
bbox1.pack_start(add, True, True, 0)
# Remove button
remove = qltk.Button(_("_Remove"), Icons.LIST_REMOVE)
remove.set_focus_on_click(False)
remove.connect('clicked', self.__remove_tag, view)
remove.set_sensitive(False)
self._remove = remove
bbox1.pack_start(remove, True, True, 0)
#.........这里部分代码省略.........