ModifableRootModel is not created if only ModuleRootModel is needed

This commit is contained in:
nik
2009-10-30 11:22:36 +03:00
parent a1ca84ccfb
commit ee9716c9e6
2 changed files with 10 additions and 2 deletions
@@ -27,6 +27,7 @@ import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.roots.ModifiableRootModel;
import com.intellij.openapi.roots.ModuleRootManager;
import com.intellij.openapi.roots.ModuleRootModel;
import com.intellij.openapi.roots.OrderEntry;
import com.intellij.openapi.roots.impl.ModuleRootManagerImpl;
import com.intellij.openapi.roots.libraries.Library;
@@ -144,6 +145,13 @@ public abstract class ModuleEditor implements Place.Navigator, Disposable {
return myModifiableRootModelProxy;
}
public ModuleRootModel getRootModel() {
if (myModifiableRootModel != null) {
return getModifiableRootModelProxy();
}
return ModuleRootManager.getInstance(myModule);
}
public boolean isModified() {
for (ModuleConfigurationEditor moduleElementsEditor : myEditors) {
if (moduleElementsEditor.isModified()) {
@@ -151,11 +151,11 @@ public class ModulesConfigurator implements ModulesProvider, ModuleEditor.Change
final ModuleEditor editor = getModuleEditor(module);
ModuleRootModel rootModel = null;
if (editor != null) {
rootModel = editor.getModifiableRootModel();
rootModel = editor.getRootModel();
}
if (rootModel == null && getModule(module.getName()) != null) {
createModuleEditor(module);
rootModel = getModuleEditor(module).getModifiableRootModel();
rootModel = getModuleEditor(module).getRootModel();
}
return rootModel;