Playlist editor dialog with tree nodes and ordered shader entries. More...
#include <playlist.hpp>
Public Slots | |
| void | addNode () |
| void | addShader () |
| void | clearAll () |
| void | concatPlaylist () |
| void | filterSearchChanged (const QString &text) |
| void | generateRandomPlaylist () |
| void | loadPlaylist () |
| void | moveDown () |
| void | moveUp () |
| void | removeNode () |
| void | removeShader () |
| void | renameNode () |
| void | savePlaylist () |
| void | shufflePlaylist () |
Public Member Functions | |
| int | getAutopilotFrames () const |
| Return frames-per-shader threshold for autopilot mode (minimum 4). | |
| QString | getPlaylistFile () const |
| Return current playlist file path. | |
| QList< QPair< QString, QStringList > > | getPlaylistTree () const |
| Return tree representation as node-name and shader-list pairs. | |
| QStringList | getSelectedShaderNames () const |
| Return flattened selection of shaders in current playlist. | |
| bool | isAutopilotRandom () const |
| Return true when random autopilot timeout mode is enabled. | |
| bool | isPlaylistEnabled () const |
| Return whether playlist mode is enabled. | |
| PlaylistDialog (const QStringList &shaderNames, acmx2::Backend backend, QWidget *parent=nullptr) | |
| void | setAutopilotFrames (int frames) |
| Set frames-per-shader threshold for autopilot mode. | |
| void | setAutopilotRandom (bool enabled) |
| Enable or disable random autopilot timeout mode. | |
| void | setEnabled (bool enabled) |
| void | setPlaylistFile (const QString &path) |
| void | setPlaylistTree (const QList< QPair< QString, QStringList > > &tree) |
| void | setSelectedShaderNames (const QStringList &names) |
| void | updateShaderList (const QStringList &shaderNames) |
Private Member Functions | |
| QTreeWidgetItem * | currentNodeItem () const |
| void | loadShaders (const QStringList &shaderNames) |
| QString | resolvePlaylistShaderName (const QString &name) const |
| QString | runtimePlaylistShaderName (const QString &name) const |
| void | setupUI () |
Private Attributes | |
| QPushButton * | addButton |
| QPushButton * | addNodeButton |
| QSpinBox * | autopilotFramesSpinBox = nullptr |
| QCheckBox * | autopilotRandomCheckBox = nullptr |
| acmx2::Backend | backend |
| QPushButton * | cancelButton |
| QPushButton * | clearButton |
| QPushButton * | concatButton |
| QPushButton * | downButton |
| QCheckBox * | enableCheckBox |
| QPushButton * | generateRandomButton = nullptr |
| QPushButton * | loadButton |
| QPushButton * | okButton |
| QString | playlistFilePath |
| QTreeWidget * | playlistTree |
| QSortFilterProxyModel * | proxyModel |
| QPushButton * | removeButton |
| QPushButton * | removeNodeButton |
| QPushButton * | renameNodeButton |
| QPushButton * | saveButton |
| QLineEdit * | searchLineEdit |
| QMap< QString, QString > | shaderAliasToName |
| QComboBox * | shaderComboBox |
| QStandardItemModel * | shaderModel |
| QStringList | shaderNamesList |
| QMap< QString, int > | shaderNameToIndex |
| QPushButton * | shuffleButton |
| QPushButton * | upButton |
Playlist editor dialog with tree nodes and ordered shader entries.
Definition at line 29 of file ACMX2/interface/playlist.hpp.
|
explicit |
Definition at line 18 of file ACMX2/interface/playlist.cpp.
References backend, loadShaders(), and setupUI().
Referenced by MainWindow::menuPlaylistSettings().
|
slot |
Definition at line 268 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by setupUI().
|
slot |
Definition at line 311 of file ACMX2/interface/playlist.cpp.
References currentNodeItem(), playlistTree, shaderComboBox, and shaderNameToIndex.
Referenced by setupUI().
|
slot |
Definition at line 395 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by setupUI().
|
slot |
Definition at line 544 of file ACMX2/interface/playlist.cpp.
References playlistTree, resolvePlaylistShaderName(), and shaderNameToIndex.
Referenced by setupUI().
|
private |
Definition at line 259 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by addShader(), removeNode(), and renameNode().
|
slot |
Definition at line 252 of file ACMX2/interface/playlist.cpp.
References proxyModel, and shaderComboBox.
Referenced by setupUI().
|
slot |
Definition at line 428 of file ACMX2/interface/playlist.cpp.
References acmx2::applyCustomStyleIfEnabled(), playlistFilePath, playlistTree, shaderNamesList, and shaderNameToIndex.
Referenced by setupUI().
| int PlaylistDialog::getAutopilotFrames | ( | ) | const |
Return frames-per-shader threshold for autopilot mode (minimum 4).
Definition at line 739 of file ACMX2/interface/playlist.cpp.
References autopilotFramesSpinBox.
Referenced by MainWindow::menuPlaylistSettings().
| QString PlaylistDialog::getPlaylistFile | ( | ) | const |
Return current playlist file path.
Definition at line 737 of file ACMX2/interface/playlist.cpp.
References playlistFilePath.
Referenced by MainWindow::menuPlaylistSettings().
| QList< QPair< QString, QStringList > > PlaylistDialog::getPlaylistTree | ( | ) | const |
Return tree representation as node-name and shader-list pairs.
Definition at line 724 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by MainWindow::menuPlaylistSettings().
| QStringList PlaylistDialog::getSelectedShaderNames | ( | ) | const |
Return flattened selection of shaders in current playlist.
Definition at line 713 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by loadShaders(), and MainWindow::menuPlaylistSettings().
| bool PlaylistDialog::isAutopilotRandom | ( | ) | const |
Return true when random autopilot timeout mode is enabled.
Definition at line 741 of file ACMX2/interface/playlist.cpp.
References autopilotRandomCheckBox.
Referenced by MainWindow::menuPlaylistSettings().
| bool PlaylistDialog::isPlaylistEnabled | ( | ) | const |
Return whether playlist mode is enabled.
Definition at line 703 of file ACMX2/interface/playlist.cpp.
References enableCheckBox, and playlistTree.
Referenced by MainWindow::menuPlaylistSettings().
|
slot |
Definition at line 644 of file ACMX2/interface/playlist.cpp.
References playlistFilePath, playlistTree, resolvePlaylistShaderName(), and shaderNameToIndex.
Referenced by setupUI().
|
private |
Definition at line 209 of file ACMX2/interface/playlist.cpp.
References acmx2::Acmxvk, backend, getSelectedShaderNames(), setSelectedShaderNames(), shaderAliasToName, shaderModel, shaderNamesList, and shaderNameToIndex.
Referenced by PlaylistDialog(), and updateShaderList().
|
slot |
Definition at line 372 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by setupUI().
|
slot |
Definition at line 349 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by setupUI().
|
slot |
Definition at line 295 of file ACMX2/interface/playlist.cpp.
References currentNodeItem().
Referenced by removeShader(), and setupUI().
|
slot |
Definition at line 338 of file ACMX2/interface/playlist.cpp.
References playlistTree, and removeNode().
Referenced by setupUI().
|
slot |
Definition at line 281 of file ACMX2/interface/playlist.cpp.
References currentNodeItem().
Referenced by setupUI().
|
private |
Definition at line 240 of file ACMX2/interface/playlist.cpp.
References shaderAliasToName.
Referenced by concatPlaylist(), loadPlaylist(), setPlaylistFile(), setPlaylistTree(), and setSelectedShaderNames().
|
private |
Definition at line 245 of file ACMX2/interface/playlist.cpp.
References acmx2::Acmxvk, and backend.
Referenced by savePlaylist().
|
slot |
Definition at line 607 of file ACMX2/interface/playlist.cpp.
References playlistFilePath, playlistTree, and runtimePlaylistShaderName().
Referenced by setupUI().
| void PlaylistDialog::setAutopilotFrames | ( | int | frames | ) |
Set frames-per-shader threshold for autopilot mode.
Definition at line 743 of file ACMX2/interface/playlist.cpp.
References autopilotFramesSpinBox.
| void PlaylistDialog::setAutopilotRandom | ( | bool | enabled | ) |
Enable or disable random autopilot timeout mode.
Definition at line 751 of file ACMX2/interface/playlist.cpp.
References autopilotRandomCheckBox.
| void PlaylistDialog::setEnabled | ( | bool | enabled | ) |
Definition at line 757 of file ACMX2/interface/playlist.cpp.
References enableCheckBox.
| void PlaylistDialog::setPlaylistFile | ( | const QString & | path | ) |
Definition at line 797 of file ACMX2/interface/playlist.cpp.
References playlistFilePath, playlistTree, resolvePlaylistShaderName(), and shaderNameToIndex.
| void PlaylistDialog::setPlaylistTree | ( | const QList< QPair< QString, QStringList > > & | tree | ) |
Definition at line 779 of file ACMX2/interface/playlist.cpp.
References playlistTree, resolvePlaylistShaderName(), and shaderNameToIndex.
| void PlaylistDialog::setSelectedShaderNames | ( | const QStringList & | names | ) |
Definition at line 759 of file ACMX2/interface/playlist.cpp.
References playlistTree, resolvePlaylistShaderName(), and shaderNameToIndex.
Referenced by loadShaders().
|
private |
Definition at line 25 of file ACMX2/interface/playlist.cpp.
References acmx2::Acmxvk, addButton, addNode(), addNodeButton, addShader(), acmx2::applyCustomStyleIfEnabled(), autopilotFramesSpinBox, autopilotRandomCheckBox, backend, cancelButton, clearAll(), clearButton, concatButton, concatPlaylist(), downButton, enableCheckBox, filterSearchChanged(), generateRandomButton, generateRandomPlaylist(), loadButton, loadPlaylist(), moveDown(), moveUp(), okButton, playlistTree, proxyModel, removeButton, removeNode(), removeNodeButton, removeShader(), renameNode(), renameNodeButton, saveButton, savePlaylist(), searchLineEdit, shaderComboBox, shaderModel, shuffleButton, shufflePlaylist(), and upButton.
Referenced by PlaylistDialog().
|
slot |
Definition at line 397 of file ACMX2/interface/playlist.cpp.
References playlistTree.
Referenced by setupUI().
| void PlaylistDialog::updateShaderList | ( | const QStringList & | shaderNames | ) |
Definition at line 842 of file ACMX2/interface/playlist.cpp.
References loadShaders().
|
private |
Definition at line 87 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 84 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 100 of file ACMX2/interface/playlist.hpp.
Referenced by getAutopilotFrames(), setAutopilotFrames(), and setupUI().
|
private |
Definition at line 101 of file ACMX2/interface/playlist.hpp.
Referenced by isAutopilotRandom(), setAutopilotRandom(), and setupUI().
|
private |
Definition at line 110 of file ACMX2/interface/playlist.hpp.
Referenced by loadShaders(), PlaylistDialog(), runtimePlaylistShaderName(), and setupUI().
|
private |
Definition at line 98 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 91 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 94 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 90 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 80 of file ACMX2/interface/playlist.hpp.
Referenced by isPlaylistEnabled(), setEnabled(), and setupUI().
|
private |
Definition at line 93 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 96 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 97 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 109 of file ACMX2/interface/playlist.hpp.
Referenced by generateRandomPlaylist(), getPlaylistFile(), loadPlaylist(), savePlaylist(), and setPlaylistFile().
|
private |
Definition at line 83 of file ACMX2/interface/playlist.hpp.
Referenced by addNode(), addShader(), clearAll(), concatPlaylist(), currentNodeItem(), generateRandomPlaylist(), getPlaylistTree(), getSelectedShaderNames(), isPlaylistEnabled(), loadPlaylist(), moveDown(), moveUp(), removeShader(), savePlaylist(), setPlaylistFile(), setPlaylistTree(), setSelectedShaderNames(), setupUI(), and shufflePlaylist().
|
private |
Definition at line 104 of file ACMX2/interface/playlist.hpp.
Referenced by filterSearchChanged(), and setupUI().
|
private |
Definition at line 88 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 86 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 85 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 95 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 82 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 107 of file ACMX2/interface/playlist.hpp.
Referenced by loadShaders(), and resolvePlaylistShaderName().
|
private |
Definition at line 81 of file ACMX2/interface/playlist.hpp.
Referenced by addShader(), filterSearchChanged(), and setupUI().
|
private |
Definition at line 103 of file ACMX2/interface/playlist.hpp.
Referenced by loadShaders(), and setupUI().
|
private |
Definition at line 108 of file ACMX2/interface/playlist.hpp.
Referenced by generateRandomPlaylist(), and loadShaders().
|
private |
Definition at line 106 of file ACMX2/interface/playlist.hpp.
Referenced by addShader(), concatPlaylist(), generateRandomPlaylist(), loadPlaylist(), loadShaders(), setPlaylistFile(), setPlaylistTree(), and setSelectedShaderNames().
|
private |
Definition at line 92 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().
|
private |
Definition at line 89 of file ACMX2/interface/playlist.hpp.
Referenced by setupUI().