Sayonara Player
GUI_DirectoryView.h
1#ifndef GUI_DIRECTORYVIEW_H
2#define GUI_DIRECTORYVIEW_H
3
4#include "Gui/Utils/Widgets/Widget.h"
5#include "Utils/Pimpl.h"
6
8
9namespace Library { class Manager; }
10
11class QItemSelection;
12
14 public Gui::Widget
15{
16 Q_OBJECT
18 UI_CLASS(GUI_DirectoryView)
19
20 public:
21 explicit GUI_DirectoryView(QWidget* parent=nullptr);
22 ~GUI_DirectoryView() override;
23
24 void init(Library::Manager* libraryManager, LibraryId libraryId);
25 void setFilterTerm(const QString& filter);
26
27 private:
28 void initUi();
29
30 private slots:
31 void load();
32
33 void importRequested(LibraryId id, const QStringList& paths, const QString& targetDirectory);
34 void importDialogRequested(const QString& targetDirectory);
35
36 void newDirectoryClicked();
37 void viewInFileManagerClicked();
38
39 void dirEnterPressed();
40 void dirOpened(QModelIndex idx);
41 void dirPressed(QModelIndex idx);
42 void dirClicked(QModelIndex idx);
43 void dirAppendClicked();
44 void dirPlayClicked();
45 void dirPlayNextClicked();
46 void dirPlayInNewTabClicked();
47 void dirDeleteClicked();
48 void dirCopyRequested(const QStringList& files, const QString& target);
49 void dirMoveRequested(const QStringList& files, const QString& target);
50 void dirRenameRequested(const QString& oldName, const QString& newName);
51 void dirCopyToLibRequested(LibraryId libraryId);
52 void dirMoveToLibRequested(LibraryId libraryId);
53 void dirSelectionChanged(const QItemSelection& selected, const QItemSelection& deselected);
54
55 void fileDoubleClicked(QModelIndex idx);
56 void fileEnterPressed();
57 void filePressed(QModelIndex idx);
58 void fileAppendClicked();
59 void filePlayClicked();
60 void filePlayNextClicked();
61 void filePlayNewTabClicked();
62 void fileDeleteClicked();
63 void fileRenameRequested(const QString& oldName, const QString& newName);
64 void fileRenameByExpressionRequested(const QString& oldName, const QString& expression);
65 void fileCopyToLibraryRequested(LibraryId libraryId);
66 void fileMoveToLibraryRequested(LibraryId libraryId);
67 void fileSelectionChanged(const QItemSelection& selected, const QItemSelection& deselected);
68
69 void fileOperationStarted();
70 void fileOperationFinished();
71
72 void splitterMoved(int pos, int index);
73 void createDirectoryClicked();
74
75 protected:
76 void languageChanged() override;
77 void skinChanged() override;
78 void showEvent(QShowEvent* event) override;
79};
80
81#endif // GUI_DIRECTORYVIEW_H
Definition: GUI_DirectoryView.h:15
Widget with Settings connection. Also contains triggers for language_changed() and skin_changed() \nT...
Definition: Widget.h:39
Definition: LibraryManager.h:40
An interface class needed when implementing a library plugin.
Definition: LocalLibraryWatcher.h:31