diff options
author | Jan Holthuis <jan.holthuis@ruhr-uni-bochum.de> | 2020-05-27 15:11:25 +0200 |
---|---|---|
committer | Jan Holthuis <jan.holthuis@ruhr-uni-bochum.de> | 2020-05-28 12:26:26 +0200 |
commit | 17755bb32c8b30f38075f0963558f9a05460a1bb (patch) | |
tree | ca6714d532dff73032d2abd17da70395a8a847d4 | |
parent | 3f6f5b6169657f2b77f553024b6e4e33cbd119ae (diff) |
Use to QMultiHash/QMultiMap instead of QMap/QHash::insertMulti
-rw-r--r-- | src/controllers/controllerinputmappingtablemodel.cpp | 10 | ||||
-rw-r--r-- | src/controllers/controlleroutputmappingtablemodel.cpp | 10 | ||||
-rw-r--r-- | src/controllers/midi/midicontrollerpreset.cpp | 18 | ||||
-rw-r--r-- | src/controllers/midi/midicontrollerpreset.h | 14 | ||||
-rw-r--r-- | src/dialog/dlgreplacecuecolor.cpp | 4 | ||||
-rw-r--r-- | src/library/basecoverartdelegate.cpp | 2 | ||||
-rw-r--r-- | src/library/basecoverartdelegate.h | 2 | ||||
-rw-r--r-- | src/preferences/configobject.h | 2 | ||||
-rw-r--r-- | src/soundio/soundmanager.cpp | 2 | ||||
-rw-r--r-- | src/soundio/soundmanager.h | 2 |
10 files changed, 35 insertions, 31 deletions
diff --git a/src/controllers/controllerinputmappingtablemodel.cpp b/src/controllers/controllerinputmappingtablemodel.cpp index 237cda8774..cd143383aa 100644 --- a/src/controllers/controllerinputmappingtablemodel.cpp +++ b/src/controllers/controllerinputmappingtablemodel.cpp @@ -18,11 +18,11 @@ void ControllerInputMappingTableModel::apply() { if (m_pMidiPreset != NULL) { // Clear existing input mappings and insert all the input mappings in // the table into the preset. - QHash<uint16_t, MidiInputMapping> mappings; - foreach (const MidiInputMapping& mapping, m_midiInputMappings) { - // Use insertMulti because we support multiple inputs mappings for - // the same input MidiKey. - mappings.insertMulti(mapping.key.key, mapping); + QMultiHash<uint16_t, MidiInputMapping> mappings; + for (const MidiInputMapping& mapping : m_midiInputMappings) { + // There can be multiple input mappings for the same input + // MidiKey, so we need to use a QMultiHash here. + mappings.insert(mapping.key.key, mapping); } m_pMidiPreset->setInputMappings(mappings); } diff --git a/src/controllers/controlleroutputmappingtablemodel.cpp b/src/controllers/controlleroutputmappingtablemodel.cpp index 253aa412d6..1ae8b1dd73 100644 --- a/src/controllers/controlleroutputmappingtablemodel.cpp +++ b/src/controllers/controlleroutputmappingtablemodel.cpp @@ -18,11 +18,11 @@ void ControllerOutputMappingTableModel::apply() { if (m_pMidiPreset != NULL) { // Clear existing output mappings and insert all the output mappings in // the table into the preset. - QHash<ConfigKey, MidiOutputMapping> mappings; - foreach (const MidiOutputMapping& mapping, m_midiOutputMappings) { - // Use insertMulti because we support multiple outputs from the same - // control. - mappings.insertMulti(mapping.controlKey, mapping); + QMultiHash<ConfigKey, MidiOutputMapping> mappings; + for (const MidiOutputMapping& mapping : m_midiOutputMappings) { + // There can be multiple output mappings for the same output + // control, so we need to use a QMultiHash here. + mappings.insert(mapping.controlKey, mapping); } m_pMidiPreset->setOutputMappings(mappings); } diff --git a/src/controllers/midi/midicontrollerpreset.cpp b/src/controllers/midi/midicontrollerpreset.cpp index 31d363349a..5f3690b4e4 100644 --- a/src/controllers/midi/midicontrollerpreset.cpp +++ b/src/controllers/midi/midicontrollerpreset.cpp @@ -33,7 +33,7 @@ bool MidiControllerPreset::isMappable() const { } void MidiControllerPreset::addInputMapping(uint16_t key, MidiInputMapping mapping) { - m_inputMappings.insertMulti(key, mapping); + m_inputMappings.insert(key, mapping); setDirty(true); } @@ -42,11 +42,12 @@ void MidiControllerPreset::removeInputMapping(uint16_t key) { setDirty(true); } -const QHash<uint16_t, MidiInputMapping>& MidiControllerPreset::getInputMappings() const { +const QMultiHash<uint16_t, MidiInputMapping>& MidiControllerPreset::getInputMappings() const { return m_inputMappings; } -void MidiControllerPreset::setInputMappings(const QHash<uint16_t, MidiInputMapping>& mappings) { +void MidiControllerPreset::setInputMappings( + const QMultiHash<uint16_t, MidiInputMapping>& mappings) { if (m_inputMappings != mappings) { m_inputMappings.clear(); m_inputMappings.unite(mappings); @@ -54,8 +55,9 @@ void MidiControllerPreset::setInputMappings(const QHash<uint16_t, MidiInputMappi } } -void MidiControllerPreset::addOutputMapping(ConfigKey key, MidiOutputMapping mapping) { - m_outputMappings.insertMulti(key, mapping); +void MidiControllerPreset::addOutputMapping( + ConfigKey key, MidiOutputMapping mapping) { + m_outputMappings.insert(key, mapping); setDirty(true); } @@ -64,11 +66,13 @@ void MidiControllerPreset::removeOutputMapping(ConfigKey key) { setDirty(true); } -const QHash<ConfigKey, MidiOutputMapping>& MidiControllerPreset::getOutputMappings() const { +const QMultiHash<ConfigKey, MidiOutputMapping>& +MidiControllerPreset::getOutputMappings() const { return m_outputMappings; } -void MidiControllerPreset::setOutputMappings(const QHash<ConfigKey, MidiOutputMapping>& mappings) { +void MidiControllerPreset::setOutputMappings( + const QMultiHash<ConfigKey, MidiOutputMapping>& mappings) { if (m_outputMappings != mappings) { m_outputMappings.clear(); m_outputMappings.unite(mappings); diff --git a/src/controllers/midi/midicontrollerpreset.h b/src/controllers/midi/midicontrollerpreset.h index 3b6534b2ca..0378fb5e67 100644 --- a/src/controllers/midi/midicontrollerpreset.h +++ b/src/controllers/midi/midicontrollerpreset.h @@ -4,7 +4,7 @@ /// @date Mon 9 Apr 2012 /// @brief MIDI Controller preset -#include <QHash> +#include <QMultiHash> #include "controllers/controllerpreset.h" #include "controllers/controllerpresetvisitor.h" @@ -26,17 +26,17 @@ class MidiControllerPreset : public ControllerPreset { // Input mappings void addInputMapping(uint16_t key, MidiInputMapping mapping); void removeInputMapping(uint16_t key); - const QHash<uint16_t, MidiInputMapping>& getInputMappings() const; - void setInputMappings(const QHash<uint16_t, MidiInputMapping>& mappings); + const QMultiHash<uint16_t, MidiInputMapping>& getInputMappings() const; + void setInputMappings(const QMultiHash<uint16_t, MidiInputMapping>& mappings); // Output mappings void addOutputMapping(ConfigKey key, MidiOutputMapping mapping); void removeOutputMapping(ConfigKey key); - const QHash<ConfigKey, MidiOutputMapping>& getOutputMappings() const; - void setOutputMappings(const QHash<ConfigKey, MidiOutputMapping>& mappings); + const QMultiHash<ConfigKey, MidiOutputMapping>& getOutputMappings() const; + void setOutputMappings(const QMultiHash<ConfigKey, MidiOutputMapping>& mappings); private: // MIDI input and output mappings. - QHash<uint16_t, MidiInputMapping> m_inputMappings; - QHash<ConfigKey, MidiOutputMapping> m_outputMappings; + QMultiHash<uint16_t, MidiInputMapping> m_inputMappings; + QMultiHash<ConfigKey, MidiOutputMapping> m_outputMappings; }; diff --git a/src/dialog/dlgreplacecuecolor.cpp b/src/dialog/dlgreplacecuecolor.cpp index 2a74bef025..3bdc8dfb07 100644 --- a/src/dialog/dlgreplacecuecolor.cpp +++ b/src/dialog/dlgreplacecuecolor.cpp @@ -379,7 +379,7 @@ void DlgReplaceCueColor::slotApply() { bool canceled = false; - QMap<TrackPointer, int> cues; + QMultiMap<TrackPointer, int> cues; for (const auto& row : rows) { QCoreApplication::processEvents(); if (progress.wasCanceled()) { @@ -401,7 +401,7 @@ void DlgReplaceCueColor::slotApply() { // after committing the database changes TrackPointer pTrack = GlobalTrackCacheLocker().lookupTrackById(row.trackId); if (pTrack) { - cues.insertMulti(pTrack, row.id); + cues.insert(pTrack, row.id); } } } diff --git a/src/library/basecoverartdelegate.cpp b/src/library/basecoverartdelegate.cpp index afb31d03b3..d957f35940 100644 --- a/src/library/basecoverartdelegate.cpp +++ b/src/library/basecoverartdelegate.cpp @@ -131,7 +131,7 @@ void BaseCoverArtDelegate::paintItem( } else { // If we asked for a non-cache image and got a null pixmap, // then our request was queued. - m_pendingCacheRows.insertMulti(coverInfo.hash, index.row()); + m_pendingCacheRows.insert(coverInfo.hash, index.row()); } } else { // Cache hit diff --git a/src/library/basecoverartdelegate.h b/src/library/basecoverartdelegate.h index a200c83d44..d7f231f204 100644 --- a/src/library/basecoverartdelegate.h +++ b/src/library/basecoverartdelegate.h @@ -71,5 +71,5 @@ class BaseCoverArtDelegate : public TableItemDelegate { // We need to record rows in paint() (which is const) so // these are marked mutable. mutable QList<int> m_cacheMissRows; - mutable QHash<mixxx::cache_key_t, int> m_pendingCacheRows; + mutable QMultiHash<mixxx::cache_key_t, int> m_pendingCacheRows; }; diff --git a/src/preferences/configobject.h b/src/preferences/configobject.h index 93d1b24252..b7f0205b36 100644 --- a/src/preferences/configobject.h +++ b/src/preferences/configobject.h @@ -192,7 +192,7 @@ template <class ValueType> class ConfigObject { protected: // We use QMap because we want a sorted list in mixxx.cfg - QMap<ConfigKey, ValueType> m_values; + QMultiMap<ConfigKey, ValueType> m_values; mutable QReadWriteLock m_valuesLock; QString m_filename; const QString m_resourcePath; diff --git a/src/soundio/soundmanager.cpp b/src/soundio/soundmanager.cpp index 87724e7e12..27544c484d 100644 --- a/src/soundio/soundmanager.cpp +++ b/src/soundio/soundmanager.cpp @@ -645,7 +645,7 @@ void SoundManager::registerInput(AudioInput input, AudioDestination *dest) { qDebug() << "WARNING: AudioInput already registered!"; } - m_registeredDestinations.insertMulti(input, dest); + m_registeredDestinations.insert(input, dest); emit inputRegistered(input, dest); } diff --git a/src/soundio/soundmanager.h b/src/soundio/soundmanager.h index e82dcd19b4..7765b1dc96 100644 --- a/src/soundio/soundmanager.h +++ b/src/soundio/soundmanager.h @@ -156,7 +156,7 @@ class SoundManager : public QObject { SoundManagerConfig m_config; SoundDevicePointer m_pErrorDevice; QHash<AudioOutput, AudioSource*> m_registeredSources; - QHash<AudioInput, AudioDestination*> m_registeredDestinations; + QMultiHash<AudioInput, AudioDestination*> m_registeredDestinations; ControlObject* m_pControlObjectSoundStatusCO; ControlObject* m_pControlObjectVinylControlGainCO; |