Copy escaped track path

This commit is contained in:
Keith Edmunds 2022-08-13 11:06:20 +01:00
parent 568dc1ef68
commit 5ba70c9c6f

View File

@ -15,7 +15,7 @@ from PyQt5.QtGui import (
) )
from PyQt5.QtWidgets import ( from PyQt5.QtWidgets import (
QAbstractItemView, QAbstractItemView,
# QApplication, QApplication,
# QInputDialog, # QInputDialog,
# QLineEdit, # QLineEdit,
QMainWindow, QMainWindow,
@ -266,6 +266,9 @@ class PlaylistTab(QTableWidget):
act_info.triggered.connect( act_info.triggered.connect(
lambda: self._info_row(track_id) lambda: self._info_row(track_id)
) )
act_copypath = self.menu.addAction("Copy track path")
act_copypath.triggered.connect(
lambda: self._copy_path(row_number))
self.menu.addSeparator() self.menu.addSeparator()
@ -1140,24 +1143,27 @@ class PlaylistTab(QTableWidget):
assert self.menu assert self.menu
self.menu.exec_(self.mapToGlobal(pos)) self.menu.exec_(self.mapToGlobal(pos))
#
# def _copy_path(self, row: int) -> None: def _copy_path(self, row: int) -> None:
# """ """
# If passed row is track row, copy the track path to the clipboard. If passed row has a track, copy the track path, single-quoted,
# Otherwise, return None. to the clipboard. Otherwise, return None.
# """ """
#
# log.debug(f"_copy_path({row})") track_id = self._get_row_track_id(row)
# if track_id is None:
# if row in self._get_notes_rows(): return
# return None
# with Session() as session:
# with Session() as session: track = session.get(Tracks, track_id)
# track: Optional[Tracks] = self._get_row_track_object(row, session) if track:
# if track: # Escape single quotes and spaces in name
# cb = QApplication.clipboard() path = track.path
# cb.clear(mode=cb.Clipboard) pathq = path.replace("'", "\\'")
# cb.setText(track.path, mode=cb.Clipboard) pathqs = pathq.replace(" ", "\\ ")
cb = QApplication.clipboard()
cb.clear(mode=cb.Clipboard)
cb.setText(pathqs, mode=cb.Clipboard)
# #
# def _cell_changed(self, row: int, column: int) -> None: # def _cell_changed(self, row: int, column: int) -> None:
# """Called when cell content has changed""" # """Called when cell content has changed"""