37 myParentDemandElement(demandElementParent),
38 myChildDemandElement(demandElementChild),
39 myOperation(operation),
40 myOriginalChildElements(demandElementParent->getChildDemandElements()),
41 myEditedChildElements(demandElementParent->getChildDemandElements()) {
42 myParentDemandElement->incRef(
"GNEChange_Children");
44 auto it = std::find(myEditedChildElements.begin(), myEditedChildElements.end(), myChildDemandElement);
46 if (it != myEditedChildElements.end()) {
47 if ((operation == Operation::MOVE_FRONT) && (it != (myEditedChildElements.end() - 1))) {
49 it = myEditedChildElements.erase(it);
51 myEditedChildElements.insert(it + 1, myChildDemandElement);
52 }
else if ((operation == Operation::MOVE_BACK) && (it != myEditedChildElements.begin())) {
54 it = myEditedChildElements.erase(it);
56 myEditedChildElements.insert(it - 1, myChildDemandElement);