summaryrefslogtreecommitdiffstats
path: root/src/preferences/dialog/dlgprefdeck.cpp
diff options
context:
space:
mode:
authorronso0 <ronso0@mixxx.org>2019-02-28 21:09:24 +0100
committerronso0 <ronso0@mixxx.org>2019-02-28 21:09:24 +0100
commit52f60bca60deb894b87427e755e3271f3b5e8030 (patch)
tree9287e9f06ccce200af581e2cfe0cb5504ea0bcf8 /src/preferences/dialog/dlgprefdeck.cpp
parent30a4e7fe94eec0c987b4bc70800c6ec16a4cbd06 (diff)
add clone option to Pref > Decks
Diffstat (limited to 'src/preferences/dialog/dlgprefdeck.cpp')
-rw-r--r--src/preferences/dialog/dlgprefdeck.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/preferences/dialog/dlgprefdeck.cpp b/src/preferences/dialog/dlgprefdeck.cpp
index f7ad5ed612..2a885973e6 100644
--- a/src/preferences/dialog/dlgprefdeck.cpp
+++ b/src/preferences/dialog/dlgprefdeck.cpp
@@ -166,6 +166,17 @@ DlgPrefDeck::DlgPrefDeck(QWidget * parent, MixxxMainWindow * mixxx,
connect(checkBoxSeekToCue, SIGNAL(toggled(bool)),
this, SLOT(slotJumpToCueOnTrackLoadCheckbox(bool)));
+ // Double-tap Load to clone a deck via keyboard or controller ([ChannelN],LoadSelectedTrack)
+ // If not present in the config, set the default value
+ if (!m_pConfig->exists(ConfigKey("[Controls]","CloneDeckOnLoadDoubleTap"))) {
+ m_pConfig->setValue(ConfigKey("[Controls]", "CloneDeckOnLoadDoubleTap"), true);
+ }
+ m_bCloneDeckOnLoadDoubleTap = m_pConfig->getValue(
+ ConfigKey("[Controls]", "CloneDeckOnLoadDoubleTap"), true);
+ checkBoxCloneDeckOnLoadDoubleTap->setChecked(m_bCloneDeckOnLoadDoubleTap);
+ connect(checkBoxCloneDeckOnLoadDoubleTap, SIGNAL(toggled(bool)),
+ this, SLOT(slotCloneDeckOnLoadDoubleTapCheckbox(bool)));
+
m_bRateInverted = m_pConfig->getValue(ConfigKey("[Controls]", "RateDir"), false);
setRateDirectionForAllDecks(m_bRateInverted);
checkBoxInvertSpeedSlider->setChecked(m_bRateInverted);
@@ -332,6 +343,9 @@ void DlgPrefDeck::slotUpdate() {
checkBoxDisallowLoadToPlayingDeck->setChecked(!m_pConfig->getValue(
ConfigKey("[Controls]", "AllowTrackLoadToPlayingDeck"), false));
+ checkBoxCloneDeckOnLoadDoubleTap->setChecked(m_pConfig->getValue(
+ ConfigKey("[Controls]", "CloneDeckOnLoadDoubleTap"), true));
+
checkBoxSeekToCue->setChecked(!m_pConfig->getValue(
ConfigKey("[Controls]", "CueRecall"), false));
@@ -405,6 +419,8 @@ void DlgPrefDeck::slotResetToDefaults() {
// Don't load tracks into playing decks.
checkBoxDisallowLoadToPlayingDeck->setChecked(true);
+ // Clone decks by double-tapping Load button.
+ checkBoxCloneDeckOnLoadDoubleTap->setChecked(true);
// Mixxx cue mode
ComboBoxCueMode->setCurrentIndex(0);
@@ -490,6 +506,10 @@ void DlgPrefDeck::slotJumpToCueOnTrackLoadCheckbox(bool checked) {
m_bJumpToCueOnTrackLoad = checked;
}
+void DlgPrefDeck::slotCloneDeckOnLoadDoubleTapCheckbox(bool checked) {
+ m_bCloneDeckOnLoadDoubleTap = checked;
+}
+
void DlgPrefDeck::slotSetTrackTimeDisplay(QAbstractButton* b) {
if (b == radioButtonRemaining) {
m_timeDisplayMode = TrackTime::DisplayMode::REMAINING;
@@ -566,6 +586,9 @@ void DlgPrefDeck::slotApply() {
m_pConfig->setValue(ConfigKey("[Controls]", "AllowTrackLoadToPlayingDeck"),
!m_bDisallowTrackLoadToPlayingDeck);
+ m_pConfig->setValue(ConfigKey("[Controls]", "CloneDeckOnLoadDoubleTap"),
+ m_bCloneDeckOnLoadDoubleTap);
+
m_pConfig->setValue(ConfigKey("[Controls]", "CueRecall"), !m_bJumpToCueOnTrackLoad);
// Set rate range