weWaveTree.cpp (733B)
1 #include "weWaveTree.h" 2 3 #include "weTypes.h" 4 #include "weWaveCategoryTreeItem.h" 5 #include "xtEditor.h" 6 #include "xtWaveEditor.h" 7 8 namespace xtJucePlugin 9 { 10 WaveTree::WaveTree(WaveEditor& _editor) : Tree(_editor) 11 { 12 addCategory(WaveCategory::Rom); 13 addCategory(WaveCategory::User); 14 } 15 16 bool WaveTree::setSelectedWave(const xt::WaveId _id) 17 { 18 for (const auto& [category, item] : m_items) 19 { 20 if(item->setSelectedWave(_id)) 21 return true; 22 } 23 return false; 24 } 25 26 void WaveTree::addCategory(WaveCategory _category) 27 { 28 if(m_items.find(_category) != m_items.end()) 29 return; 30 31 auto* item = new WaveCategoryTreeItem(getWaveEditor(), _category); 32 getRootItem()->addSubItem(item); 33 34 m_items.insert({_category, item}); 35 } 36 }