blob: 37dc3d239eab40bfa7c9c159ec308af11e86c24d (
plain)
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
|
#pragma once
#include <QLineEdit>
#include <QString>
#include <QWidget>
#include "controllers/keyboard/keyboardeventfilter.h"
#include "library/autodj/autodjprocessor.h"
#include "library/autodj/ui_dlgautodj.h"
#include "library/library.h"
#include "library/libraryview.h"
#include "library/trackcollection.h"
#include "preferences/usersettings.h"
#include "track/track_decl.h"
class PlaylistTableModel;
class WLibrary;
class WTrackTableView;
class DlgAutoDJ : public QWidget, public Ui::DlgAutoDJ, public LibraryView {
Q_OBJECT
public:
DlgAutoDJ(WLibrary* parent,
UserSettingsPointer pConfig,
Library* pLibrary,
AutoDJProcessor* pProcessor,
KeyboardEventFilter* pKeyboard);
~DlgAutoDJ() override;
void onShow() override;
bool hasFocus() const override;
void onSearch(const QString& text) override;
void loadSelectedTrack() override;
void loadSelectedTrackToGroup(const QString& group, bool play) override;
void moveSelection(int delta) override;
public slots:
void shufflePlaylistButton(bool buttonChecked);
void skipNextButton(bool buttonChecked);
void fadeNowButton(bool buttonChecked);
void toggleAutoDJButton(bool enable);
void transitionTimeChanged(int time);
void transitionSliderChanged(int value);
void autoDJStateChanged(AutoDJProcessor::AutoDJState state);
void updateSelectionInfo();
void slotTransitionModeChanged(int comboboxIndex);
void slotRepeatPlaylistChanged(int checkedState);
signals:
void addRandomButton(bool buttonChecked);
void loadTrack(TrackPointer tio);
void loadTrackToPlayer(TrackPointer tio, const QString& group, bool);
void trackSelected(TrackPointer pTrack);
private:
void setupActionButton(QPushButton* pButton,
void (DlgAutoDJ::*pSlot)(bool),
const QString& fallbackText);
const UserSettingsPointer m_pConfig;
AutoDJProcessor* const m_pAutoDJProcessor;
WTrackTableView* const m_pTrackTableView;
const bool m_bShowButtonText;
PlaylistTableModel* m_pAutoDJTableModel;
QString m_enableBtnTooltip;
QString m_disableBtnTooltip;
};
|