1 /******************************************************************************* 2 * Copyright (c) 2003, 2006 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.ui.application; 12 13 import org.eclipse.jface.action.IAction; 14 import org.eclipse.jface.action.ICoolBarManager; 15 import org.eclipse.jface.action.IMenuManager; 16 import org.eclipse.jface.action.IStatusLineManager; 17 18 /** 19 * Interface providing special access for configuring the action bars 20 * of a workbench window. 21 * <p> 22 * Note that these objects are only available to the main application 23 * (the plug-in that creates and owns the workbench). 24 * </p> 25 * <p> 26 * This interface is not intended to be implemented by clients. 27 * </p> 28 * 29 * @see org.eclipse.ui.application.WorkbenchAdvisor#fillActionBars 30 * @since 3.0 31 */ 32 public interface IActionBarConfigurer { 33 34 /** 35 * Returns the workbench window configurer for the window 36 * containing this configurer's action bars. 37 * 38 * @return the workbench window configurer 39 * @since 3.1 40 */ 41 public IWorkbenchWindowConfigurer getWindowConfigurer(); 42 43 44 /** 45 * Returns the menu manager for the main menu bar of a workbench window. 46 * 47 * @return the menu manager 48 */ 49 public IMenuManager getMenuManager(); 50 51 /** 52 * Returns the status line manager of a workbench window. 53 * 54 * @return the status line manager 55 */ 56 public IStatusLineManager getStatusLineManager(); 57 58 /** 59 * Returns the cool bar manager of the workbench window. 60 * 61 * @return the cool bar manager 62 */ 63 public ICoolBarManager getCoolBarManager(); 64 65 /** 66 * Register the action as a global action with a workbench 67 * window. 68 * <p> 69 * For a workbench retarget action 70 * ({@link org.eclipse.ui.actions.RetargetAction RetargetAction}) 71 * to work, it must be registered. 72 * You should also register actions that will participate 73 * in custom key bindings. 74 * </p> 75 * 76 * @param action the global action 77 * @see org.eclipse.ui.actions.RetargetAction 78 */ 79 public void registerGlobalAction(IAction action); 80 81 } 82