summaryrefslogtreecommitdiffstats
path: root/src/preferences/dialog
diff options
context:
space:
mode:
Diffstat (limited to 'src/preferences/dialog')
-rw-r--r--src/preferences/dialog/dlgprefdeck.cpp43
-rw-r--r--src/preferences/dialog/dlgprefdeck.h26
2 files changed, 37 insertions, 32 deletions
diff --git a/src/preferences/dialog/dlgprefdeck.cpp b/src/preferences/dialog/dlgprefdeck.cpp
index 9ce38c8158..79799bd4ad 100644
--- a/src/preferences/dialog/dlgprefdeck.cpp
+++ b/src/preferences/dialog/dlgprefdeck.cpp
@@ -34,22 +34,29 @@ constexpr int kDefaultRateRampSensitivity = 250;
// to playermanager.cpp
}
-DlgPrefDeck::DlgPrefDeck(QWidget * parent, MixxxMainWindow * mixxx,
- PlayerManager* pPlayerManager,
- UserSettingsPointer pConfig)
- : DlgPreferencePage(parent),
- m_pConfig(pConfig),
- m_mixxx(mixxx),
- m_pPlayerManager(pPlayerManager),
- m_iNumConfiguredDecks(0),
- m_iNumConfiguredSamplers(0) {
+DlgPrefDeck::DlgPrefDeck(QWidget* parent,
+ MixxxMainWindow* mixxx,
+ PlayerManager* pPlayerManager,
+ UserSettingsPointer pConfig)
+ : DlgPreferencePage(parent),
+ m_mixxx(mixxx),
+ m_pPlayerManager(pPlayerManager),
+ m_pConfig(pConfig),
+ m_pControlTrackTimeDisplay(std::make_unique<ControlObject>(
+ ConfigKey("[Controls]", "ShowDurationRemaining"))),
+ m_pControlTrackTimeFormat(std::make_unique<ControlObject>(
+ ConfigKey("[Controls]", "TimeFormat"))),
+ m_pNumDecks(
+ make_parented<ControlProxy>("[Master]", "num_decks", this)),
+ m_pNumSamplers(make_parented<ControlProxy>(
+ "[Master]", "num_samplers", this)),
+ m_iNumConfiguredDecks(0),
+ m_iNumConfiguredSamplers(0) {
setupUi(this);
- m_pNumDecks = new ControlProxy("[Master]", "num_decks", this);
m_pNumDecks->connectValueChanged(this, [=](double value){slotNumDecksChanged(value);});
slotNumDecksChanged(m_pNumDecks->get(), true);
- m_pNumSamplers = new ControlProxy("[Master]", "num_samplers", this);
m_pNumSamplers->connectValueChanged(this, [=](double value){slotNumSamplersChanged(value);});
slotNumSamplersChanged(m_pNumSamplers->get(), true);
@@ -74,10 +81,10 @@ DlgPrefDeck::DlgPrefDeck(QWidget * parent, MixxxMainWindow * mixxx,
connect(ComboBoxCueMode, SIGNAL(activated(int)), this, SLOT(slotCueModeCombobox(int)));
// Track time display configuration
- m_pControlTrackTimeDisplay = new ControlObject(
- ConfigKey("[Controls]", "ShowDurationRemaining"));
- connect(m_pControlTrackTimeDisplay, SIGNAL(valueChanged(double)),
- this, SLOT(slotSetTrackTimeDisplay(double)));
+ connect(m_pControlTrackTimeDisplay.get(),
+ &ControlObject::valueChanged,
+ this,
+ QOverload<double>::of(&DlgPrefDeck::slotSetTrackTimeDisplay));
double positionDisplayType = m_pConfig->getValue(
ConfigKey("[Controls]", "PositionDisplay"),
@@ -101,10 +108,7 @@ DlgPrefDeck::DlgPrefDeck(QWidget * parent, MixxxMainWindow * mixxx,
this, SLOT(slotSetTrackTimeDisplay(QAbstractButton *)));
// display time format
-
- m_pControlTrackTimeFormat = new ControlObject(
- ConfigKey("[Controls]", "TimeFormat"));
- connect(m_pControlTrackTimeFormat,
+ connect(m_pControlTrackTimeFormat.get(),
&ControlObject::valueChanged,
this,
&DlgPrefDeck::slotTimeFormatChanged);
@@ -351,7 +355,6 @@ DlgPrefDeck::DlgPrefDeck(QWidget * parent, MixxxMainWindow * mixxx,
}
DlgPrefDeck::~DlgPrefDeck() {
- delete m_pControlTrackTimeDisplay;
qDeleteAll(m_rateControls);
qDeleteAll(m_rateDirectionControls);
qDeleteAll(m_cueControls);
diff --git a/src/preferences/dialog/dlgprefdeck.h b/src/preferences/dialog/dlgprefdeck.h
index 41788ab9cf..dde7bff85a 100644
--- a/src/preferences/dialog/dlgprefdeck.h
+++ b/src/preferences/dialog/dlgprefdeck.h
@@ -1,7 +1,7 @@
-#ifndef DLGPREFDECK_H
-#define DLGPREFDECK_H
+#pragma once
#include <QWidget>
+#include <memory>
#include "engine/controls/cuecontrol.h"
#include "engine/controls/ratecontrol.h"
@@ -9,6 +9,7 @@
#include "preferences/dialog/ui_dlgprefdeckdlg.h"
#include "preferences/dlgpreferencepage.h"
#include "preferences/usersettings.h"
+#include "util/parented_ptr.h"
class ControlProxy;
class ControlPotmeter;
@@ -58,7 +59,7 @@ class DlgPrefDeck : public DlgPreferencePage, public Ui::DlgPrefDeckDlg {
DlgPrefDeck(QWidget *parent, MixxxMainWindow *mixxx,
PlayerManager* pPlayerManager,
UserSettingsPointer pConfig);
- virtual ~DlgPrefDeck();
+ ~DlgPrefDeck() override;
public slots:
void slotUpdate() override;
@@ -101,19 +102,22 @@ class DlgPrefDeck : public DlgPreferencePage, public Ui::DlgPrefDeckDlg {
void setRateRangeForAllDecks(int rangePercent);
void setRateDirectionForAllDecks(bool inverted);
- UserSettingsPointer m_pConfig;
- ControlObject* m_pControlTrackTimeDisplay;
- ControlObject* m_pControlTrackTimeFormat;
- ControlProxy* m_pNumDecks;
- ControlProxy* m_pNumSamplers;
+ MixxxMainWindow* const m_mixxx;
+ PlayerManager* const m_pPlayerManager;
+ const UserSettingsPointer m_pConfig;
+
+ const std::unique_ptr<ControlObject> m_pControlTrackTimeDisplay;
+ const std::unique_ptr<ControlObject> m_pControlTrackTimeFormat;
+
+ const parented_ptr<ControlProxy> m_pNumDecks;
+ const parented_ptr<ControlProxy> m_pNumSamplers;
+
QList<ControlProxy*> m_cueControls;
QList<ControlProxy*> m_rateControls;
QList<ControlProxy*> m_rateDirectionControls;
QList<ControlProxy*> m_rateRangeControls;
QList<ControlProxy*> m_keylockModeControls;
QList<ControlProxy*> m_keyunlockModeControls;
- MixxxMainWindow *m_mixxx;
- PlayerManager* m_pPlayerManager;
int m_iNumConfiguredDecks;
int m_iNumConfiguredSamplers;
@@ -143,5 +147,3 @@ class DlgPrefDeck : public DlgPreferencePage, public Ui::DlgPrefDeckDlg {
double m_dRatePermCoarse;
double m_dRatePermFine;
};
-
-#endif