本文整理汇总了Python中xl.main.exaile函数的典型用法代码示例。如果您正苦于以下问题:Python exaile函数的具体用法?Python exaile怎么用?Python exaile使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了exaile函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _compils
def _compils(self):
compils = [x.track for x in search.search_tracks_from_string(
ex.exaile().collection, '! %s==__null__' % self['artist'])]
if len(compils)>0:
return self.get_cds_html([x.track for x in search.search_tracks_from_string(
ex.exaile().collection, ('album=="%s"' % compil for compil in compils), ['album', 'tracknumber'])])
return ''
示例2: get_cds_html
def get_cds_html(self, tracks):
list = []
html = ''
cd = ''
for tr in tracks:
if get_track_tag(tr, 'album', 'unknown').lower() != cd.lower():
if cd != '':
html+='<tr><td colspan=3><hr noshade="noshade"/></td></tr></table>'
html+='<table class="cd-table">'
cd=get_track_tag(tr, 'album', 'unknown')
if cd== 'unknown':
track_nbr = len([x.track for x in search.search_tracks_from_string(
ex.exaile().collection, 'album==__null__')])
else:
track_nbr = len([x.track for x in search.search_tracks_from_string(
ex.exaile().collection, 'album=="%s"' % cd)])
cover = get_track_cover(tr)
cover_data = get_image_data(cover, (60, 60))
html+='''<tr class="cd-tr">\
<td><a href="album://%s"><img class="cd-img" src="%s"/></a></td>\
<td class="cd-title-td"><a href="album://%s"><b>%s</b><br/>%s</a></td>\
<td class="cd-right-td">%s tracks</td>\
</tr><tr><td colspan=3><hr noshade="noshade"/></td></tr>''' % \
(cd, cover_data, cd, cd, get_track_tag(tr, 'date', ''), track_nbr)
anchor = self.get_track_anchor_from_track(tr, img=True)
html+='''<tr class="cd-track-tr">\
<td colspan=3 class='tracktd'>%s</td>\
</tr>''' % anchor
html+='</table>'
return html
示例3: __init__
def __init__(self, preferences, builder):
"""
Initializes the manager
"""
self.preferences = preferences
builder.connect_signals(self)
self.plugins = main.exaile().plugins
self.message = dialogs.MessageBar(
parent=builder.get_object('preferences_pane'),
buttons=Gtk.ButtonsType.CLOSE
)
self.message.connect('response', self.on_messagebar_response)
self.list = builder.get_object('plugin_tree')
self.enabled_cellrenderer = builder.get_object('enabled_cellrenderer')
if main.exaile().options.Debug:
reload_cellrenderer = common.ClickableCellRendererPixbuf()
reload_cellrenderer.props.icon_name = 'view-refresh'
reload_cellrenderer.props.xalign = 1
reload_cellrenderer.connect('clicked',
self.on_reload_cellrenderer_clicked)
name_column = builder.get_object('name_column')
name_column.pack_start(reload_cellrenderer, True)
name_column.add_attribute(reload_cellrenderer, 'visible', 3)
self.version_label = builder.get_object('version_label')
self.author_label = builder.get_object('author_label')
self.name_label = builder.get_object('name_label')
self.description = builder.get_object('description_view')
self.model = builder.get_object('model')
self.filter_model = self.model.filter_new()
self.show_incompatible_cb = builder.get_object('show_incompatible_cb')
self.show_broken_cb = builder.get_object('show_broken_cb')
self.filter_model.set_visible_func(self._model_visible_func)
self.status_column = builder.get_object('status_column')
self._set_status_visible()
selection = self.list.get_selection()
selection.connect('changed', self.on_selection_changed)
self._load_plugin_list()
self._evt_rm1 = event.add_ui_callback(self.on_plugin_event, 'plugin_enabled', None, True)
self._evt_rm2 = event.add_ui_callback(self.on_plugin_event, 'plugin_disabled', None, False)
self.list.connect('destroy', self.on_destroy)
GLib.idle_add(selection.select_path, (0,))
GLib.idle_add(self.list.grab_focus)
示例4: on_saveas
def on_saveas(self):
exaile = main.exaile()
name = dialogs.ask_for_playlist_name(exaile.gui.main.window, exaile.playlists)
if name is not None:
pl = playlist.Playlist(name, self.playlist[:])
exaile.playlists.save_playlist(pl)
self.plcontainer.create_tab_from_playlist(pl)
示例5: _lyrics
def _lyrics(self):
try:
l = ex.exaile().lyrics.find_lyrics(self.track)
l = "%s <br/><br/>from %s" % (l[0].replace('\n', '<br/>'), l[1])
except:
l='No lyrics found'
return l
示例6: _saveas_playlist_cb
def _saveas_playlist_cb(widget, name, page, context):
exaile = main.exaile()
name = dialogs.ask_for_playlist_name(exaile.playlists, "")
if name is not None:
pl = playlist.Playlist(name, page.playlist[:])
exaile.playlists.save_playlist(pl)
page.container.create_tab_from_playlist(pl)
示例7: track_in_collection
def track_in_collection(artist, title):
tracks = [x.track for x in search.search_tracks_from_string(
ex.exaile().collection, ('artist=="%s" title=="%s"' % (artist, title)))]
if len(tracks)>0:
return tracks[0]
else:
return None
示例8: page_leave
def page_leave(preferences_dialog):
"""
Hides the OSD preview
"""
OSDWINDOW = exaile().plugins.enabled_plugins["osd"].OSDWINDOW
OSDWINDOW.props.autohide = True
OSDWINDOW.hide()
示例9: on_message_response
def on_message_response(self, widget, response):
"""
Restarts Exaile if requested
"""
widget.hide()
if response == Gtk.ResponseType.ACCEPT:
GLib.idle_add(main.exaile().quit, True)
示例10: get_selected_tracks
def get_selected_tracks(self):
tmp = self.hover.split('://', 1)[1]
if self.hover.split('://')[0]=='track':
return [self.currentpage.tracks[int(self.hover.split('://', 1)[1])]]
if self.hover.split('://')[0]=='artist':
return [x.track for x in search.search_tracks_from_string(
ex.exaile().collection, ('artist=="%s"' % tmp),
keyword_tags=['album', 'tracknumber'])]
if self.hover.split('://')[0]=='album':
return [x.track for x in search.search_tracks_from_string(
ex.exaile().collection, ('artist=="%s"' % tmp),
keyword_tags=['tracknumber'])]
if self.hover.split('://')[0]=='tag':
return [x.track for x in search.search_tracks_from_string(
ex.exaile().collection, ('genre=="%s"' % tmp),
keyword_tags=['artist', 'album', 'tracknumber'])]
return []
示例11: on_message_response
def on_message_response(self, widget, response):
"""
Restarts Exaile if requested
"""
widget.hide()
if response == gtk.RESPONSE_ACCEPT:
glib.idle_add(main.exaile().quit, True)
示例12: __init__
def __init__(self, preferences, builder):
"""
Initializes the manager
"""
self.preferences = preferences
builder.connect_signals(self)
self.plugins = main.exaile().plugins
self.message = dialogs.MessageBar(parent=builder.get_object("preferences_pane"), buttons=gtk.BUTTONS_CLOSE)
self.message.connect("response", self.on_messagebar_response)
self.list = builder.get_object("plugin_tree")
self.enabled_cellrenderer = builder.get_object("enabled_cellrenderer")
if main.exaile().options.Debug:
reload_cellrenderer = common.ClickableCellRendererPixbuf()
reload_cellrenderer.props.stock_id = gtk.STOCK_REFRESH
reload_cellrenderer.props.xalign = 1
reload_cellrenderer.connect("clicked", self.on_reload_cellrenderer_clicked)
name_column = builder.get_object("name_column")
name_column.pack_start(reload_cellrenderer)
name_column.add_attribute(reload_cellrenderer, "visible", 3)
self.version_label = builder.get_object("version_label")
self.author_label = builder.get_object("author_label")
self.name_label = builder.get_object("name_label")
self.description = builder.get_object("description_view")
self.model = builder.get_object("model")
self.filter_model = self.model.filter_new()
self.show_incompatible_cb = builder.get_object("show_incompatible_cb")
self.show_broken_cb = builder.get_object("show_broken_cb")
self.filter_model.set_visible_func(self._model_visible_func)
self.status_column = builder.get_object("status_column")
self._set_status_visible()
selection = self.list.get_selection()
selection.connect("changed", self.on_selection_changed)
self._load_plugin_list()
glib.idle_add(selection.select_path, (0,))
glib.idle_add(self.list.grab_focus)
示例13: page_enter
def page_enter(preferences_dialog):
"""
Shows a preview of the OSD
"""
# XXX: Ugly but the only way to get the proper
# instance, just plugins.osd.OSDWINDOW is always None
OSDWINDOW = exaile().plugins.enabled_plugins["osd"].OSDWINDOW
OSDWINDOW.props.autohide = False
OSDWINDOW.show()
示例14: _lfm_top_albums
def _lfm_top_albums(self, period='overall', limit=10):
if self.get_lfm_user():
cds = [album.get_item().get_title() for album in self.get_lfm_user().get_top_albums(period,int(limit))]
tracks = []
if len(cds)>0:
for cd in cds:
tracks+= [x.track for x in search.search_tracks_from_string(
ex.exaile().collection, ('album=="%s"' % cd), ['tracknumber'])]
return self.get_cds_html(tracks)
return ""
return "Enter your username in the settings"
示例15: get_local_colors
def get_local_colors(self):
n = ex.exaile().gui.panel_notebook
n.realize()
style=n.get_style()
l=[gtk.STATE_NORMAL,gtk.STATE_ACTIVE,gtk.STATE_PRELIGHT,gtk.STATE_SELECTED,gtk.STATE_INSENSITIVE]
s=['normal', 'active', 'prelight', 'selected', 'insensitive']
colors = {}
for t in ['base', 'text', 'fg', 'bg']:
for i, j in zip(l, s):
colors["%s-%s" % (t,j)] = self.to_hex_color(getattr(style, t)[i])
return colors