diff options
author | ronso0 <ronso0@mixxx.org> | 2020-10-23 17:34:51 +0200 |
---|---|---|
committer | ronso0 <ronso0@mixxx.org> | 2020-10-23 17:34:51 +0200 |
commit | 1fe930b79e35c17a880140dc914ce6c59660b86c (patch) | |
tree | 67c934303f0af0a6f49bdcadf57e5ec74f358dfe | |
parent | 1098547b75d32ed0e55c0b2d208ed5d9da2fb469 (diff) |
Controlpickermenu: put all Sampler actions into submenu below Deck1-4
-rw-r--r-- | src/controllers/controlpickermenu.cpp | 41 |
1 files changed, 30 insertions, 11 deletions
diff --git a/src/controllers/controlpickermenu.cpp b/src/controllers/controlpickermenu.cpp index 8da152f324..07632a6eaf 100644 --- a/src/controllers/controlpickermenu.cpp +++ b/src/controllers/controlpickermenu.cpp @@ -951,18 +951,37 @@ void ControlPickerMenu::addPlayerControl(QString control, QString controlTitle, } } - for (int i = 1; samplerControls && i <= iNumSamplers; ++i) { - // PlayerManager::groupForSampler is 0-indexed. - QString prefix = m_samplerStr.arg(i); - QString group = PlayerManager::groupForSampler(i - 1); - addSingleControl(group, control, controlTitle, controlDescription, - controlMenu, prefix, prefix); - + if (samplerControls) { + parented_ptr<QMenu> samplerControlMenu = make_parented<QMenu>(tr("Samplers"), controlMenu); + controlMenu->addMenu(samplerControlMenu); + parented_ptr<QMenu> samplerResetControlMenu = nullptr; if (resetControlMenu) { - QString resetTitle = QString("%1 (%2)").arg(controlTitle, m_resetStr); - QString resetDescription = QString("%1 (%2)").arg(controlDescription, m_resetStr); - addSingleControl(group, resetControl, resetTitle, resetDescription, - resetControlMenu, prefix, prefix); + samplerResetControlMenu = make_parented<QMenu>(tr("Samplers"), resetControlMenu); + resetControlMenu->addMenu(samplerResetControlMenu); + } + for (int i = 1; i <= iNumSamplers; ++i) { + // PlayerManager::groupForSampler is 0-indexed. + QString prefix = m_samplerStr.arg(i); + QString group = PlayerManager::groupForSampler(i - 1); + addSingleControl(group, + control, + controlTitle, + controlDescription, + samplerControlMenu, + prefix, + prefix); + + if (resetControlMenu) { + QString resetTitle = QString("%1 (%2)").arg(controlTitle, m_resetStr); + QString resetDescription = QString("%1 (%2)").arg(controlDescription, m_resetStr); + addSingleControl(group, + resetControl, + resetTitle, + resetDescription, + samplerResetControlMenu, + prefix, + prefix); + } } } } |