gearmulator

Emulation of classic VA synths of the late 90s/2000s that are based on Motorola 56300 family DSPs
Log | Files | Refs | Submodules | README | LICENSE

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 }