Revamp menus

This commit is contained in:
Keith Edmunds 2022-03-02 21:13:41 +00:00
parent f22f2780a3
commit 4a83e9af86
3 changed files with 57 additions and 49 deletions

View File

@ -70,22 +70,22 @@ class Window(QMainWindow, Ui_MainWindow):
self.check_audacity()
self.timer.start(Config.TIMER_MS)
def add_file(self) -> None:
# TODO: V2 enahancement to import tracks
dlg = QFileDialog()
dlg.setFileMode(QFileDialog.ExistingFiles)
dlg.setViewMode(QFileDialog.Detail)
dlg.setDirectory(Config.ROOT)
dlg.setNameFilter("Music files (*.flac *.mp3)")
# def add_file(self) -> None:
# # TODO: V2 enahancement to import tracks
# dlg = QFileDialog()
# dlg.setFileMode(QFileDialog.ExistingFiles)
# dlg.setViewMode(QFileDialog.Detail)
# dlg.setDirectory(Config.ROOT)
# dlg.setNameFilter("Music files (*.flac *.mp3)")
if dlg.exec_():
with Session() as session:
for fname in dlg.selectedFiles():
track = create_track_from_file(session, fname)
# Add to playlist on screen
# If we don't specify "repaint=False", playlist will
# also be saved to database
self.visible_playlist_tab().insert_track(session, track)
# if dlg.exec_():
# with Session() as session:
# for fname in dlg.selectedFiles():
# track = create_track_from_file(session, fname)
# # Add to playlist on screen
# # If we don't specify "repaint=False", playlist will
# # also be saved to database
# self.visible_playlist_tab().insert_track(session, track)
def set_main_window_size(self) -> None:
"""Set size of window from database"""
@ -133,7 +133,8 @@ class Window(QMainWindow, Ui_MainWindow):
DEBUG("closeEvent() accepted")
with Session() as session:
record = Settings.get_int_settings(session, "mainwindow_height")
record = Settings.get_int_settings(
session, "mainwindow_height")
if record.f_int != self.height():
record.update(session, {'f_int': self.height()})
@ -159,12 +160,13 @@ class Window(QMainWindow, Ui_MainWindow):
event.accept()
def connect_signals_slots(self) -> None:
self.actionAdd_file.triggered.connect(self.add_file)
self.actionAdd_note.triggered.connect(self.create_note)
self.action_Clear_selection.triggered.connect(self.clear_selection)
self.actionClosePlaylist.triggered.connect(self.close_playlist_tab)
self.actionEnable_controls.triggered.connect(
self.enable_play_next_controls)
self.actionExport_playlist.triggered.connect(self.export_playlist_tab)
self.actionFade.triggered.connect(lambda: self.stop_playing(fade=True))
self.actionFade.triggered.connect(self.fade)
self.actionMoveSelected.triggered.connect(self.move_selected)
self.actionNewPlaylist.triggered.connect(self.create_playlist)
self.actionOpenPlaylist.triggered.connect(self.open_playlist)
@ -180,10 +182,9 @@ class Window(QMainWindow, Ui_MainWindow):
lambda: self.tabPlaylist.currentWidget().set_selected_as_next())
self.actionSkip_next.triggered.connect(self.play_next)
self.actionStop.triggered.connect(self.stop)
self.btnAddFile.clicked.connect(self.add_file)
self.btnAddNote.clicked.connect(self.create_note)
self.btnDatabase.clicked.connect(self.search_database)
self.btnFade.clicked.connect(lambda: self.stop_playing(fade=True))
self.btnFade.clicked.connect(self.fade)
self.btnPlay.clicked.connect(self.play_next)
self.btnSetNext.clicked.connect(self.this_is_the_next_track)
self.btnSongInfo.clicked.connect(self.song_info_search)
@ -346,12 +347,7 @@ class Window(QMainWindow, Ui_MainWindow):
DEBUG("musicmuster:fade()", True)
if not self.current_track:
return
self.previous_track_position = self.music.get_position()
self.music.fade()
self.end_of_track_actions()
self.stop_playing(fade=True)
def insert_note(self):
"Add non-track row to playlist"

