当前位置: 首页>>代码示例>>Python>>正文


Python SongsMenu.prepend方法代码示例

本文整理汇总了Python中quodlibet.qltk.songsmenu.SongsMenu.prepend方法的典型用法代码示例。如果您正苦于以下问题:Python SongsMenu.prepend方法的具体用法?Python SongsMenu.prepend怎么用?Python SongsMenu.prepend使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在quodlibet.qltk.songsmenu.SongsMenu的用法示例。


在下文中一共展示了SongsMenu.prepend方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __popup_menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup_menu(self, view, library):
        model, itr = view.get_selection().get_selected()
        if itr is None:
            return
        songs = list(model[itr][0])
        songs = filter(lambda s: isinstance(s, AudioFile), songs)
        menu = SongsMenu(library, songs, playlists=False, remove=False, ratings=False)
        menu.preseparate()

        def _remove(model, itr):
            playlist = model[itr][0]
            dialog = ConfirmRemovePlaylistDialog(self, playlist)
            if dialog.run() == Gtk.ResponseType.YES:
                playlist.delete()
                model.get_model().remove(model.convert_iter_to_child_iter(itr))

        rem = MenuItem(_("_Delete"), Icons.EDIT_DELETE)
        connect_obj(rem, "activate", _remove, model, itr)
        menu.prepend(rem)

        def _rename(path):
            self.__render.set_property("editable", True)
            view.set_cursor(path, view.get_columns()[0], start_editing=True)

        ren = qltk.MenuItem(_("_Rename"), Icons.EDIT)
        qltk.add_fake_accel(ren, "F2")
        connect_obj(ren, "activate", _rename, model.get_path(itr))
        menu.prepend(ren)

        playlist = model[itr][0]
        PLAYLIST_HANDLER.populate_menu(menu, library, self, [playlist])
        menu.show_all()
        return view.popup_menu(menu, 0, Gtk.get_current_event_time())
开发者ID:mistotebe,项目名称:quodlibet,代码行数:35,代码来源:main.py

示例2: __popup

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup(self, library):
        songs = self.get_selected_songs()
        if not songs:
            return

        menu = SongsMenu(library, songs, queue=False, remove=False, delete=False, ratings=False)
        menu.preseparate()
        remove = MenuItem(_("_Remove"), Icons.LIST_REMOVE)
        qltk.add_fake_accel(remove, "Delete")
        remove.connect("activate", self.__remove)
        menu.prepend(remove)
        menu.show_all()
        return self.popup_menu(menu, 0, Gtk.get_current_event_time())
开发者ID:urielz,项目名称:quodlibet,代码行数:15,代码来源:queue.py

示例3: __popup

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup(self, library):
        songs = self.get_selected_songs()
        if not songs: return

        menu = SongsMenu(
            library, songs, queue=False, remove=False, delete=False,
            parent=self)
        menu.preseparate()
        remove = gtk.ImageMenuItem(gtk.STOCK_REMOVE)
        remove.connect('activate', self.__remove)
        menu.prepend(remove)
        menu.show_all()
        return self.popup_menu(menu, 0, gtk.get_current_event_time())
开发者ID:silkecho,项目名称:glowing-silk,代码行数:15,代码来源:queue.py

示例4: Menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
 def Menu(self, songs, songlist, library):
     menu = SongsMenu(library, songs, remove=self.__remove_songs,
                      delete=True, accels=songlist.accelerators,
                      parent=self)
     i = qltk.MenuItem(_("_Add to Library"), gtk.STOCK_ADD)
     i.set_sensitive(False)
     i.connect('activate', self.__add_songs, songs)
     for song in songs:
         if song not in self.__glibrary:
             i.set_sensitive(True)
             break
     menu.preseparate()
     menu.prepend(i)
     return menu
开发者ID:silkecho,项目名称:glowing-silk,代码行数:16,代码来源:filesystem.py

示例5: __popup

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup(self, library):
        songs = self.get_selected_songs()
        if not songs:
            return

        menu = SongsMenu(
            library, songs, queue=False, remove=False, delete=False,
            ratings=False)
        menu.preseparate()
        remove = Gtk.ImageMenuItem(Gtk.STOCK_REMOVE, use_stock=True)
        qltk.add_fake_accel(remove, "Delete")
        remove.connect('activate', self.__remove)
        menu.prepend(remove)
        menu.show_all()
        return self.popup_menu(menu, 0, Gtk.get_current_event_time())
开发者ID:brunob,项目名称:quodlibet,代码行数:17,代码来源:queue.py

