blob: 30a5e9430404988d93d1f2d06abf0329822d167b (
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
|
#pragma once
#include <QDragEnterEvent>
#include <QDropEvent>
#include <QMouseEvent>
#include "preferences/usersettings.h"
#include "track/track.h"
#include "util/parented_ptr.h"
#include "widget/trackdroptarget.h"
#include "widget/wlabel.h"
class TrackCollectionManager;
class WTrackMenu;
class WTrackText : public WLabel, public TrackDropTarget {
Q_OBJECT
public:
WTrackText(
QWidget* pParent,
UserSettingsPointer pConfig,
TrackCollectionManager* pTrackCollectionManager,
const QString& group);
~WTrackText() override;
signals:
void trackDropped(QString fileName, QString group) override;
void cloneDeck(QString source_group, QString target_group) override;
public slots:
void slotTrackLoaded(TrackPointer track);
void slotLoadingTrack(TrackPointer pNewTrack, TrackPointer pOldTrack);
protected:
void contextMenuEvent(QContextMenuEvent* event) override;
private slots:
void slotTrackChanged(TrackId);
private:
void dragEnterEvent(QDragEnterEvent *event) override;
void dropEvent(QDropEvent *event) override;
void mouseMoveEvent(QMouseEvent *event) override;
void mouseDoubleClickEvent(QMouseEvent* event) override;
void updateLabel();
const QString m_group;
UserSettingsPointer m_pConfig;
TrackPointer m_pCurrentTrack;
const parented_ptr<WTrackMenu> m_pTrackMenu;
};
|