diff options
Diffstat (limited to 'Project/Divider.cpp')
-rw-r--r-- | Project/Divider.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/Project/Divider.cpp b/Project/Divider.cpp index 3f7027d..a19d9c5 100644 --- a/Project/Divider.cpp +++ b/Project/Divider.cpp @@ -15,8 +15,8 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -#include "Divider.h" #include "ConnectionLine.h" +#include "Divider.h" Divider::Divider(int id) : MathOperation(id) {} Divider::~Divider() {} @@ -75,3 +75,23 @@ Element* Divider::GetCopy() *copy = *this; return copy; } + +void Divider::SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node<>* elementListNode) +{ + auto elementNode = XMLParser::AppendNode(doc, elementListNode, "Divider"); + XMLParser::SetNodeAttribute(doc, elementNode, "ID", m_elementID); + + SaveCADProperties(doc, elementNode); + SaveControlNodes(doc, elementNode); +} + +bool Divider::OpenElement(rapidxml::xml_node<>* elementNode) +{ + if(!OpenCADProperties(elementNode)) return false; + if(!OpenControlNodes(elementNode)) return false; + + StartMove(m_position); + UpdatePoints(); + + return true; +} |