示例6: Menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
 def Menu(self, songs, songlist, library):
     menu = SongsMenu(
         library, songs, accels=songlist.accelerators, parent=self)
     if len(songs) == 1:
         item = qltk.MenuItem(_("_Download..."), gtk.STOCK_CONNECT)
         item.connect('activate', self.__download, songs[0]("~uri"))
         item.set_sensitive(not songs[0].is_file)
     else:
         songs = filter(lambda s: not s.is_file, songs)
         uris = [song("~uri") for song in songs]
         item = qltk.MenuItem(_("_Download..."), gtk.STOCK_CONNECT)
         item.connect('activate', self.__download_many, uris)
         item.set_sensitive(bool(songs))
     menu.preseparate()
     menu.prepend(item)
     return menu
开发者ID:silkecho,项目名称:glowing-silk,代码行数:18,代码来源:audiofeeds.py

示例7: __popup

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup(self, view, library):
        selection = view.get_selection()
        albums = self.__get_selected_albums(selection)
        songs = self.__get_songs_from_albums(albums)
        menu = SongsMenu(library, songs, parent=self)

        if self.__cover_column.get_visible():
            num = len(albums)
            button = MenuItem(
                ngettext("Reload album _cover", "Reload album _covers", num),
                gtk.STOCK_REFRESH)
            gobject_weak(button.connect, 'activate',
                self.__refresh_album, view)
            menu.prepend(gtk.SeparatorMenuItem())
            menu.prepend(button)

        menu.show_all()
        return view.popup_menu(menu, 0, gtk.get_current_event_time())
开发者ID:silkecho,项目名称:glowing-silk,代码行数:20,代码来源:albums.py

示例8: Menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def Menu(self, songs, songlist, library):
        menu = SongsMenu(self.__librarian, songs, playlists=False, remove=True,
                         queue=False, accels=songlist.accelerators,
                         devices=False, parent=self)

        menu.prepend(gtk.SeparatorMenuItem())

        in_fav = False
        in_all = False
        for song in songs:
            if song in self.__fav_stations:
                in_fav = True
            elif song in self.__stations:
                in_all = True
            if in_fav and in_all:
                break

        button = MenuItem(_("Remove from Favorites"), gtk.STOCK_REMOVE)
        button.set_sensitive(in_fav)
        gobject_weak(button.connect_object, 'activate',
                     self.__remove_fav, songs)
        menu.prepend(button)

        button = MenuItem(_("Add to Favorites"), gtk.STOCK_ADD)
        button.set_sensitive(in_all)
        gobject_weak(button.connect_object, 'activate',
                     self.__add_fav, songs)
        menu.prepend(button)

        return menu
开发者ID:silkecho,项目名称:glowing-silk,代码行数:32,代码来源:iradio.py

示例9: __popup_menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup_menu(self, view, library):
        model, iter = view.get_selection().get_selected()
        device = model[iter][0]

        if device.is_connected() and not self.__busy:
            songs = self.__list_songs(device)
        else:
            songs = []
        menu = SongsMenu(library, songs, playlists=False,
                         devices=False, remove=False, parent=self)

        menu.preseparate()

        props = gtk.ImageMenuItem(gtk.STOCK_PROPERTIES)
        props.connect_object('activate', self.__properties, model[iter][0])
        props.set_sensitive(not self.__busy)
        menu.prepend(props)

        ren = qltk.MenuItem(_("_Rename"), gtk.STOCK_EDIT)
        keyval, mod = gtk.accelerator_parse("F2")
        ren.add_accelerator(
            'activate', self.accelerators, keyval, mod, gtk.ACCEL_VISIBLE)
        def rename(path):
            self.__render.set_property('editable', True)
            view.set_cursor(path, view.get_columns()[0], start_editing=True)
        ren.connect_object('activate', rename, model.get_path(iter))
        menu.prepend(ren)

        menu.preseparate()

        eject = gtk.ImageMenuItem(_("_Eject"))
        eject.set_image(
            gtk.image_new_from_icon_name("media-eject", gtk.ICON_SIZE_MENU))
        eject.set_sensitive(
            not self.__busy and device.eject and device.is_connected())
        eject.connect_object('activate', self.__eject, None)
        menu.prepend(eject)

        refresh = gtk.ImageMenuItem(gtk.STOCK_REFRESH)
        refresh.set_sensitive(device.is_connected())
        refresh.connect_object('activate', self.__refresh, True)
        menu.prepend(refresh)

        menu.show_all()
        menu.popup(None, None, None, 0, gtk.get_current_event_time())
        return True
开发者ID:silkecho,项目名称:glowing-silk,代码行数:48,代码来源:media.py

