blob: 0cf5a6d93701396ac5f175c759213150ca96e8bf [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2007 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:
* Kentarou FUKUDA - initial API and implementation
*******************************************************************************/
package org.eclipse.actf.model.internal.ui.editors.ie;
import org.eclipse.actf.model.ui.editor.actions.DisableDebugMessageAction;
import org.eclipse.actf.model.ui.editor.actions.GoBackAction;
import org.eclipse.actf.model.ui.editor.actions.GoForwardAction;
import org.eclipse.actf.model.ui.editor.actions.RefreshAction;
import org.eclipse.actf.model.ui.editor.actions.StopAction;
import org.eclipse.actf.model.ui.editor.actions.TextSizeMenu;
import org.eclipse.actf.ui.util.Messages;
import org.eclipse.core.runtime.Platform;
import org.eclipse.jface.action.ICoolBarManager;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.action.Separator;
import org.eclipse.ui.IActionBars;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IWorkbenchActionConstants;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.part.EditorActionBarContributor;
public class WebBrowserEditorContributor extends EditorActionBarContributor {
private DisableDebugMessageAction silentAction;
private DisableDebugMessageAction silentAction2;
public WebBrowserEditorContributor() {
silentAction = new DisableDebugMessageAction();
silentAction2 = new DisableDebugMessageAction(false);
silentAction.addPropertyChangeListener(silentAction2);
silentAction2.addPropertyChangeListener(silentAction);
}
public void init(IActionBars bars, IWorkbenchPage page) {
super.init(bars, page);
// System.out.println(page);
}
public void contributeToCoolBar(ICoolBarManager coolBarManager) {
// not sync with Editor show/hide...
}
public void setActiveEditor(IEditorPart targetEditor) {
// TODO use this to get IWebBrowser for Actions. don't depend on Mediator
}
public void dispose() {
}
public void contributeToToolBar(IToolBarManager toolBarManager) {
// toolBarManager.add(new GroupMarker("Navigate"));
toolBarManager.add(new GoBackAction());
toolBarManager.add(new GoForwardAction());
toolBarManager.add(new RefreshAction());
toolBarManager.add(new StopAction());
if (Platform.inDebugMode()) {
toolBarManager.add(silentAction);
}
}
public void contributeToMenu(IMenuManager menuManager) {
// TODO consider aiBrowser
// menuManager.add(new
// FavoritesMenu(PlatformUI.getWorkbench().getActiveWorkbenchWindow()));
// Display TODO only for Browser
// TODO
MenuManager displayMenu = new MenuManager(Messages.MenuConst__Display_1,
"displayMenu"); //$NON-NLS-1$
displayMenu.add(new Separator("navigate")); //$NON-NLS-1$
displayMenu.add(new GoBackAction(false));
displayMenu.add(new GoForwardAction(false));
displayMenu.add(new RefreshAction(false));
displayMenu.add(new StopAction(false));
if (Platform.inDebugMode()) {
displayMenu.add(silentAction2);
}
displayMenu.add(new Separator());
displayMenu.add(new Separator("view")); //$NON-NLS-1$
displayMenu.add(new TextSizeMenu(PlatformUI.getWorkbench().getActiveWorkbenchWindow()));
menuManager.insertAfter(IWorkbenchActionConstants.M_FILE, displayMenu);
}
}