+ fixes #0001330: Cannot link edge to external geometry

This commit is contained in:
wmayer 2014-03-03 18:50:43 +01:00
parent 170265cd67
commit c50c30c320
2 changed files with 9 additions and 3 deletions

View File

@ -258,8 +258,7 @@ void ViewProviderSketch::activateHandler(DrawSketchHandler *newHandler)
edit->sketchHandler->activated(this);
}
/// removes the active handler
void ViewProviderSketch::purgeHandler(void)
void ViewProviderSketch::deactivateHandler()
{
assert(edit);
assert(edit->sketchHandler != 0);
@ -267,6 +266,12 @@ void ViewProviderSketch::purgeHandler(void)
delete(edit->sketchHandler);
edit->sketchHandler = 0;
Mode = STATUS_NONE;
}
/// removes the active handler
void ViewProviderSketch::purgeHandler(void)
{
deactivateHandler();
// ensure that we are in sketch only selection mode
Gui::MDIView *mdi = Gui::Application::Instance->activeDocument()->getActiveView();
@ -3240,7 +3245,7 @@ void ViewProviderSketch::unsetEdit(int ModNum)
pcRoot->removeChild(edit->EditRoot);
if (edit->sketchHandler)
purgeHandler();
deactivateHandler();
delete edit;
edit = 0;

View File

@ -201,6 +201,7 @@ protected:
virtual void unsetEdit(int ModNum);
virtual void setEditViewer(Gui::View3DInventorViewer*, int ModNum);
virtual void unsetEditViewer(Gui::View3DInventorViewer*);
void deactivateHandler();
/// set up and solve the sketch
void solveSketch(void);
/// helper to detect whether the picked point lies on the sketch