From 1a8db54480d2a6cbaea83eda833fd0249795966b Mon Sep 17 00:00:00 2001 From: jsiegle <jsiegle@mit.edu> Date: Thu, 20 Jun 2013 13:19:42 -0400 Subject: [PATCH] Fix problem with editor insertion after a module was deleted --- Source/UI/EditorViewport.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Source/UI/EditorViewport.cpp b/Source/UI/EditorViewport.cpp index d9f42be33..ece9c6d9f 100755 --- a/Source/UI/EditorViewport.cpp +++ b/Source/UI/EditorViewport.cpp @@ -317,6 +317,12 @@ void EditorViewport::deleteNode(GenericEditor* editor) refreshEditors(); getProcessorGraph()->removeProcessor((GenericProcessor*) editor->getProcessor()); + + insertionPoint = -1; // make sure all editors are left-justified + indexOfMovingComponent = -1; + + somethingIsBeingDraggedOver = false; + } } @@ -327,6 +333,8 @@ void EditorViewport::refreshEditors() int lastBound = borderSize+tabSize; int totalWidth = 0; + std::cout << insertionPoint << std::endl; + bool tooLong; for (int n = 0; n < signalChainArray.size(); n++) @@ -344,7 +352,7 @@ void EditorViewport::refreshEditors() int componentWidth = editorArray[n]->desiredWidth; - if (lastBound + componentWidth < getWidth()-tabSize && n >= leftmostEditor) + if (lastBound + componentWidth < getWidth() - tabSize && n >= leftmostEditor) { if (n == 0) @@ -387,7 +395,7 @@ void EditorViewport::refreshEditors() editorArray[n]->setVisible(true); // std::cout << "setting visible." << std::endl; editorArray[n]->setBounds(lastBound, borderSize, componentWidth, getHeight()-borderSize*2); - lastBound+=(componentWidth + borderSize); + lastBound += (componentWidth + borderSize); tooLong = false; @@ -786,6 +794,8 @@ void EditorViewport::mouseDrag(const MouseEvent& e) insertionPoint = editorArray.size(); } + + refreshEditors(); repaint(); } -- GitLab