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
68
69
70
71
72
73
74
75
76
77
78
79
80
|
#pragma once
#include <QFont>
#include <QStandardItemModel>
#include <QWidget>
#include <memory>
#include "library/library_decl.h"
#include "preferences/dialog/dlgpreferencepage.h"
#include "preferences/dialog/ui_dlgpreflibrarydlg.h"
#include "preferences/usersettings.h"
class DlgPrefLibrary : public DlgPreferencePage, public Ui::DlgPrefLibraryDlg {
Q_OBJECT
public:
enum class TrackDoubleClickAction : int {
LoadToDeck = 0,
AddToAutoDJBottom = 1,
AddToAutoDJTop = 2,
Ignore = 3,
};
enum class CoverArtFetcherQuality {
Low = 0,
Medium = 1,
High = 2,
Highest = 3,
};
DlgPrefLibrary(
QWidget* pParent,
UserSettingsPointer pConfig,
std::shared_ptr<Library> pLibrary);
~DlgPrefLibrary() override;
QUrl helpUrl() const override;
public slots:
// Common preference page slots.
void slotUpdate() override;
void slotShow() override;
void slotHide() override;
void slotResetToDefaults() override;
void slotApply() override;
void slotCancel() override;
// Dialog to browse for music file directory
void slotAddDir();
void slotRemoveDir();
void slotRelocateDir();
signals:
void apply();
void scanLibrary();
void requestAddDir(const QString& dir);
void requestRemoveDir(const QString& dir, LibraryRemovalType removalType);
void requestRelocateDir(const QString& currentDir, const QString& newDir);
private slots:
void slotRowHeightValueChanged(int);
void slotSelectFont();
void slotSyncTrackMetadataToggled();
void slotSearchDebouncingTimeoutMillisChanged(int);
void slotBpmColumnPrecisionChanged(int bpmPrecision);
void slotSeratoMetadataExportClicked(bool);
private:
void setFocusPolicyInstallEventFilter(QSpinBox* box);
bool eventFilter(QObject* object, QEvent* event) override;
void initializeDirList();
void setLibraryFont(const QFont& font);
void updateSearchLineEditHistoryOptions();
QStandardItemModel m_dirListModel;
UserSettingsPointer m_pConfig;
std::shared_ptr<Library> m_pLibrary;
bool m_bAddedDirectory;
QFont m_originalTrackTableFont;
int m_iOriginalTrackTableRowHeight;
};
|