blob: e052b948dec116b19759ad21e582dae150482e5b (
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
|
#pragma once
#include <QLabel>
#include <QLineEdit>
#include <QPushButton>
#include "track/cue.h"
#include "track/track.h"
#include "widget/wcolorpicker.h"
class WCueMenuPopup : public QWidget {
Q_OBJECT
public:
WCueMenuPopup(UserSettingsPointer pConfig, QWidget* parent = nullptr);
~WCueMenuPopup() {
delete m_pCueNumber;
delete m_pCuePosition;
delete m_pEditLabel;
delete m_pColorPicker;
delete m_pDeleteCue;
}
void setTrackAndCue(TrackPointer pTrack, CuePointer pCue);
void useColorSet(const ColorPalette& palette) {
if (m_pColorPicker != nullptr) {
m_pColorPicker->useColorSet(palette);
}
}
void popup(const QPoint& p, QAction* atAction = nullptr) {
Q_UNUSED(atAction);
qDebug() << "Showing menu at" << p;
move(p);
show();
}
void hide() {
emit aboutToHide();
QWidget::hide();
}
void show() {
m_pEditLabel->setFocus();
emit aboutToShow();
QWidget::show();
}
signals:
void aboutToHide();
void aboutToShow();
private slots:
void slotEditLabel();
void slotDeleteCue();
void slotChangeCueColor(const mixxx::RgbColor::optional_t color);
private:
CuePointer m_pCue;
TrackPointer m_pTrack;
QLabel* m_pCueNumber;
QLabel* m_pCuePosition;
QLineEdit* m_pEditLabel;
WColorPicker* m_pColorPicker;
QPushButton* m_pDeleteCue;
};
|