/*
* Teste de nota de copyright do Molic
*/
package br.puc.molic.diagram.part;
import java.util.ArrayList;
import org.eclipse.draw2d.geometry.Dimension;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.emf.common.ui.URIEditorInput;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.gef.commands.Command;
import org.eclipse.gef.palette.PaletteRoot;
import org.eclipse.gef.requests.CreateConnectionRequest;
import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint;
import org.eclipse.gmf.runtime.diagram.ui.actions.ActionIds;
import org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart;
import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
import org.eclipse.gmf.runtime.diagram.ui.editparts.ShapeNodeEditPart;
import org.eclipse.gmf.runtime.diagram.ui.requests.CreateConnectionViewAndElementRequest;
import org.eclipse.gmf.runtime.diagram.ui.requests.CreateConnectionViewRequest;
import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest;
import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequestFactory;
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.swt.SWT;
import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
import br.puc.molic.diagram.edit.parts.SceneEditPart;
import br.puc.molic.diagram.edit.policies.DiagramCanonicalEditPolicy;
import br.puc.molic.diagram.providers.MolicElementTypes;
/**
* @generated
*/
public class MolicDiagramEditor extends DiagramDocumentEditor {
/**
* @generated
*/
public static final String ID = "br.puc.molic.diagram.part.MolicDiagramEditorID"; //$NON-NLS-1$
/**
* @generated
*/
public static final String CONTEXT_ID = "br.puc.molic.diagram.ui.diagramContext"; //$NON-NLS-1$
private IContentOutlinePage fOutlinePage;
/**
* @generated
*/
public MolicDiagramEditor() {
super(true);
}
@Override
public Object getAdapter(Class type) {
// TODO Auto-generated method stub
if (IContentOutlinePage.class.equals(type)) {
/*
* if (fOutlinePage == null) { fOutlinePage= new
* ProcessDetailsOutlinePage(getDocumentProvider(), this);
*
* if (getEditorInput() != null)
* fOutlinePage.setInput(getEditorInput()); } return fOutlinePage;
*/
}
return super.getAdapter(type);
}
/**
* @generated
*/
protected String getContextID() {
return CONTEXT_ID;
}
/**
* @generated
*/
protected PaletteRoot createPaletteRoot(PaletteRoot existingPaletteRoot) {
PaletteRoot root = super.createPaletteRoot(existingPaletteRoot);
new MolicPaletteFactory().fillPalette(root);
return root;
}
/**
* @generated
*/
protected PreferencesHint getPreferencesHint() {
return MolicDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
}
/**
* @generated
*/
public String getContributorId() {
return MolicDiagramEditorPlugin.ID;
}
/**
* @generated
*/
protected IDocumentProvider getDocumentProvider(IEditorInput input) {
if (input instanceof URIEditorInput) {
return MolicDiagramEditorPlugin.getInstance().getDocumentProvider();
}
return super.getDocumentProvider(input);
}
/**
* @generated
*/
public TransactionalEditingDomain getEditingDomain() {
IDocument document = getEditorInput() != null ? getDocumentProvider()
.getDocument(getEditorInput()) : null;
if (document instanceof IDiagramDocument) {
return ((IDiagramDocument) document).getEditingDomain();
}
return super.getEditingDomain();
}
/**
* @generated
*/
protected void setDocumentProvider(IEditorInput input) {
if (input instanceof URIEditorInput) {
setDocumentProvider(MolicDiagramEditorPlugin.getInstance()
.getDocumentProvider());
} else {
super.setDocumentProvider(input);
}
}
/**
* @generated
*/
protected void configureGraphicalViewer() {
super.configureGraphicalViewer();
DiagramEditorContextMenuProvider provider = new DiagramEditorContextMenuProvider(
this, getDiagramGraphicalViewer());
getDiagramGraphicalViewer().setContextMenu(provider);
getSite().registerContextMenu(ActionIds.DIAGRAM_EDITOR_CONTEXT_MENU,
provider, getDiagramGraphicalViewer());
}
}