diff options
author | itrimble | 2011-03-24 20:22:12 +0000 |
---|---|---|
committer | itrimble | 2011-03-24 20:22:12 +0000 |
commit | 6ab47376d5c0f6edf9e6d5bab968cb7e04483970 (patch) | |
tree | c560701845e4fbfa3f3adde9d1cb72c174aca653 /jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse | |
parent | 4f0b87e93ac26f4013f034a62f1c741c98680bf9 (diff) | |
download | webtools.jsf-6ab47376d5c0f6edf9e6d5bab968cb7e04483970.tar.gz webtools.jsf-6ab47376d5c0f6edf9e6d5bab968cb7e04483970.tar.xz webtools.jsf-6ab47376d5c0f6edf9e6d5bab968cb7e04483970.zip |
Bug 291054 - faces-config should be checked out if the user tries to modify it
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse')
2 files changed, 20 insertions, 0 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java index cfe4ed47a..daf536e27 100644 --- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java +++ b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java @@ -356,6 +356,14 @@ public class FacesConfigEditor extends FormEditor implements return; } + //Bug 291054 - faces-config should be checked out if the user tries to modify it + if (input instanceof IFileEditorInput) { + IFile file = ((IFileEditorInput)input).getFile(); + if (file.isReadOnly()) { + file.getWorkspace().validateEdit(new IFile[]{file}, site != null ? site.getShell() : null); + } + } + //Bug 191494 - Unable to switch pages in faces config editor without mouse // Activate plugin context IContextService contextService = (IContextService) getSite() diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java index f65230ac2..cbdcf9734 100644 --- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java +++ b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java @@ -25,6 +25,8 @@ import org.eclipse.core.resources.IResourceChangeEvent; import org.eclipse.core.resources.IResourceChangeListener; import org.eclipse.core.resources.IResourceDelta; import org.eclipse.core.resources.IResourceDeltaVisitor; +import org.eclipse.core.resources.IWorkspace; +import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.core.runtime.IConfigurationElement; @@ -534,6 +536,16 @@ public class PageflowEditor extends GraphicalEditorWithFlyoutPalette implements // save pageflow to file try { + //Bug 291054 - faces-config should be checked out if the user tries to modify it + IPath pageFlowFilePath = getPageflowFilePath(file); + if (pageFlowFilePath != null) { + IWorkspace workspace = ResourcesPlugin.getWorkspace(); + IFile pageFlowFile = workspace.getRoot().getFile(pageFlowFilePath); + if (pageFlowFile != null && pageFlowFile.isReadOnly()) { + workspace.validateEdit(new IFile[]{pageFlowFile}, getEditorSite() != null ? getEditorSite().getShell() : null); + } + } + getPageflowManager().save(getPageflowFilePath(file)); progressMonitor.worked(1); |