Search in sources :

Example 1 with OpenInNewEditor

use of org.eclipse.wst.wsdl.ui.internal.actions.OpenInNewEditor in project tesb-studio-se by Talend.

the class LocalWSDLEditor method createActions.

@Override
protected void createActions() {
    super.createActions();
    ActionRegistry registry = getActionRegistry();
    BaseSelectionAction action = new OpenInNewEditor(this) {

        @Override
        public void run() {
            if (getSelectedObjects().size() > 0) {
                Object o = getSelectedObjects().get(0);
                // should make this generic and be able to get the owner from a facade object
                if (o instanceof WSDLBaseAdapter) {
                    WSDLBaseAdapter baseAdapter = (WSDLBaseAdapter) o;
                    IWorkbenchWindow workbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
                    IEditorPart editorPart = workbenchWindow.getActivePage().getActiveEditor();
                    Object object = editorPart.getAdapter(org.eclipse.wst.wsdl.Definition.class);
                    if (object instanceof org.eclipse.wst.wsdl.Definition) {
                        EObject eObject = (EObject) baseAdapter.getTarget();
                        OpenOnSelectionHelper openHelper = new OpenOnSelectionHelper((org.eclipse.wst.wsdl.Definition) object);
                        openHelper.openEditor(eObject);
                    }
                }
            }
        }
    };
    action.setSelectionProvider(getSelectionManager());
    registry.registerAction(action);
}
Also used : IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) Definition(javax.wsdl.Definition) IEditorPart(org.eclipse.ui.IEditorPart) ActionRegistry(org.eclipse.gef.ui.actions.ActionRegistry) BaseSelectionAction(org.eclipse.wst.wsdl.ui.internal.asd.actions.BaseSelectionAction) OpenInNewEditor(org.eclipse.wst.wsdl.ui.internal.actions.OpenInNewEditor) WSDLBaseAdapter(org.eclipse.wst.wsdl.ui.internal.adapters.WSDLBaseAdapter) EObject(org.eclipse.emf.ecore.EObject) EObject(org.eclipse.emf.ecore.EObject) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject)

Aggregations

Definition (javax.wsdl.Definition)1 EObject (org.eclipse.emf.ecore.EObject)1 ActionRegistry (org.eclipse.gef.ui.actions.ActionRegistry)1 IEditorPart (org.eclipse.ui.IEditorPart)1 IWorkbenchWindow (org.eclipse.ui.IWorkbenchWindow)1 OpenInNewEditor (org.eclipse.wst.wsdl.ui.internal.actions.OpenInNewEditor)1 WSDLBaseAdapter (org.eclipse.wst.wsdl.ui.internal.adapters.WSDLBaseAdapter)1 BaseSelectionAction (org.eclipse.wst.wsdl.ui.internal.asd.actions.BaseSelectionAction)1 IRepositoryViewObject (org.talend.core.model.repository.IRepositoryViewObject)1