diff options
Diffstat (limited to 'Project/ControlElementContainer.cpp')
-rw-r--r-- | Project/ControlElementContainer.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Project/ControlElementContainer.cpp b/Project/ControlElementContainer.cpp index 3c420e7..9c9b1f1 100644 --- a/Project/ControlElementContainer.cpp +++ b/Project/ControlElementContainer.cpp @@ -46,6 +46,8 @@ void ControlElementContainer::FillContainer(ControlEditor* editor) m_sumList.push_back(sum); } else if(TransferFunction* tf = dynamic_cast<TransferFunction*>(*it)) { m_tfList.push_back(tf); + } else if(Divider* divider = dynamic_cast<Divider*>(*it)) { + m_dividerList.push_back(divider); } } } @@ -62,6 +64,7 @@ void ControlElementContainer::ClearContainer() m_rateLimiterList.clear(); m_sumList.clear(); m_tfList.clear(); + m_dividerList.clear(); } void ControlElementContainer::FillContainer(std::vector<ControlElement*> controlElementList, @@ -90,6 +93,8 @@ void ControlElementContainer::FillContainer(std::vector<ControlElement*> control m_sumList.push_back(sum); } else if(TransferFunction* tf = dynamic_cast<TransferFunction*>(*it)) { m_tfList.push_back(tf); + } else if(Divider* divider = dynamic_cast<Divider*>(*it)) { + m_dividerList.push_back(divider); } } } @@ -109,7 +114,7 @@ void ControlElementContainer::GetContainerCopy(std::vector<ControlElement*>& con // Copy elements (exept connection line). int nodeID = 0; for(auto it = m_ctrlElementsList.begin(), itEnd = m_ctrlElementsList.end(); it != itEnd; ++it) { - Element* oldElement = *it; + ControlElement* oldElement = *it; ControlElement* copy = static_cast<ControlElement*>(oldElement->GetCopy()); controlElementList.push_back(copy); // Copy nodes. |