-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Expand file tree
/
Copy pathdlganalysis.h
More file actions
67 lines (58 loc) · 2.14 KB
/
Copy pathdlganalysis.h
File metadata and controls
67 lines (58 loc) · 2.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#pragma once
#include <QButtonGroup>
#include "analyzer/analyzerprogress.h"
#include "analyzer/analyzerscheduledtrack.h"
#include "library/analysis/analysislibrarytablemodel.h"
#include "library/analysis/ui_dlganalysis.h"
#include "library/libraryview.h"
#include "preferences/usersettings.h"
class Library;
class WAnalysisLibraryTableView;
class WLibrary;
class QItemSelection;
class DlgAnalysis : public QWidget, public Ui::DlgAnalysis, public virtual LibraryView {
Q_OBJECT
public:
DlgAnalysis(WLibrary* parent,
UserSettingsPointer pConfig,
Library* pLibrary);
~DlgAnalysis() override = default;
void onSearch(const QString& text) override;
void onShow() override;
bool hasFocus() const override;
void setFocus() override;
inline const QString currentSearch() {
return m_pAnalysisLibraryTableModel->currentSearch();
}
void saveCurrentViewState() override;
bool restoreCurrentViewState() override;
bool isAnalysisActive() {
return m_bAnalysisActive;
};
public slots:
void tableSelectionChanged(const QItemSelection& selected,
const QItemSelection& deselected);
void selectAll();
void analyze();
void slotAnalysisActive(bool bActive);
void onTrackAnalysisSchedulerProgress(AnalyzerProgress analyzerProgress, int finishedCount, int totalCount);
void onTrackAnalysisSchedulerFinished();
void slotShowRecentSongs();
void slotRecentDaysChanged(int days);
void slotShowAllSongs();
void installEventFilter(QObject* pFilter);
signals:
void loadTrack(TrackPointer pTrack);
void loadTrackToPlayer(TrackPointer pTrack, const QString& player);
void analyzeTracks(const QList<AnalyzerScheduledTrack>& tracks);
void stopAnalysis();
void trackSelected(TrackPointer pTrack);
private:
void keyPressEvent(QKeyEvent* pEvent) override;
// Note m_pTrackTablePlaceholder is defined in the .ui file
UserSettingsPointer m_pConfig;
bool m_bAnalysisActive;
QButtonGroup m_songsButtonGroup;
WAnalysisLibraryTableView* m_pAnalysisLibraryTableView;
AnalysisLibraryTableModel* m_pAnalysisLibraryTableModel;
};