From 81da8e42e3fbe19ce7c1c1992d9f8b3e8a5e04ac Mon Sep 17 00:00:00 2001 From: "liana.bakradze" Date: Fri, 2 Oct 2015 11:53:45 +0300 Subject: [PATCH] fixed after IDEA-CR-5228 --- .../python/module/PyContentEntriesEditor.java | 14 +++++++++----- .../python/module/PyRootTypeProvider.java | 9 ++++++--- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/python/src/com/jetbrains/python/module/PyContentEntriesEditor.java b/python/src/com/jetbrains/python/module/PyContentEntriesEditor.java index 7bb465769749..b47de28d0e40 100644 --- a/python/src/com/jetbrains/python/module/PyContentEntriesEditor.java +++ b/python/src/com/jetbrains/python/module/PyContentEntriesEditor.java @@ -50,14 +50,14 @@ public class PyContentEntriesEditor extends CommonContentEntriesEditor { private final Module myModule; private Disposable myFilePointersDisposable; private MyContentEntryEditor myContentEntryEditor; - private FacetErrorPanel myErrorPanel; + private FacetErrorPanel myWarningPanel; public PyContentEntriesEditor(Module module, ModuleConfigurationState moduleConfigurationState, JpsModuleSourceRootType... rootTypes) { super(module.getName(), moduleConfigurationState, rootTypes); myRootTypeProviders = Extensions.getExtensions(PyRootTypeProvider.EP_NAME); myModule = module; - myErrorPanel = new FacetErrorPanel(); + myWarningPanel = new FacetErrorPanel(); reset(); } @@ -105,6 +105,10 @@ public class PyContentEntriesEditor extends CommonContentEntriesEditor { if (myFilePointersDisposable != null) { Disposer.dispose(myFilePointersDisposable); } + + for (PyRootTypeProvider provider : myRootTypeProviders) { + provider.disposeUIResources(myModule); + } } @Override @@ -292,10 +296,10 @@ public class PyContentEntriesEditor extends CommonContentEntriesEditor { @Override protected void addAdditionalSettingsToPanel(JPanel mainPanel) { - mainPanel.add(myErrorPanel.getComponent(), BorderLayout.SOUTH); + mainPanel.add(myWarningPanel.getComponent(), BorderLayout.SOUTH); } - public FacetErrorPanel getErrorPanel() { - return myErrorPanel; + public FacetErrorPanel getWarningPanel() { + return myWarningPanel; } } diff --git a/python/src/com/jetbrains/python/module/PyRootTypeProvider.java b/python/src/com/jetbrains/python/module/PyRootTypeProvider.java index c417d8f28079..871165cc513a 100644 --- a/python/src/com/jetbrains/python/module/PyRootTypeProvider.java +++ b/python/src/com/jetbrains/python/module/PyRootTypeProvider.java @@ -48,7 +48,7 @@ public abstract class PyRootTypeProvider { } }; - public abstract void reset(@NotNull final Disposable disposable, PyContentEntriesEditor editor, Module module); + public abstract void reset(@NotNull final Disposable disposable, PyContentEntriesEditor editor, @NotNull Module module); public abstract void apply(Module module); @@ -76,6 +76,9 @@ public abstract class PyRootTypeProvider { return null; } + public void disposeUIResources(@NotNull Module module) { + } + protected class RootEntryEditingAction extends ContentEntryEditingAction { private final Disposable myDisposable; @@ -123,12 +126,12 @@ public abstract class PyRootTypeProvider { private void addRoot(VirtualFilePointer root, PyContentEntriesEditor editor) { editor.getContentEntryEditor().addRoot(this, root); - editor.getErrorPanel().getValidatorsManager().validate(); + editor.getWarningPanel().getValidatorsManager().validate(); } protected void removeRoot(VirtualFile selectedFile, PyContentEntriesEditor editor, ModifiableRootModel model) { editor.getContentEntryEditor().removeRoot(null, selectedFile.getUrl(), this); - editor.getErrorPanel().getValidatorsManager().validate(); + editor.getWarningPanel().getValidatorsManager().validate(); } protected boolean hasRoot(VirtualFile file, PyContentEntriesEditor editor) {