@Override public void apply() throws ConfigurationException { myEditor.apply(); if (myModifiableModel.isChanged()) { ApplicationManager.getApplication().runWriteAction(() -> myModifiableModel.commit()); myEditor.disposeUIResources(); myTopPanel.remove(myEditor.getComponent()); createEditor(); } }
@Override public void disposeUIResources() { if (myEditor != null) { myEditor.disposeUIResources(); myTopPanel.remove(myEditor.getComponent()); myEditor = null; } if (myModifiableModel != null) { myModifiableModel.dispose(); myModifiableModel = null; } }
@Override public void apply() throws ConfigurationException { super.apply(); for (PyRootTypeProvider provider : myRootTypeProviders) { provider.apply(myModule); } }
@Override public void disposeUIResources() { super.disposeUIResources(); if (myFilePointersDisposable != null) { Disposer.dispose(myFilePointersDisposable); } for (PyRootTypeProvider provider : myRootTypeProviders) { provider.disposeUIResources(myModule); } }
@Override public boolean isModified() { return myEditor != null && myEditor.isModified(); }
@Override public void reset() { myEditor.reset(); // TODO? }