diff options
Diffstat (limited to 'examples/gmf/org.eclipse.gmf.examples.mindmap.diagram/src/org/eclipse/gmf/examples/mindmap/diagram/part/MindmapDiagramEditor.java')
-rw-r--r-- | examples/gmf/org.eclipse.gmf.examples.mindmap.diagram/src/org/eclipse/gmf/examples/mindmap/diagram/part/MindmapDiagramEditor.java | 323 |
1 files changed, 0 insertions, 323 deletions
diff --git a/examples/gmf/org.eclipse.gmf.examples.mindmap.diagram/src/org/eclipse/gmf/examples/mindmap/diagram/part/MindmapDiagramEditor.java b/examples/gmf/org.eclipse.gmf.examples.mindmap.diagram/src/org/eclipse/gmf/examples/mindmap/diagram/part/MindmapDiagramEditor.java deleted file mode 100644 index 88662e249..000000000 --- a/examples/gmf/org.eclipse.gmf.examples.mindmap.diagram/src/org/eclipse/gmf/examples/mindmap/diagram/part/MindmapDiagramEditor.java +++ /dev/null @@ -1,323 +0,0 @@ -package org.eclipse.gmf.examples.mindmap.diagram.part; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IMarker; -import org.eclipse.core.resources.IWorkspaceRoot; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.emf.common.ui.URIEditorInput; -import org.eclipse.emf.ecore.resource.Resource; -import org.eclipse.emf.ecore.resource.ResourceSet; -import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain; -import org.eclipse.emf.transaction.TransactionalEditingDomain; -import org.eclipse.emf.workspace.util.WorkspaceSynchronizer; -import org.eclipse.gef.palette.PaletteRoot; -import org.eclipse.gmf.examples.mindmap.diagram.navigator.MindmapNavigatorItem; -import org.eclipse.gmf.runtime.common.ui.services.marker.MarkerNavigationService; -import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint; -import org.eclipse.gmf.runtime.diagram.ui.resources.editor.document.IDiagramDocument; -import org.eclipse.gmf.runtime.diagram.ui.resources.editor.document.IDocument; -import org.eclipse.gmf.runtime.diagram.ui.resources.editor.document.IDocumentProvider; -import org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor; -import org.eclipse.gmf.runtime.notation.Diagram; -import org.eclipse.jface.dialogs.ErrorDialog; -import org.eclipse.jface.dialogs.IMessageProvider; -import org.eclipse.jface.dialogs.MessageDialog; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.jface.window.Window; -import org.eclipse.osgi.util.NLS; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.IEditorMatchingStrategy; -import org.eclipse.ui.IEditorReference; -import org.eclipse.ui.IFileEditorInput; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.dialogs.SaveAsDialog; -import org.eclipse.ui.ide.IGotoMarker; -import org.eclipse.ui.navigator.resources.ProjectExplorer; -import org.eclipse.ui.part.FileEditorInput; -import org.eclipse.ui.part.IShowInTargetList; -import org.eclipse.ui.part.ShowInContext; - -/** - * @generated - */ -public class MindmapDiagramEditor extends DiagramDocumentEditor implements - IGotoMarker { - - /** - * @generated - */ - public static final String ID = "org.eclipse.gmf.examples.mindmap.diagram.part.MindmapDiagramEditorID"; //$NON-NLS-1$ - - /** - * @generated - */ - public static final String CONTEXT_ID = "org.eclipse.gmf.examples.mindmap.diagram.ui.diagramContext"; //$NON-NLS-1$ - - /** - * @generated - */ - public MindmapDiagramEditor() { - super(true); - } - - /** - * @generated - */ - @Override - protected String getContextID() { - return CONTEXT_ID; - } - - /** - * @generated - */ - @Override - protected PaletteRoot createPaletteRoot(PaletteRoot existingPaletteRoot) { - PaletteRoot root = super.createPaletteRoot(existingPaletteRoot); - new MindmapPaletteFactory().fillPalette(root); - return root; - } - - /** - * @generated - */ - @Override - protected PreferencesHint getPreferencesHint() { - return MindmapDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT; - } - - /** - * @generated - */ - @Override - public String getContributorId() { - return MindmapDiagramEditorPlugin.ID; - } - - /** - * @generated - */ - @Override - public Object getAdapter(Class type) { - if (type == IShowInTargetList.class) { - return new IShowInTargetList() { - public String[] getShowInTargetIds() { - return new String[] { ProjectExplorer.VIEW_ID }; - } - }; - } - return super.getAdapter(type); - } - - /** - * @generated - */ - @Override - protected IDocumentProvider getDocumentProvider(IEditorInput input) { - if (input instanceof IFileEditorInput - || input instanceof URIEditorInput) { - return MindmapDiagramEditorPlugin.getInstance() - .getDocumentProvider(); - } - return super.getDocumentProvider(input); - } - - /** - * @generated - */ - @Override - public TransactionalEditingDomain getEditingDomain() { - IDocument document = getEditorInput() != null ? getDocumentProvider() - .getDocument(getEditorInput()) : null; - if (document instanceof IDiagramDocument) { - return ((IDiagramDocument) document).getEditingDomain(); - } - return super.getEditingDomain(); - } - - /** - * @generated - */ - @Override - protected void setDocumentProvider(IEditorInput input) { - if (input instanceof IFileEditorInput - || input instanceof URIEditorInput) { - setDocumentProvider(MindmapDiagramEditorPlugin.getInstance() - .getDocumentProvider()); - } else { - super.setDocumentProvider(input); - } - } - - /** - * @generated - */ - public void gotoMarker(IMarker marker) { - MarkerNavigationService.getInstance().gotoMarker(this, marker); - } - - /** - * @generated - */ - @Override - public boolean isSaveAsAllowed() { - return true; - } - - /** - * @generated - */ - @Override - public void doSaveAs() { - performSaveAs(new NullProgressMonitor()); - } - - /** - * @generated - */ - @Override - protected void performSaveAs(IProgressMonitor progressMonitor) { - Shell shell = getSite().getShell(); - IEditorInput input = getEditorInput(); - SaveAsDialog dialog = new SaveAsDialog(shell); - IFile original = input instanceof IFileEditorInput ? ((IFileEditorInput) input) - .getFile() - : null; - if (original != null) { - dialog.setOriginalFile(original); - } - dialog.create(); - IDocumentProvider provider = getDocumentProvider(); - if (provider == null) { - // editor has been programmatically closed while the dialog was open - return; - } - if (provider.isDeleted(input) && original != null) { - String message = NLS.bind( - Messages.MindmapDiagramEditor_SavingDeletedFile, original - .getName()); - dialog.setErrorMessage(null); - dialog.setMessage(message, IMessageProvider.WARNING); - } - if (dialog.open() == Window.CANCEL) { - if (progressMonitor != null) { - progressMonitor.setCanceled(true); - } - return; - } - IPath filePath = dialog.getResult(); - if (filePath == null) { - if (progressMonitor != null) { - progressMonitor.setCanceled(true); - } - return; - } - IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot(); - IFile file = workspaceRoot.getFile(filePath); - final IEditorInput newInput = new FileEditorInput(file); - // Check if the editor is already open - IEditorMatchingStrategy matchingStrategy = getEditorDescriptor() - .getEditorMatchingStrategy(); - IEditorReference[] editorRefs = PlatformUI.getWorkbench() - .getActiveWorkbenchWindow().getActivePage() - .getEditorReferences(); - for (int i = 0; i < editorRefs.length; i++) { - if (matchingStrategy.matches(editorRefs[i], newInput)) { - MessageDialog.openWarning(shell, - Messages.MindmapDiagramEditor_SaveAsErrorTitle, - Messages.MindmapDiagramEditor_SaveAsErrorMessage); - return; - } - } - boolean success = false; - try { - provider.aboutToChange(newInput); - getDocumentProvider(newInput).saveDocument(progressMonitor, - newInput, - getDocumentProvider().getDocument(getEditorInput()), true); - success = true; - } catch (CoreException x) { - IStatus status = x.getStatus(); - if (status == null || status.getSeverity() != IStatus.CANCEL) { - ErrorDialog.openError(shell, - Messages.MindmapDiagramEditor_SaveErrorTitle, - Messages.MindmapDiagramEditor_SaveErrorMessage, x - .getStatus()); - } - } finally { - provider.changed(newInput); - if (success) { - setInput(newInput); - } - } - if (progressMonitor != null) { - progressMonitor.setCanceled(!success); - } - } - - /** - * @generated - */ - @Override - public ShowInContext getShowInContext() { - return new ShowInContext(getEditorInput(), getNavigatorSelection()); - } - - /** - * @generated - */ - private ISelection getNavigatorSelection() { - IDiagramDocument document = getDiagramDocument(); - if (document == null) { - return StructuredSelection.EMPTY; - } - Diagram diagram = document.getDiagram(); - IFile file = WorkspaceSynchronizer.getFile(diagram.eResource()); - if (file != null) { - MindmapNavigatorItem item = new MindmapNavigatorItem(diagram, file, - false); - return new StructuredSelection(item); - } - return StructuredSelection.EMPTY; - } - - @Override - // register the resource as not being readonly - public void setInput(IEditorInput input) { - // this part is copied from the super.setInput because - // the catch block was hiding the underlying exception - // for now a printStackTrace is added for better visibility - // this should ofcourse be replaced by logging - try { - doSetInput(input, true); - } catch (CoreException x) { - x.printStackTrace(System.err); - String title = x.getMessage(); - String msg = x.getMessage(); - Shell shell = getSite().getShell(); - ErrorDialog.openError(shell, title, msg, x.getStatus()); - } - - // set the resource in the resourcetoreadonly map - final ResourceSet rs = getEditingDomain().getResourceSet(); - for (Resource res : rs.getResources()) { - ((AdapterFactoryEditingDomain) getEditingDomain()) - .getResourceToReadOnlyMap().put(res, new Boolean(false)); - } - } - - @Override - // implement a more simple save as there are no save-as dialogs involved - public void doSave(IProgressMonitor progressMonitor) { - updateState(getEditorInput()); - validateState(getEditorInput()); - performSave(false, progressMonitor); - } -} |