| <%@ jet package="org.eclipse.emf.codegen.ecore.templates.editor" imports="org.eclipse.emf.codegen.ecore.genmodel.*" class="Advisor" version="$Id: Advisor.javajet,v 1.1 2010/01/02 08:57:28 atoulme Exp $" %> |
| <% |
| /** |
| * <copyright> |
| * |
| * Copyright (c) 2004-2008 IBM Corporation and others. |
| * 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: |
| * IBM - Initial API and implementation |
| * |
| * </copyright> |
| */ |
| %> |
| <%GenModel genModel = (GenModel)argument;%> |
| <%String _ListOfString = "List" + (genModel.useGenerics() ? "<String>" : "");%> |
| <%String _UniqueEListOfString = "UniqueEList" + (genModel.useGenerics() ? "<String>" : "");%> |
| <%String _StringBuilder = genModel.getImportedName(genModel.useGenerics() ? "java.lang.StringBuilder" : "java.lang.StringBuffer");%> |
| <%@ include file="../Header.javajetinc"%> |
| package <%=genModel.getEditorPluginPackageName()%>; |
| |
| import java.io.File; |
| import java.util.Arrays; |
| <%if (!genModel.useGenerics()) {%> |
| import java.util.Iterator; |
| <%}%> |
| <%if (genModel.getAllGenPackagesWithConcreteClasses().size() > 1) {%> |
| import java.util.List; |
| <%}%> |
| |
| import org.eclipse.equinox.app.IApplication; |
| import org.eclipse.equinox.app.IApplicationContext; |
| |
| import org.eclipse.jface.action.GroupMarker; |
| import org.eclipse.jface.action.IAction; |
| import org.eclipse.jface.action.IMenuManager; |
| import org.eclipse.jface.action.MenuManager; |
| import org.eclipse.jface.action.Separator; |
| import org.eclipse.jface.dialogs.MessageDialog; |
| import org.eclipse.jface.window.Window; |
| import org.eclipse.swt.SWT; |
| import org.eclipse.swt.graphics.Point; |
| import org.eclipse.swt.widgets.Display; |
| import org.eclipse.swt.widgets.FileDialog; |
| import org.eclipse.swt.widgets.Shell; |
| import org.eclipse.ui.IEditorDescriptor; |
| import org.eclipse.ui.IFolderLayout; |
| import org.eclipse.ui.IPageLayout; |
| import org.eclipse.ui.IPerspectiveFactory; |
| import org.eclipse.ui.IWorkbench; |
| import org.eclipse.ui.IWorkbenchActionConstants; |
| import org.eclipse.ui.IWorkbenchPage; |
| import org.eclipse.ui.IWorkbenchWindow; |
| import org.eclipse.ui.PartInitException; |
| import org.eclipse.ui.PlatformUI; |
| import org.eclipse.ui.actions.ActionFactory; |
| import org.eclipse.ui.actions.ContributionItemFactory; |
| import org.eclipse.ui.application.ActionBarAdvisor; |
| import org.eclipse.ui.application.IActionBarConfigurer; |
| import org.eclipse.ui.application.IWorkbenchConfigurer; |
| import org.eclipse.ui.application.IWorkbenchWindowConfigurer; |
| import org.eclipse.ui.application.WorkbenchAdvisor; |
| import org.eclipse.ui.application.WorkbenchWindowAdvisor; |
| |
| import org.eclipse.emf.common.ui.URIEditorInput; |
| import org.eclipse.emf.common.ui.action.WorkbenchWindowActionDelegate; |
| import org.eclipse.emf.common.util.URI; |
| <%if (genModel.getAllGenPackagesWithConcreteClasses().size() > 1) {%> |
| import org.eclipse.emf.common.util.UniqueEList; |
| <%}%> |
| import org.eclipse.emf.edit.ui.action.LoadResourceAction; |
| import org.eclipse.emf.edit.ui.util.EditUIUtil; |
| |
| import <%=genModel.getQualifiedEditorPluginClassName()%>; |
| <%genModel.markImportLocation(stringBuffer);%> |
| |
| |
| /** |
| * Customized {@link WorkbenchAdvisor} for the RCP application. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public final class <%=genModel.getEditorAdvisorClassName()%> extends WorkbenchAdvisor |
| { |
| <%if (genModel.hasCopyrightField()) {%> |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static final String copyright = <%=genModel.getCopyrightFieldLiteral()%>;<%=genModel.getNonNLS()%> |
| |
| <%}%> |
| /** |
| * The default file extension filters for use in dialogs. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.getAllGenPackagesWithConcreteClasses().size() == 1) {%> |
| private static final String[] FILE_EXTENSION_FILTERS = <%if (!genModel.useGenerics()) {%>(String[])<%}%><%=genModel.getAllGenPackagesWithConcreteClasses().get(0).getImportedEditorClassName()%>.FILE_EXTENSION_FILTERS.toArray(new String[0]); |
| <%} else {%> |
| private static final String[] FILE_EXTENSION_FILTERS = getFileExtensionFilters(); |
| |
| /** |
| * Returns the default file extension filters. This method should only be used to initialize {@link #FILE_EXTENSION_FILTERS}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| private static String[] getFileExtensionFilters() |
| { |
| <%=_ListOfString%> result = new <%=_UniqueEListOfString%>(); |
| <%for (GenPackage genPackage : genModel.getAllGenPackagesWithConcreteClasses()) {%> |
| result.addAll(<%=genPackage.getImportedEditorClassName()%>.FILE_EXTENSION_FILTERS); |
| <%}%> |
| return <%if (!genModel.useGenerics()) {%>(String[])<%}%>result.toArray(new String[0]); |
| } |
| <%}%> |
| |
| /** |
| * This looks up a string in the plugin's plugin.properties file. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| private static String getString(String key) |
| { |
| return <%=genModel.getEditorPluginClassName()%>.INSTANCE.getString(key); |
| } |
| |
| /** |
| * This looks up a string in plugin.properties, making a substitution. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| private static String getString(String key, Object s1) |
| { |
| return <%=genModel.getQualifiedEditorPluginClassName()%>.INSTANCE.getString(key, new Object [] { s1 }); |
| } |
| |
| /** |
| * RCP's application |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class Application implements IApplication |
| { |
| /** |
| * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public Object start(IApplicationContext context) throws Exception |
| { |
| WorkbenchAdvisor workbenchAdvisor = new <%=genModel.getEditorAdvisorClassName()%>(); |
| Display display = PlatformUI.createDisplay(); |
| try |
| { |
| int returnCode = PlatformUI.createAndRunWorkbench(display, workbenchAdvisor); |
| if (returnCode == PlatformUI.RETURN_RESTART) |
| { |
| return IApplication.EXIT_RESTART; |
| } |
| else |
| { |
| return IApplication.EXIT_OK; |
| } |
| } |
| finally |
| { |
| display.dispose(); |
| } |
| } |
| |
| /** |
| * @see org.eclipse.equinox.app.IApplication#stop() |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void stop() |
| { |
| // Do nothing. |
| } |
| } |
| |
| /** |
| * RCP's perspective |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class Perspective implements IPerspectiveFactory |
| { |
| /** |
| * Perspective ID |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static final String ID_PERSPECTIVE = "<%=genModel.getQualifiedEditorAdvisorClassName()%>Perspective";<%=genModel.getNonNLS()%> |
| |
| /** |
| * @see org.eclipse.ui.IPerspectiveFactory#createInitialLayout(org.eclipse.ui.IPageLayout) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void createInitialLayout(IPageLayout layout) |
| { |
| layout.setEditorAreaVisible(true); |
| layout.addPerspectiveShortcut(ID_PERSPECTIVE); |
| |
| IFolderLayout right = layout.createFolder("right", IPageLayout.RIGHT, (float)0.66, layout.getEditorArea());<%=genModel.getNonNLS()%> |
| right.addView(IPageLayout.ID_OUTLINE); |
| |
| IFolderLayout bottonRight = layout.createFolder("bottonRight", IPageLayout.BOTTOM, (float)0.60, "right");<%=genModel.getNonNLS()%><%=genModel.getNonNLS(2)%> |
| bottonRight.addView(IPageLayout.ID_PROP_SHEET); |
| } |
| } |
| |
| /** |
| * RCP's window advisor |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class WindowAdvisor extends WorkbenchWindowAdvisor |
| { |
| /** |
| * @see WorkbenchWindowAdvisor#WorkbenchWindowAdvisor(org.eclipse.ui.application.IWorkbenchWindowConfigurer) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public WindowAdvisor(IWorkbenchWindowConfigurer configurer) |
| { |
| super(configurer); |
| } |
| |
| /** |
| * @see org.eclipse.ui.application.WorkbenchWindowAdvisor#preWindowOpen() |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.useClassOverrideAnnotation()) {%> |
| @Override |
| <%}%> |
| public void preWindowOpen() |
| { |
| IWorkbenchWindowConfigurer configurer = getWindowConfigurer(); |
| configurer.setInitialSize(new Point(600, 450)); |
| configurer.setShowCoolBar(false); |
| configurer.setShowStatusLine(true); |
| configurer.setTitle(getString("_UI_Application_title"));<%=genModel.getNonNLS()%> |
| } |
| |
| /** |
| * @see org.eclipse.ui.application.WorkbenchWindowAdvisor#createActionBarAdvisor(org.eclipse.ui.application.IActionBarConfigurer) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.useClassOverrideAnnotation()) {%> |
| @Override |
| <%}%> |
| public ActionBarAdvisor createActionBarAdvisor(IActionBarConfigurer configurer) |
| { |
| return new WindowActionBarAdvisor(configurer); |
| } |
| } |
| |
| /** |
| * RCP's action bar advisor |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class WindowActionBarAdvisor extends ActionBarAdvisor |
| { |
| /** |
| * @see ActionBarAdvisor#ActionBarAdvisor(org.eclipse.ui.application.IActionBarConfigurer) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public WindowActionBarAdvisor(IActionBarConfigurer configurer) |
| { |
| super(configurer); |
| } |
| |
| /** |
| * @see org.eclipse.ui.application.ActionBarAdvisor#fillMenuBar(org.eclipse.jface.action.IMenuManager) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.useClassOverrideAnnotation()) {%> |
| @Override |
| <%}%> |
| protected void fillMenuBar(IMenuManager menuBar) |
| { |
| IWorkbenchWindow window = getActionBarConfigurer().getWindowConfigurer().getWindow(); |
| menuBar.add(createFileMenu(window)); |
| menuBar.add(createEditMenu(window)); |
| menuBar.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); |
| menuBar.add(createWindowMenu(window)); |
| menuBar.add(createHelpMenu(window)); |
| } |
| |
| /** |
| * Creates the 'File' menu. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected IMenuManager createFileMenu(IWorkbenchWindow window) |
| { |
| IMenuManager menu = new MenuManager(getString("_UI_Menu_File_label"),<%=genModel.getNonNLS()%> |
| IWorkbenchActionConstants.M_FILE); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.FILE_START)); |
| |
| IMenuManager newMenu = new MenuManager(getString("_UI_Menu_New_label"), "new");<%=genModel.getNonNLS()%><%=genModel.getNonNLS(2)%> |
| newMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); |
| |
| menu.add(newMenu); |
| menu.add(new Separator()); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); |
| menu.add(new Separator()); |
| addToMenuAndRegister(menu, ActionFactory.CLOSE.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.CLOSE_ALL.create(window)); |
| menu.add(new Separator()); |
| addToMenuAndRegister(menu, ActionFactory.SAVE.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.SAVE_AS.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.SAVE_ALL.create(window)); |
| menu.add(new Separator()); |
| addToMenuAndRegister(menu, ActionFactory.QUIT.create(window)); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.FILE_END)); |
| return menu; |
| } |
| |
| /** |
| * Creates the 'Edit' menu. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected IMenuManager createEditMenu(IWorkbenchWindow window) |
| { |
| IMenuManager menu = new MenuManager(getString("_UI_Menu_Edit_label"),<%=genModel.getNonNLS()%> |
| IWorkbenchActionConstants.M_EDIT); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.EDIT_START)); |
| |
| addToMenuAndRegister(menu, ActionFactory.UNDO.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.REDO.create(window)); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.UNDO_EXT)); |
| menu.add(new Separator()); |
| |
| addToMenuAndRegister(menu, ActionFactory.CUT.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.COPY.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.PASTE.create(window)); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.CUT_EXT)); |
| menu.add(new Separator()); |
| |
| addToMenuAndRegister(menu, ActionFactory.DELETE.create(window)); |
| addToMenuAndRegister(menu, ActionFactory.SELECT_ALL.create(window)); |
| menu.add(new Separator()); |
| |
| menu.add(new GroupMarker(IWorkbenchActionConstants.ADD_EXT)); |
| |
| menu.add(new GroupMarker(IWorkbenchActionConstants.EDIT_END)); |
| menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS)); |
| return menu; |
| } |
| |
| /** |
| * Creates the 'Window' menu. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected IMenuManager createWindowMenu(IWorkbenchWindow window) |
| { |
| IMenuManager menu = new MenuManager(getString("_UI_Menu_Window_label"),<%=genModel.getNonNLS()%> |
| IWorkbenchActionConstants.M_WINDOW); |
| |
| addToMenuAndRegister(menu, ActionFactory.OPEN_NEW_WINDOW.create(window)); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); |
| menu.add(ContributionItemFactory.OPEN_WINDOWS.create(window)); |
| |
| return menu; |
| } |
| |
| /** |
| * Creates the 'Help' menu. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected IMenuManager createHelpMenu(IWorkbenchWindow window) |
| { |
| IMenuManager menu = new MenuManager(getString("_UI_Menu_Help_label"), IWorkbenchActionConstants.M_HELP);<%=genModel.getNonNLS()%> |
| // Welcome or intro page would go here |
| // Help contents would go here |
| // Tips and tricks page would go here |
| menu.add(new GroupMarker(IWorkbenchActionConstants.HELP_START)); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.HELP_END)); |
| menu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS)); |
| return menu; |
| } |
| |
| /** |
| * Adds the specified action to the given menu and also registers the action with the |
| * action bar configurer, in order to activate its key binding. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected void addToMenuAndRegister(IMenuManager menuManager, IAction action) |
| { |
| menuManager.add(action); |
| getActionBarConfigurer().registerGlobalAction(action); |
| } |
| } |
| |
| /** |
| * About action for the RCP application. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class AboutAction extends WorkbenchWindowActionDelegate |
| { |
| /** |
| * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void run(IAction action) |
| { |
| MessageDialog.openInformation(getWindow().getShell(), getString("_UI_About_title"),<%=genModel.getNonNLS()%> |
| getString("_UI_About_text"));<%=genModel.getNonNLS()%> |
| } |
| } |
| |
| /** |
| * Open action for the objects from the <%=genModel.getModelName()%> model. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class OpenAction extends WorkbenchWindowActionDelegate |
| { |
| /** |
| * Opens the editors for the files selected using the file dialog. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void run(IAction action) |
| { |
| String[] filePaths = openFilePathDialog(getWindow().getShell(), SWT.OPEN, null); |
| if (filePaths.length > 0) |
| { |
| openEditor(getWindow().getWorkbench(), URI.createFileURI(filePaths[0])); |
| } |
| } |
| } |
| |
| /** |
| * Open URI action for the objects from the <%=genModel.getModelName()%> model. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static class OpenURIAction extends WorkbenchWindowActionDelegate |
| { |
| /** |
| * Opens the editors for the files selected using the LoadResourceDialog. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void run(IAction action) |
| { |
| LoadResourceAction.LoadResourceDialog loadResourceDialog = new LoadResourceAction.LoadResourceDialog(getWindow().getShell()); |
| if (Window.OK == loadResourceDialog.open()) |
| { |
| <%if (genModel.useGenerics()) {%> |
| for (URI uri : loadResourceDialog.getURIs()) |
| { |
| openEditor(getWindow().getWorkbench(), uri); |
| } |
| <%} else {%> |
| for (Iterator i = loadResourceDialog.getURIs().iterator(); i.hasNext();) |
| { |
| openEditor(getWindow().getWorkbench(), (URI)i.next()); |
| } |
| <%}%> |
| } |
| } |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static String[] openFilePathDialog(Shell shell, int style, String[] fileExtensionFilters) |
| { |
| return openFilePathDialog(shell, style, fileExtensionFilters, (style & SWT.OPEN) != 0, (style & SWT.OPEN) != 0, (style & SWT.SAVE) != 0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static String[] openFilePathDialog(Shell shell, int style, String[] fileExtensionFilters, boolean includeGroupFilter, boolean includeAllFilter, boolean addExtension) |
| { |
| FileDialog fileDialog = new FileDialog(shell, style); |
| if (fileExtensionFilters == null) |
| { |
| fileExtensionFilters = FILE_EXTENSION_FILTERS; |
| } |
| |
| // If requested, augment the file extension filters by adding a group of all the other filters (*.ext1;*.ext2;...) |
| // at the beginning and/or an all files wildcard (*.*) at the end. |
| // |
| includeGroupFilter &= fileExtensionFilters.length > 1; |
| int offset = includeGroupFilter ? 1 : 0; |
| |
| if (includeGroupFilter || includeAllFilter) |
| { |
| int size = fileExtensionFilters.length + offset + (includeAllFilter ? 1 : 0); |
| String[] allFilters = new String[size]; |
| <%=_StringBuilder%> group = includeGroupFilter ? new <%=_StringBuilder%>() : null; |
| |
| for (int i = 0; i < fileExtensionFilters.length; i++) |
| { |
| if (includeGroupFilter) |
| { |
| if (i != 0) |
| { |
| group.append(';'); |
| } |
| group.append(fileExtensionFilters[i]); |
| } |
| allFilters[i + offset] = fileExtensionFilters[i]; |
| } |
| |
| if (includeGroupFilter) |
| { |
| allFilters[0] = group.toString(); |
| } |
| if (includeAllFilter) |
| { |
| allFilters[allFilters.length - 1] = "*.*";<%=genModel.getNonNLS()%> |
| } |
| |
| fileDialog.setFilterExtensions(allFilters); |
| } |
| else |
| { |
| fileDialog.setFilterExtensions(fileExtensionFilters); |
| } |
| fileDialog.open(); |
| |
| String[] filenames = fileDialog.getFileNames(); |
| String[] result = new String[filenames.length]; |
| String path = fileDialog.getFilterPath() + File.separator; |
| String extension = null; |
| |
| // If extension adding requested, get the dotted extension corresponding to the selected filter. |
| // |
| if (addExtension) |
| { |
| int i = fileDialog.getFilterIndex(); |
| if (i != -1 && (!includeAllFilter || i != fileExtensionFilters.length)) |
| { |
| i = includeGroupFilter && i == 0 ? 0 : i - offset; |
| String filter = fileExtensionFilters[i]; |
| int dot = filter.lastIndexOf('.'); |
| if (dot == 1 && filter.charAt(0) == '*') |
| { |
| extension = filter.substring(dot); |
| } |
| } |
| } |
| |
| // Build the result by adding the selected path and, if needed, auto-appending the extension. |
| // |
| for (int i = 0; i < filenames.length; i++) |
| { |
| String filename = path + filenames[i]; |
| if (extension != null) |
| { |
| int dot = filename.lastIndexOf('.'); |
| if (dot == -1 || !Arrays.asList(fileExtensionFilters).contains("*" + filename.substring(dot)))<%=genModel.getNonNLS()%> |
| { |
| filename += extension; |
| } |
| } |
| result[i] = filename; |
| } |
| return result; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public static boolean openEditor(IWorkbench workbench, URI uri) |
| { |
| IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow(); |
| IWorkbenchPage page = workbenchWindow.getActivePage(); |
| |
| IEditorDescriptor editorDescriptor = EditUIUtil.getDefaultEditor(uri, null); |
| if (editorDescriptor == null) |
| { |
| MessageDialog.openError( |
| workbenchWindow.getShell(), |
| getString("_UI_Error_title"),<%=genModel.getNonNLS()%> |
| getString("_WARN_No_Editor", uri.lastSegment()));<%=genModel.getNonNLS()%> |
| return false; |
| } |
| else |
| { |
| try |
| { |
| page.openEditor(new URIEditorInput(uri), editorDescriptor.getId()); |
| } |
| catch (PartInitException exception) |
| { |
| MessageDialog.openError( |
| workbenchWindow.getShell(), |
| getString("_UI_OpenEditorError_label"),<%=genModel.getNonNLS()%> |
| exception.getMessage()); |
| return false; |
| } |
| } |
| return true; |
| } |
| |
| /** |
| * @see org.eclipse.ui.application.WorkbenchAdvisor#getInitialWindowPerspectiveId() |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.useClassOverrideAnnotation()) {%> |
| @Override |
| <%}%> |
| public String getInitialWindowPerspectiveId() |
| { |
| return Perspective.ID_PERSPECTIVE; |
| } |
| |
| /** |
| * @see org.eclipse.ui.application.WorkbenchAdvisor#initialize(org.eclipse.ui.application.IWorkbenchConfigurer) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.useClassOverrideAnnotation()) {%> |
| @Override |
| <%}%> |
| public void initialize(IWorkbenchConfigurer configurer) |
| { |
| super.initialize(configurer); |
| configurer.setSaveAndRestore(true); |
| } |
| |
| /** |
| * @see org.eclipse.ui.application.WorkbenchAdvisor#createWorkbenchWindowAdvisor(org.eclipse.ui.application.IWorkbenchWindowConfigurer) |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| <%if (genModel.useClassOverrideAnnotation()) {%> |
| @Override |
| <%}%> |
| public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) |
| { |
| return new WindowAdvisor(configurer); |
| } |
| } |
| <%genModel.emitSortedImports();%> |