本文整理汇总了Python中quodlibet.query.Query.search方法的典型用法代码示例。如果您正苦于以下问题:Python Query.search方法的具体用法?Python Query.search怎么用?Python Query.search使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类quodlibet.query.Query
的用法示例。
在下文中一共展示了Query.search方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Query
# 需要导入模块: from quodlibet.query import Query [as 别名]
# 或者: from quodlibet.query.Query import search [as 别名]
def Query(self, text):
if text is not None:
query = Query(text, star=SongList.star)
if query.is_parsable:
return [self.__dict(s) for s in itervalues(self.library)
if query.search(s)]
return None
示例2: GetSubsearchResultSet
# 需要导入模块: from quodlibet.query import Query [as 别名]
# 或者: from quodlibet.query.Query import search [as 别名]
def GetSubsearchResultSet(self, previous_results, terms):
query = Query("")
for term in terms:
query &= Query(term)
songs = get_songs_for_ids(app.library, previous_results)
ids = [get_song_id(s) for s in songs if query.search(s)]
return ids
示例3: test_2007_07_27_synth_search
# 需要导入模块: from quodlibet.query import Query [as 别名]
# 或者: from quodlibet.query.Query import search [as 别名]
def test_2007_07_27_synth_search(self):
song = AudioFile({"~filename": "foo/64K/bar.ogg"})
query = Query("~dirname = !64K")
self.failIf(query.search(song), "%r, %r" % (query, song))
示例4: PlaylistsBrowser
# 需要导入模块: from quodlibet.query import Query [as 别名]
# 或者: from quodlibet.query.Query import search [as 别名]
#.........这里部分代码省略.........
def cell_data(col, render, model, iter, data):
render.markup = model[iter][0].format()
render.set_property("markup", render.markup)
def Menu(self, songs, library, items):
songlist = qltk.get_top_parent(self).songlist
model, iters = self.__get_selected_songs(songlist)
item = qltk.MenuItem(_("_Remove from Playlist"), Icons.LIST_REMOVE)
qltk.add_fake_accel(item, "Delete")
connect_obj(item, "activate", self.__remove, iters, model)
item.set_sensitive(bool(self.__view.get_selection().get_selected()[1]))
items.append([item])
menu = super(PlaylistsBrowser, self).Menu(songs, library, items)
return menu
def __get_selected_songs(self, songlist):
model, rows = songlist.get_selection().get_selected_rows()
iters = map(model.get_iter, rows)
return model, iters
__lists = ObjectModelSort(model=ObjectStore())
__lists.set_default_sort_func(ObjectStore._sort_on_value)
def __init__(self, library):
super(PlaylistsBrowser, self).__init__(spacing=6)
self.set_orientation(Gtk.Orientation.VERTICAL)
self.__render = self.__create_cell_renderer()
self.__view = view = self.__create_playlists_view(self.__render)
self.__embed_in_scrolledwin(view)
self.__configure_buttons(library)
self.__configure_dnd(view, library)
self.__connect_signals(view, library)
self._sb_box = self.__create_searchbar(library)
self._main_box = self.__create_box()
self.show_all()
self._query = None
for child in self.get_children():
child.show_all()
def __destroy(self, *args):
del self._sb_box
def __create_box(self):
box = qltk.ConfigRHPaned("browsers", "playlistsbrowser_pos", 0.4)
box.show_all()
return box
def __create_searchbar(self, library):
self.accelerators = Gtk.AccelGroup()
completion = LibraryTagCompletion(library.librarian)
sbb = SearchBarBox(completion=completion, accel_group=self.accelerators)
sbb.connect("query-changed", self.__text_parse)
sbb.connect("focus-out", self.__focus)
return sbb
def __embed_in_scrolledwin(self, view):
swin = ScrolledWindow()
swin.set_shadow_type(Gtk.ShadowType.IN)
swin.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
swin.add(view)
self.pack_start(swin, True, True, 0)
def __configure_buttons(self, library):
newpl = qltk.Button(_("_New"), Icons.DOCUMENT_NEW, Gtk.IconSize.MENU)
示例5: SearchBar
# 需要导入模块: from quodlibet.query import Query [as 别名]
# 或者: from quodlibet.query.Query import search [as 别名]
class SearchBar(Browser):
"""A browser in which queries are parsed and used to filter results"""
name = _("Search Library")
accelerated_name = _("_Search Library")
keys = ["SearchBar"]
priority = 1
def pack(self, songpane):
container = Gtk.VBox(spacing=6)
container.pack_start(self, False, True, 0)
container.pack_start(songpane, True, True, 0)
return container
def unpack(self, container, songpane):
container.remove(songpane)
container.remove(self)
def __init__(self, library):
super(SearchBar, self).__init__()
self.set_spacing(6)
self.set_orientation(Gtk.Orientation.VERTICAL)
self._query = None
self._library = library
completion = LibraryTagCompletion(library.librarian)
self.accelerators = Gtk.AccelGroup()
show_limit = config.getboolean("browsers", "search_limit")
sbb = LimitSearchBarBox(completion=completion,
accel_group=self.accelerators,
show_limit=show_limit)
sbb.connect('query-changed', self.__text_parse)
sbb.connect('focus-out', self.__focus)
self._sb_box = sbb
prefs = PreferencesButton(sbb)
sbb.pack_start(prefs, False, True, 0)
align = Align(sbb, left=6, right=6, top=6)
self.pack_start(align, False, True, 0)
self.connect('destroy', self.__destroy)
self.show_all()
def _get_text(self):
return self._sb_box.get_text()
def _set_text(self, text):
self._sb_box.set_text(text)
def __destroy(self, *args):
self._sb_box = None
def __focus(self, widget, *args):
qltk.get_top_parent(widget).songlist.grab_focus()
def _get_songs(self):
text = self._get_text()
try:
self._query = Query(text, star=SongList.star)
except Query.error:
pass
else:
return self._query.filter(self._library)
def activate(self):
songs = self._get_songs()
if songs is not None:
songs = self._sb_box.limit(songs)
GLib.idle_add(self.songs_selected, songs)
def __text_parse(self, bar, text):
self.activate()
def save(self):
config.settext("browsers", "query_text", self._get_text())
def restore(self):
text = config.gettext("browsers", "query_text")
self._set_text(text)
def finalize(self, restore):
config.set("browsers", "query_text", "")
def can_filter_text(self):
return True
def filter_text(self, text):
self._set_text(text)
self.activate()
def get_filter_text(self):
return self._get_text()
def unfilter(self):
self.filter_text("")
def active_filter(self, song):
#.........这里部分代码省略.........
示例6: PlaylistsBrowser
# 需要导入模块: from quodlibet.query import Query [as 别名]
# 或者: from quodlibet.query.Query import search [as 别名]
#.........这里部分代码省略.........
cell.markup = markup
cell.set_property('markup', markup)
def Menu(self, songs, library, items):
model, iters = self.__get_selected_songs()
remove = qltk.MenuItem(_("_Remove from Playlist"), Icons.LIST_REMOVE)
qltk.add_fake_accel(remove, "Delete")
connect_obj(remove, 'activate', self.__remove, iters, model)
playlist_iter = self.__selected_playlists()[1]
remove.set_sensitive(bool(playlist_iter))
items.append([remove])
menu = super(PlaylistsBrowser, self).Menu(songs, library, items)
return menu
def __get_selected_songs(self):
songlist = qltk.get_top_parent(self).songlist
model, rows = songlist.get_selection().get_selected_rows()
iters = map(model.get_iter, rows)
return model, iters
__lists = ObjectModelSort(model=ObjectStore())
__lists.set_default_sort_func(ObjectStore._sort_on_value)
def __init__(self, library):
self.library = library
super(PlaylistsBrowser, self).__init__(spacing=6)
self.set_orientation(Gtk.Orientation.VERTICAL)
self.__render = self.__create_cell_renderer()
self.__view = view = self.__create_playlists_view(self.__render)
self.__embed_in_scrolledwin(view)
self.__configure_buttons(library)
self.__configure_dnd(view, library)
self.__connect_signals(view, library)
self._sb_box = self.__create_searchbar(library)
self._main_box = self.__create_box()
self.show_all()
self._query = None
for child in self.get_children():
child.show_all()
def __destroy(self, *args):
del self._sb_box
def __create_box(self):
box = qltk.ConfigRHPaned("browsers", "playlistsbrowser_pos", 0.4)
box.show_all()
return box
def __create_searchbar(self, library):
self.accelerators = Gtk.AccelGroup()
completion = LibraryTagCompletion(library.librarian)
sbb = SearchBarBox(completion=completion,
accel_group=self.accelerators)
sbb.connect('query-changed', self.__text_parse)
sbb.connect('focus-out', self.__focus)
return sbb
def __embed_in_scrolledwin(self, view):
swin = ScrolledWindow()
swin.set_shadow_type(Gtk.ShadowType.IN)
swin.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
swin.add(view)
self.pack_start(swin, True, True, 0)
def __configure_buttons(self, library):