View File

@ -337,6 +337,9 @@ border: 1px solid rgb(85, 87, 83);</string>
</item>
<item>
<widget class="QPushButton" name="btnAddFile">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Add file</string>
</property>
@ -769,22 +772,22 @@ border: 1px solid rgb(85, 87, 83);</string>
<addaction name="actionDeletePlaylist"/>
<addaction name="separator"/>
<addaction name="actionSearch_database"/>
<addaction name="actionAdd_file"/>
<addaction name="actionAdd_note"/>
<addaction name="action_Clear_selection"/>
<addaction name="separator"/>
<addaction name="actionSelect_previous_track"/>
<addaction name="actionSelect_next_track"/>
<addaction name="actionSetNext"/>
<addaction name="separator"/>
<addaction name="actionSelect_unplayed_tracks"/>
<addaction name="actionSelect_played_tracks"/>
<addaction name="actionMoveSelected"/>
<addaction name="separator"/>
<addaction name="actionExport_playlist"/>
<addaction name="separator"/>
<addaction name="actionSelect_next_track"/>
<addaction name="actionSelect_previous_track"/>
</widget>
<widget class="QMenu" name="menu_Tracks">
<widget class="QMenu" name="menu_Music">
<property name="title">
<string>&amp;Tracks</string>
<string>&amp;Music</string>
</property>
<addaction name="actionPlay_next"/>
<addaction name="actionSkip_next"/>
@ -792,11 +795,11 @@ border: 1px solid rgb(85, 87, 83);</string>
<addaction name="actionStop"/>
<addaction name="action_Resume_previous"/>
<addaction name="separator"/>
<addaction name="actionSetNext"/>
<addaction name="actionEnable_controls"/>
</widget>
<addaction name="menuFile"/>
<addaction name="menuPlaylist"/>
<addaction name="menu_Tracks"/>
<addaction name="menu_Music"/>
</widget>
<widget class="QStatusBar" name="statusbar">
<property name="enabled">
@ -1003,6 +1006,11 @@ border: 1px solid rgb(85, 87, 83);</string>
<string>Ctrl+T</string>
</property>
</action>
<action name="actionEnable_controls">
<property name="text">
<string>Enable controls</string>
</property>
</action>
</widget>
<resources>
<include location="icons.qrc"/>

View File

