(self, position)
| 731 | |
| 732 | @needsClient |
| 733 | def openPlaylistMenu(self, position): |
| 734 | indexes = self.playlist.selectedIndexes() |
| 735 | if len(indexes) > 0: |
| 736 | item = self.playlist.selectedIndexes()[0] |
| 737 | else: |
| 738 | item = None |
| 739 | menu = QtWidgets.QMenu() |
| 740 | |
| 741 | if item: |
| 742 | firstFile = item.sibling(item.row(), 0).data() |
| 743 | pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None |
| 744 | if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]: |
| 745 | if isURL(firstFile): |
| 746 | menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True)) |
| 747 | elif pathFound: |
| 748 | menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True)) |
| 749 | if pathFound: |
| 750 | menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"), |
| 751 | getMessage('open-containing-folder'), |
| 752 | lambda: utils.open_system_file_browser(pathFound)) |
| 753 | if self._syncplayClient.isUntrustedTrustableURI(firstFile): |
| 754 | domain = utils.getDomainFromURL(firstFile) |
| 755 | if domain: |
| 756 | menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain)) |
| 757 | menu.addAction(QtGui.QPixmap(resourcespath + "delete.png"), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems()) |
| 758 | menu.addSeparator() |
| 759 | menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist()) |
| 760 | menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist()) |
| 761 | menu.addAction(QtGui.QPixmap(resourcespath + "arrow_undo.png"), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange()) |
| 762 | menu.addAction(QtGui.QPixmap(resourcespath + "film_edit.png"), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog()) |
| 763 | menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog()) |
| 764 | menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog()) |
| 765 | menu.addSeparator() |
| 766 | menu.addAction(getMessage("loadplaylistfromfile-menu-label"),lambda: self.OpenLoadPlaylistFromFileDialog()) # TODO: Add icon |
| 767 | menu.addAction("Load and shuffle playlist from file",lambda: self.OpenLoadPlaylistFromFileDialog(shuffle=True)) # TODO: Add icon and messages_en |
| 768 | menu.addAction(getMessage("saveplaylisttofile-menu-label"),lambda: self.OpenSavePlaylistToFileDialog()) # TODO: Add icon |
| 769 | menu.addSeparator() |
| 770 | menu.addAction(QtGui.QPixmap(resourcespath + "film_folder_edit.png"), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog()) |
| 771 | menu.addAction(QtGui.QPixmap(resourcespath + "shield_edit.png"), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog()) |
| 772 | menu.exec_(self.playlist.viewport().mapToGlobal(position)) |
| 773 | |
| 774 | def openRoomMenu(self, position): |
| 775 | # TODO: Deselect items after right click |
nothing calls this directly
no test coverage detected