//----------------------------------------------------------------------------- // Clear and free all the dynamic memory associated with our currently-loaded // sketch. This does not leave the program in an acceptable state (with the // references created, and so on), so anyone calling this must fix that later. //----------------------------------------------------------------------------- void SolveSpace::ClearExisting(void) { UndoClearStack(&redo); UndoClearStack(&undo); Group *g; for(g = SK.group.First(); g; g = SK.group.NextAfter(g)) { g->Clear(); } SK.constraint.Clear(); SK.request.Clear(); SK.group.Clear(); SK.style.Clear(); SK.entity.Clear(); SK.param.Clear(); }
//----------------------------------------------------------------------------- // Clear and free all the dynamic memory associated with our currently-loaded // sketch. This does not leave the program in an acceptable state (with the // references created, and so on), so anyone calling this must fix that later. //----------------------------------------------------------------------------- void SolveSpaceUI::ClearExisting(void) { UndoClearStack(&redo); UndoClearStack(&undo); for(int i = 0; i < SK.groupOrder.n; i++) { Group *g = SK.GetGroup(SK.groupOrder.elem[i]); g->Clear(); } SK.constraint.Clear(); SK.request.Clear(); SK.group.Clear(); SK.groupOrder.Clear(); SK.style.Clear(); SK.entity.Clear(); SK.param.Clear(); }
void SolveSpaceUI::UndoRemember() { unsaved = true; PushFromCurrentOnto(&undo); UndoClearStack(&redo); UndoEnableMenus(); }