@ -162,6 +162,7 @@ class Ui_MainWindow(object):
self.btnDatabase.setObjectName("btnDatabase")
self.horizontalLayout.addWidget(self.btnDatabase)
self.btnAddFile = QtWidgets.QPushButton(self.frame_5)
self.btnAddFile.setEnabled(False)
icon3 = QtGui.QIcon()
icon3.addPixmap(QtGui.QPixmap(":/icons/open_file"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.btnAddFile.setIcon(icon3)
@ -354,8 +355,8 @@ class Ui_MainWindow(object):
self.menuFile.setObjectName("menuFile")
self.menuPlaylist = QtWidgets.QMenu(self.menubar)
self.menuPlaylist.setObjectName("menuPlaylist")
self.menu_Tracks = QtWidgets.QMenu(self.menubar)
self.menu_Tracks.setObjectName("menu_Tracks")
self.menu_Music = QtWidgets.QMenu(self.menubar)
self.menu_Music.setObjectName("menu_Music")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setEnabled(True)
@ -438,6 +439,8 @@ class Ui_MainWindow(object):
self.actionSelect_unplayed_tracks.setObjectName("actionSelect_unplayed_tracks")
self.actionAdd_note = QtWidgets.QAction(MainWindow)
self.actionAdd_note.setObjectName("actionAdd_note")
self.actionEnable_controls = QtWidgets.QAction(MainWindow)
self.actionEnable_controls.setObjectName("actionEnable_controls")
self.menuFile.addAction(self.actionE_xit)
self.menuPlaylist.addAction(self.actionNewPlaylist)
self.menuPlaylist.addAction(self.actionOpenPlaylist)
@ -446,28 +449,28 @@ class Ui_MainWindow(object):
self.menuPlaylist.addAction(self.actionDeletePlaylist)
self.menuPlaylist.addSeparator()
self.menuPlaylist.addAction(self.actionSearch_database)
self.menuPlaylist.addAction(self.actionAdd_file)
self.menuPlaylist.addAction(self.actionAdd_note)
self.menuPlaylist.addAction(self.action_Clear_selection)
self.menuPlaylist.addSeparator()
self.menuPlaylist.addAction(self.actionSelect_previous_track)
self.menuPlaylist.addAction(self.actionSelect_next_track)
self.menuPlaylist.addAction(self.actionSetNext)
self.menuPlaylist.addSeparator()
self.menuPlaylist.addAction(self.actionSelect_unplayed_tracks)
self.menuPlaylist.addAction(self.actionSelect_played_tracks)
self.menuPlaylist.addAction(self.actionMoveSelected)
self.menuPlaylist.addSeparator()
self.menuPlaylist.addAction(self.actionExport_playlist)
self.menuPlaylist.addSeparator()
self.menuPlaylist.addAction(self.actionSelect_next_track)
self.menuPlaylist.addAction(self.actionSelect_previous_track)
self.menu_Tracks.addAction(self.actionPlay_next)
self.menu_Tracks.addAction(self.actionSkip_next)
self.menu_Tracks.addAction(self.actionFade)
self.menu_Tracks.addAction(self.actionStop)
self.menu_Tracks.addAction(self.action_Resume_previous)
self.menu_Tracks.addSeparator()
self.menu_Tracks.addAction(self.actionSetNext)
self.menu_Music.addAction(self.actionPlay_next)
self.menu_Music.addAction(self.actionSkip_next)
self.menu_Music.addAction(self.actionFade)
self.menu_Music.addAction(self.actionStop)
self.menu_Music.addAction(self.action_Resume_previous)
self.menu_Music.addSeparator()
self.menu_Music.addAction(self.actionEnable_controls)
self.menubar.addAction(self.menuFile.menuAction())
self.menubar.addAction(self.menuPlaylist.menuAction())
self.menubar.addAction(self.menu_Tracks.menuAction())
self.menubar.addAction(self.menu_Music.menuAction())
self.retranslateUi(MainWindow)
self.tabPlaylist.setCurrentIndex(-1)
@ -505,7 +508,7 @@ class Ui_MainWindow(object):
self.label_end_timer.setText(_translate("MainWindow", "00:00"))
self.menuFile.setTitle(_translate("MainWindow", "Fi&le"))
self.menuPlaylist.setTitle(_translate("MainWindow", "Pla&ylist"))
self.menu_Tracks.setTitle(_translate("MainWindow", "&Tracks"))
self.menu_Music.setTitle(_translate("MainWindow", "&Music"))
self.actionPlay_next.setText(_translate("MainWindow", "&Play next"))
self.actionPlay_next.setShortcut(_translate("MainWindow", "Return"))
self.actionSkip_next.setText(_translate("MainWindow", "Skip to &next"))
@ -542,4 +545,5 @@ class Ui_MainWindow(object):
self.actionSelect_unplayed_tracks.setText(_translate("MainWindow", "Select unplayed tracks"))
self.actionAdd_note.setText(_translate("MainWindow", "Add note..."))
self.actionAdd_note.setShortcut(_translate("MainWindow", "Ctrl+T"))
self.actionEnable_controls.setText(_translate("MainWindow", "Enable controls"))
import icons_rc