/*
* Copyright (c) 2012 European Synchrotron Radiation Facility,
* Diamond Light Source Ltd.
*
* 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
*/
package fable.framework.toolbox;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.IStatusLineManager;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.ui.IActionBars2;
import org.eclipse.ui.SubActionBars2;
public class ActionBarWrapper extends SubActionBars2 {
private IToolBarManager alternativeToolbarManager;
private IMenuManager alternativeMenuManager;
private IStatusLineManager alternativeStatusManager;
/**
* alternatives may be null.
* @param alternativeToolbarManager
* @param alternativeMenuManager
* @param alternativeStatusManager
* @param parent
*/
public ActionBarWrapper(final IToolBarManager alternativeToolbarManager,
final IMenuManager alternativeMenuManager,
final IStatusLineManager alternativeStatusManager,
IActionBars2 parent) {
super(parent);
this.alternativeToolbarManager = alternativeToolbarManager;
this.alternativeMenuManager = alternativeMenuManager;
this.alternativeStatusManager = alternativeStatusManager;
}
@Override
public IMenuManager getMenuManager() {
if (alternativeMenuManager!=null) return alternativeMenuManager;
return super.getMenuManager();
}
/**
* Returns the status line manager. If items are added or removed from the
* manager be sure to call <code>updateActionBars</code>.
*
* @return the status line manager
*/
@Override
public IStatusLineManager getStatusLineManager() {
if (alternativeStatusManager!=null) return alternativeStatusManager;
return super.getStatusLineManager();
}
/**
* Returns the tool bar manager. If items are added or removed from the
* manager be sure to call <code>updateActionBars</code>.
*
* @return the tool bar manager
*/
@Override
public IToolBarManager getToolBarManager() {
if (alternativeToolbarManager!=null) return alternativeToolbarManager;
return super.getToolBarManager();
}
}