From cc8d3c50db17c95fc16de1d867af9203891756d1 Mon Sep 17 00:00:00 2001 From: Martin Lippert Date: Tue, 7 Aug 2012 15:42:52 +0200 Subject: [PATCH] moved Spring perspective to Spring IDE --- .../META-INF/MANIFEST.MF | 15 +- .../icons/full/obj16/spring_perspective.gif | Bin 0 -> 383 bytes .../plugin.xml | 17 ++ .../ui/perspective/StsPerspective.java | 147 ++++++++++++++++++ 4 files changed, 174 insertions(+), 5 deletions(-) create mode 100644 plugins/org.springframework.ide.eclipse.ui/icons/full/obj16/spring_perspective.gif create mode 100644 plugins/org.springframework.ide.eclipse.ui/src/org/springframework/ide/eclipse/ui/perspective/StsPerspective.java diff --git a/plugins/org.springframework.ide.eclipse.ui/META-INF/MANIFEST.MF b/plugins/org.springframework.ide.eclipse.ui/META-INF/MANIFEST.MF index 5146ec2c33..9d3457b902 100644 --- a/plugins/org.springframework.ide.eclipse.ui/META-INF/MANIFEST.MF +++ b/plugins/org.springframework.ide.eclipse.ui/META-INF/MANIFEST.MF @@ -11,6 +11,7 @@ Import-Package: org.eclipse.core.commands.common, org.eclipse.core.resources, org.eclipse.core.runtime, org.eclipse.core.runtime.jobs, + org.eclipse.debug.ui, org.eclipse.jdt.core, org.eclipse.jdt.core.dom, org.eclipse.jdt.internal.core, @@ -26,13 +27,13 @@ Import-Package: org.eclipse.core.commands.common, org.eclipse.jface.preference, org.eclipse.jface.resource, org.eclipse.jface.text, - org.eclipse.ui.browser, - org.eclipse.ui.internal.browser, org.eclipse.jface.text.source, org.eclipse.jface.util, org.eclipse.jface.viewers, + org.eclipse.jface.window, org.eclipse.jface.wizard, org.eclipse.osgi.util, + org.eclipse.search.ui, org.eclipse.swt, org.eclipse.swt.custom, org.eclipse.swt.dnd, @@ -42,9 +43,12 @@ Import-Package: org.eclipse.core.commands.common, org.eclipse.swt.widgets, org.eclipse.ui, org.eclipse.ui.actions, + org.eclipse.ui.browser, + org.eclipse.ui.console, org.eclipse.ui.dialogs, org.eclipse.ui.ide, org.eclipse.ui.internal, + org.eclipse.ui.internal.browser, org.eclipse.ui.internal.dialogs, org.eclipse.ui.internal.ide, org.eclipse.ui.internal.navigator, @@ -55,26 +59,27 @@ Import-Package: org.eclipse.core.commands.common, org.eclipse.ui.plugin, org.eclipse.ui.progress, org.eclipse.ui.texteditor, + org.eclipse.ui.texteditor.templates, org.eclipse.wst.sse.core, org.eclipse.wst.sse.core.internal.provisional, org.eclipse.wst.sse.core.internal.provisional.text, org.osgi.framework, org.springframework.beans;version="[3.1.0,3.2.0)", org.springframework.ide.eclipse.core, - org.springframework.ide.eclipse.core.java, org.springframework.ide.eclipse.core.internal.model.validation, org.springframework.ide.eclipse.core.io, + org.springframework.ide.eclipse.core.java, org.springframework.ide.eclipse.core.model, org.springframework.ide.eclipse.core.model.validation, org.springframework.ide.eclipse.core.project, org.springframework.util;version="[3.1.0,3.2.0)", - org.w3c.dom, - org.eclipse.jface.window + org.w3c.dom Export-Package: org.springframework.ide.eclipse.ui, org.springframework.ide.eclipse.ui.dialogs, org.springframework.ide.eclipse.ui.editors, org.springframework.ide.eclipse.ui.navigator.actions, org.springframework.ide.eclipse.ui.navigator.filters, + org.springframework.ide.eclipse.ui.perspective, org.springframework.ide.eclipse.ui.viewers, org.springframework.ide.eclipse.ui.workingsets, org.springframework.ide.eclipse.ui.workingsets.actions diff --git a/plugins/org.springframework.ide.eclipse.ui/icons/full/obj16/spring_perspective.gif b/plugins/org.springframework.ide.eclipse.ui/icons/full/obj16/spring_perspective.gif new file mode 100644 index 0000000000000000000000000000000000000000..54af849a94a197e2b583264a53708f08dc406725 GIT binary patch literal 383 zcmZ?wbhEHb6krfwxXJ(m|NsAg{`vd8=g;pwzjyBTvAyTl9=pDE@A)}fkGE7$Qk=5N zuxFm-vHL;io<}X+<+XNKanC%>rMnE*9=6nD7DRL?<~V>(=1;cn{sVd(52N4hwH4bZR*)yWqGa1a!ansq+rDriMmrFG}opZ z6j)0X+Q|W30(KDzgyK&YMg|6b1|5(dke?XX<{X$_pdli_*U6$1sKCYEarSZI#ta>y z=Z&v+m}oulD)TsCAtkPFF}YJfSgh2wc&UfblcTBk5-+RsFuQV!h{`F5bczXc`8rF; zDkzkM3vsczu*$0|2yt@@a`CXLs5mRBD{-u5XJyfrQCz04uCB`Dtfr`}w_D9=n~R>N nww|t@wx*t+v&KffjT&d1b#`m-*17DYbw~4#)~!P>jttfS$s34D literal 0 HcmV?d00001 diff --git a/plugins/org.springframework.ide.eclipse.ui/plugin.xml b/plugins/org.springframework.ide.eclipse.ui/plugin.xml index e013fcbf70..efa8b9eaae 100644 --- a/plugins/org.springframework.ide.eclipse.ui/plugin.xml +++ b/plugins/org.springframework.ide.eclipse.ui/plugin.xml @@ -322,6 +322,23 @@ + + + + + + + + + + + + + + diff --git a/plugins/org.springframework.ide.eclipse.ui/src/org/springframework/ide/eclipse/ui/perspective/StsPerspective.java b/plugins/org.springframework.ide.eclipse.ui/src/org/springframework/ide/eclipse/ui/perspective/StsPerspective.java new file mode 100644 index 0000000000..9474946cfa --- /dev/null +++ b/plugins/org.springframework.ide.eclipse.ui/src/org/springframework/ide/eclipse/ui/perspective/StsPerspective.java @@ -0,0 +1,147 @@ +/******************************************************************************* + * Copyright (c) 2012 VMware, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * VMware, Inc. - initial API and implementation + *******************************************************************************/ +package org.springframework.ide.eclipse.ui.perspective; + +import org.eclipse.debug.ui.IDebugUIConstants; +import org.eclipse.jdt.ui.JavaUI; +import org.eclipse.search.ui.NewSearchUI; +import org.eclipse.ui.IFolderLayout; +import org.eclipse.ui.IPageLayout; +import org.eclipse.ui.IPerspectiveFactory; +import org.eclipse.ui.console.IConsoleConstants; +import org.eclipse.ui.progress.IProgressConstants; +import org.eclipse.ui.texteditor.templates.TemplatesView; + +/** + * Default perspective for STS + * @author Christian Dupuis + * @author Steffen Pingel + * @version 2.3.0 + */ +public class StsPerspective implements IPerspectiveFactory { + + public void createInitialLayout(IPageLayout layout) { + String editorArea = layout.getEditorArea(); + + IFolderLayout folder = layout.createFolder("left", IPageLayout.LEFT, (float) 0.25, editorArea); //$NON-NLS-1$ + folder.addView(JavaUI.ID_PACKAGES); + folder.addPlaceholder(JavaUI.ID_TYPE_HIERARCHY); + folder.addPlaceholder("org.eclipse.ui.views.ResourceNavigator"); + folder.addPlaceholder("org.eclipse.ui.navigator.ProjectExplorer"); + layout.addFastView("org.eclipse.jdt.junit.ResultView", (float) 0.25); + layout.addFastView("org.springframework.ide.eclipse.aop.ui.navigator.aopReferenceModelNavigator", (float) 0.25); + layout.addFastView("org.eclipse.contribution.xref.ui.views.XReferenceView", (float) 0.25); + + IFolderLayout serverFolder = layout.createFolder("server", IPageLayout.BOTTOM, (float) 0.80, "left"); + serverFolder.addView("org.eclipse.wst.server.ui.ServersView"); + + IFolderLayout tasklistFolder = layout.createFolder("topright", IPageLayout.RIGHT, (float) 0.75, editorArea); //$NON-NLS-1$ + tasklistFolder.addView("org.eclipse.mylyn.tasks.ui.views.tasks"); + IFolderLayout springFolder = layout.createFolder("spring", IPageLayout.BOTTOM, (float) 0.50, "topright"); + springFolder.addView("org.springframework.ide.eclipse.ui.navigator.springExplorer"); + + IFolderLayout outlineFolder = layout.createFolder("middleright", IPageLayout.BOTTOM, (float) 0.55, "topright"); //$NON-NLS-1$ + outlineFolder.addView(IPageLayout.ID_OUTLINE); + outlineFolder.addPlaceholder(TemplatesView.ID); + + IFolderLayout outputfolder = layout.createFolder("bottom", IPageLayout.BOTTOM, (float) 0.80, editorArea); //$NON-NLS-1$ + outputfolder.addView(IConsoleConstants.ID_CONSOLE_VIEW); + outputfolder.addView("org.eclipse.ui.views.AllMarkersView"); + outputfolder.addView(IProgressConstants.PROGRESS_VIEW_ID); + outputfolder.addPlaceholder(IPageLayout.ID_PROBLEM_VIEW); + outputfolder.addPlaceholder(IPageLayout.ID_TASK_LIST); + outputfolder.addPlaceholder(JavaUI.ID_JAVADOC_VIEW); + outputfolder.addPlaceholder(JavaUI.ID_SOURCE_VIEW); + outputfolder.addPlaceholder(NewSearchUI.SEARCH_VIEW_ID); + outputfolder.addPlaceholder(IPageLayout.ID_BOOKMARKS); + outputfolder.addPlaceholder("com.springsource.sts.ide.metadata.ui.RequestMappingView"); + + outputfolder.addPlaceholder("*"); + + layout.addActionSet(IDebugUIConstants.LAUNCH_ACTION_SET); + layout.addActionSet(JavaUI.ID_ACTION_SET); + layout.addActionSet(JavaUI.ID_ELEMENT_CREATION_ACTION_SET); + layout.addActionSet(IPageLayout.ID_NAVIGATE_ACTION_SET); + + // actions - add AJDT actions + layout.addActionSet("ajnavigation"); + layout.addActionSet("ajelementCreation"); + + // views - java + layout.addShowViewShortcut(JavaUI.ID_PACKAGES); + layout.addShowViewShortcut(JavaUI.ID_TYPE_HIERARCHY); + layout.addShowViewShortcut(JavaUI.ID_SOURCE_VIEW); + layout.addShowViewShortcut(JavaUI.ID_JAVADOC_VIEW); + + // views - search + layout.addShowViewShortcut(NewSearchUI.SEARCH_VIEW_ID); + + // views - debugging + layout.addShowViewShortcut(IConsoleConstants.ID_CONSOLE_VIEW); + + // views - standard workbench + layout.addShowViewShortcut(IPageLayout.ID_OUTLINE); + // layout.addShowViewShortcut(IPageLayout.ID_PROBLEM_VIEW); + layout.addShowViewShortcut("org.eclipse.ui.views.AllMarkersView"); + // TODO e3.5 replace with IPageLayout.ID_PROJECT_EXPLORER + layout.addShowViewShortcut("org.eclipse.ui.navigator.ProjectExplorer"); + // layout.addShowViewShortcut(IPageLayout.ID_TASK_LIST); + layout.addShowViewShortcut(IProgressConstants.PROGRESS_VIEW_ID); + layout.addShowViewShortcut(TemplatesView.ID); + + // views - springsource views + layout.addShowViewShortcut("com.springsource.sts.ide.metadata.ui.RequestMappingView"); + layout.addShowViewShortcut("org.springframework.ide.eclipse.aop.ui.navigator.aopReferenceModelNavigator"); + layout.addShowViewShortcut("com.springsource.sts.roo.ui.rooShellView"); + layout.addShowViewShortcut("org.springframework.ide.eclipse.aop.ui.tracing.eventTraceView"); + layout.addShowViewShortcut("org.eclipse.contribution.xref.ui.views.XReferenceView"); + layout.addShowViewShortcut("org.eclipse.mylyn.tasks.ui.views.tasks"); + layout.addShowViewShortcut("org.eclipse.wst.server.ui.ServersView"); + + // new files + layout.addNewWizardShortcut("ajaspectwizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewPackageCreationWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewClassCreationWizard"); //$NON-NLS-1$ + // layout.addNewWizardShortcut("org.codehaus.groovy.eclipse.ui.groovyClassWizard");//$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewEnumCreationWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard");//$NON-NLS-1$ + // layout.addNewWizardShortcut("org.codehaus.groovy.eclipse.ui.groovyJUnitWizard");//$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("org.springframework.ide.eclipse.beans.ui.wizards.newBeansConfig"); + layout.addNewWizardShortcut("org.springframework.ide.eclipse.webflow.ui.wizard.newWebflowConfigWizard"); + layout.addNewWizardShortcut("org.eclipse.ui.wizards.new.folder");//$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.ui.wizards.new.file");//$NON-NLS-1$ + layout.addNewWizardShortcut("org.eclipse.ui.editors.wizards.UntitledTextFileWizard");//$NON-NLS-1$ + + // new projects + layout.addNewWizardShortcut("org.eclipse.jdt.ui.wizards.JavaProjectWizard"); //$NON-NLS-1$ + layout.addNewWizardShortcut("ajprojectwizard"); + layout.addNewWizardShortcut("com.springsource.sts.wizard.template"); + layout.addNewWizardShortcut("org.springframework.ide.eclipse.beans.ui.wizards.newSpringProject"); + layout.addNewWizardShortcut("com.springsource.sts.roo.ui.wizard.newRooProjectWizard"); + // layout.addNewWizardShortcut("org.codehaus.groovy.eclipse.ui.groovyProjectWizard"); + layout.addNewWizardShortcut("org.grails.ide.eclipse.ui.wizard.newGrailsProjectWizard"); + layout.addNewWizardShortcut("org.eclipse.wst.web.ui.internal.wizards.SimpleWebProjectWizard"); + layout.addNewWizardShortcut("org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard"); + + // new perspectives + layout.addPerspectiveShortcut("org.eclipse.jdt.ui.JavaPerspective"); + layout.addPerspectiveShortcut("org.eclipse.debug.ui.DebugPerspective"); + layout.addPerspectiveShortcut("org.eclipse.jdt.ui.JavaHierarchyPerspective"); + layout.addPerspectiveShortcut("org.eclipse.jdt.ui.JavaBrowsingPerspective"); + layout.addPerspectiveShortcut("org.grails.ide.eclipse.perspective"); + + } +}