1 /******************************************************************************* 2 * Copyright (c) 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 12 package org.eclipse.ui.views.properties.tabbed; 13 14 import org.eclipse.ui.IActionBars; 15 16 /** 17 * Allows a tabbed properties view to make contributions to action bars. 18 * <p> 19 * An action provider is called when the tabbed properties view becomes the 20 * active view. It is at this point where the action provider can override the 21 * action bars. 22 * </p> 23 * <p> 24 * Normally {@link TabbedPropertySheetPage#setActionBars(IActionBars)} is 25 * sufficient, but this is only called once and is not sufficient for a 26 * contributor that is selection based. An example is the Project Explorer where 27 * different providers contribute different action sets and properties 28 * configurations. 29 * </p> 30 * <p> 31 * The most frequent use of setActionBars() is to retarget the global actions 32 * for undo and redo based on the active tabbed properties view contributor. 33 * </p> 34 * 35 * @author Anthony Hunter 36 * @since 3.2.1 37 */ 38 public interface IActionProvider { 39 40 /** 41 * Allows the page to make contributions to the given action bars. The 42 * contributions will be visible when the page is visible. 43 * 44 * @param contributor 45 * the tabbed property sheet page contributor. 46 * @param actionBars 47 * the action bars for this page 48 */ 49 public void setActionBars(ITabbedPropertySheetPageContributor contributor, 50 IActionBars actionBars); 51 } 52