|
|
@@ -4,7 +4,7 @@
|
|
|
|
|
|
@author:[author], [year]
|
|
|
"""
|
|
|
-
|
|
|
+from PyQt5 import QtWidgets
|
|
|
from path import Path
|
|
|
|
|
|
from PyQt5.QtGui import QIcon
|
|
|
@@ -58,6 +58,8 @@ class MainWindow(QMainWindow):
|
|
|
item.index = i
|
|
|
self.ui.menu.addItem(item)
|
|
|
|
|
|
+ QtWidgets.qApp.focusChanged.connect(self.focus_changed)
|
|
|
+
|
|
|
# Menu item clicked
|
|
|
self.ui.menu.itemClicked.connect(self.menu_item_selected)
|
|
|
|
|
|
@@ -83,7 +85,6 @@ class MainWindow(QMainWindow):
|
|
|
self.ui.explorerTrackTagsTable.tagUnchecked.connect(self.removeTrackTags)
|
|
|
|
|
|
self.ui.explorerTrackMetaStack.setCurrentIndex(0)
|
|
|
- self.ui.explorerTrackNotepad.textChanged.connect(self.explorerTrackNotesChanged)
|
|
|
self.ui.explorerTrackPlay.clicked.connect(self.explorerPlaySelected)
|
|
|
|
|
|
self.ui.btnSelectPlaylist.clicked.connect(self.selectPlaylist)
|
|
|
@@ -122,6 +123,10 @@ class MainWindow(QMainWindow):
|
|
|
playlist = playlist_repo.get_by_id(playlist_id)
|
|
|
self.loadPlaylist(playlist)
|
|
|
|
|
|
+ def focus_changed(self, old, new):
|
|
|
+ if old is self.ui.explorerTrackNotepad:
|
|
|
+ self.saveTrackNotes()
|
|
|
+
|
|
|
def menu_item_selected(self, e):
|
|
|
self.ui.stack.setCurrentIndex(e.index)
|
|
|
|
|
|
@@ -152,9 +157,7 @@ class MainWindow(QMainWindow):
|
|
|
# track infos
|
|
|
self.update_meta()
|
|
|
|
|
|
- self.ui.explorerTrackNotepad.textChanged.disconnect(self.explorerTrackNotesChanged)
|
|
|
self.ui.explorerTrackNotepad.setHtml(track.note)
|
|
|
- self.ui.explorerTrackNotepad.textChanged.connect(self.explorerTrackNotesChanged)
|
|
|
|
|
|
self.ui.explorerTrackTagsTable.populate(track)
|
|
|
|
|
|
@@ -350,13 +353,14 @@ class MainWindow(QMainWindow):
|
|
|
track_tag_repo.query().filter(TrackTag.track_id == track_id).filter(TrackTag.tag_id == tag_id).delete()
|
|
|
track_tag_repo.commit()
|
|
|
|
|
|
- def explorerTrackNotesChanged(self):
|
|
|
+ def saveTrackNotes(self):
|
|
|
if not self.selected_track:
|
|
|
return
|
|
|
note = self.ui.explorerTrackNotepad.toHtml()
|
|
|
track_repo = TrackRepository()
|
|
|
self.selected_track.note = note
|
|
|
track_repo.commit()
|
|
|
+ print('track notes saved')
|
|
|
|
|
|
def explorerSearchChanged(self):
|
|
|
searchText = self.ui.explorerLineSearch.text()
|