示例10: __popup_menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup_menu(self, view, library):
        model, iter = view.get_selection().get_selected()
        device = model[iter][0]

        if device.is_connected() and not self.__busy:
            songs = self.__list_songs(device)
        else:
            songs = []
        menu = SongsMenu(library, songs, playlists=False,
                         devices=False, remove=False)

        menu.preseparate()

        props = Gtk.ImageMenuItem(Gtk.STOCK_PROPERTIES, use_stock=True)
        connect_obj(props, 'activate', self.__properties, model[iter][0])
        props.set_sensitive(not self.__busy)
        menu.prepend(props)

        ren = qltk.MenuItem(_("_Rename"), Gtk.STOCK_EDIT)
        keyval, mod = Gtk.accelerator_parse("F2")
        ren.add_accelerator(
            'activate', self.accelerators, keyval, mod, Gtk.AccelFlags.VISIBLE)

        def rename(path):
            self.__render.set_property('editable', True)
            view.set_cursor(path, view.get_columns()[0], start_editing=True)
        connect_obj(ren, 'activate', rename, model.get_path(iter))
        menu.prepend(ren)

        menu.preseparate()

        eject = Gtk.ImageMenuItem(_("_Eject"), use_underline=True)
        eject.set_image(
            Gtk.Image.new_from_icon_name("media-eject", Gtk.IconSize.MENU))
        eject.set_sensitive(
            not self.__busy and device.eject and device.is_connected())
        connect_obj(eject, 'activate', self.__eject, None)
        menu.prepend(eject)

        refresh = Gtk.ImageMenuItem(Gtk.STOCK_REFRESH, use_stock=True)
        refresh.set_sensitive(device.is_connected())
        connect_obj(refresh, 'activate', self.__refresh, True)
        menu.prepend(refresh)

        menu.show_all()
        return view.popup_menu(menu, 0, Gtk.get_current_event_time())
开发者ID:Tjorriemorrie,项目名称:quodlibet,代码行数:48,代码来源:media.py

示例11: __popup_menu

# 需要导入模块: from quodlibet.qltk.songsmenu import SongsMenu [as 别名]
# 或者: from quodlibet.qltk.songsmenu.SongsMenu import prepend [as 别名]
    def __popup_menu(self, view, library):
        # TODO: Consider allowing plugins to expose themselves in playlist
        model, itr = view.get_selection().get_selected()
        if itr is None:
            return
        songs = list(model[itr][0])
        songs = filter(lambda s: isinstance(s, AudioFile), songs)
        menu = SongsMenu(
            library, songs, playlists=False, remove=False, parent=self)
        menu.preseparate()

        def _de_duplicate(model, itr):
            playlist = model[itr][0]
            unique = set()
            dupes = list()
            for s in songs:
                if s in unique: dupes.append(s)
                else: unique.add(s)
            if len(dupes) < 1:
                print_d("No duplicates in this playlist")
                return
            dialog = ConfirmRemoveDuplicatesDialog(self, playlist, len(dupes))
            if dialog.run() == gtk.RESPONSE_YES:
                playlist.remove_songs(dupes, library, True)
                Playlists.changed(playlist)
                self.activate()

        de_dupe = gtk.MenuItem(_("Remove Duplicates"))
        de_dupe.connect_object('activate', _de_duplicate, model, itr)
        de_dupe.set_sensitive(not model[itr][0].has_duplicates())
        menu.prepend(de_dupe)

        def _shuffle(model, itr):
            playlist = model[itr][0]
            playlist.shuffle()
            self.activate()

        shuffle = gtk.MenuItem(_("_Shuffle"))
        shuffle .connect_object('activate', _shuffle, model, itr)
        shuffle.set_sensitive(bool(len(model[itr][0])))
        menu.prepend(shuffle)
        menu.prepend(gtk.SeparatorMenuItem())

        def _remove(model, itr):
            playlist = model[itr][0]
            dialog = ConfirmRemovePlaylistDialog(self, playlist)
            if dialog.run() == gtk.RESPONSE_YES:
                playlist.delete()
                model.get_model().remove(
                    model.convert_iter_to_child_iter(None, itr))

        rem = gtk.ImageMenuItem(gtk.STOCK_DELETE)
        rem.connect_object('activate', _remove, model, itr)
        menu.prepend(rem)

        def _rename(path):
            self.__render.set_property('editable', True)
            view.set_cursor(path, view.get_columns()[0], start_editing=True)

        ren = qltk.MenuItem(_("_Rename"), gtk.STOCK_EDIT)
        keyval, mod = gtk.accelerator_parse("F2")
        ren.add_accelerator(
            'activate', self.accelerators, keyval, mod, gtk.ACCEL_VISIBLE)
        ren.connect_object('activate', _rename, model.get_path(itr))
        menu.prepend(ren)

        menu.show_all()
        return view.popup_menu(menu, 0, gtk.get_current_event_time())
开发者ID:silkecho,项目名称:glowing-silk,代码行数:70,代码来源:playlists.py


注:本文中的quodlibet.qltk.songsmenu.SongsMenu.prepend方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。