/*********************************************************************************************************************************** * Copyright (c) 2000, 2004 IBM Corporation and others. All rights reserved. This program and the accompanying materials are made * available under the terms of the Common Public License v1.0 which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html * * Contributors: IBM Corporation - initial API and implementation **********************************************************************************************************************************/ package net.sourceforge.phpeclipse.wiki.editor; import org.eclipse.jface.action.IMenuManager; import org.eclipse.ui.IActionBars; import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.texteditor.BasicTextEditorActionContributor; import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds; import org.eclipse.ui.texteditor.RetargetTextEditorAction; public class WikiEditorContributor extends BasicTextEditorActionContributor { private static final String CONTENTASSIST_ACTION = "net.sourceforge.phpeclipse.wiki.editor.ContentAssist"; private RetargetTextEditorAction fContentAssist; public WikiEditorContributor() { super(); fContentAssist = new RetargetTextEditorAction(WikiEditorPlugin.getDefault().getResourceBundle(), "ContentAssistProposal."); fContentAssist.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); } public void setActiveEditor(IEditorPart part) { super.setActiveEditor(part); ITextEditor editor = (part instanceof ITextEditor) ? (ITextEditor) part : null; fContentAssist.setAction(getAction(editor, CONTENTASSIST_ACTION)); BrowserUtil.setBrowserPreview(editor); } public void contributeToMenu(IMenuManager menu) { super.contributeToMenu(menu); } public void init(IActionBars bars, IWorkbenchPage page) { super.init(bars, page); bars.setGlobalActionHandler(CONTENTASSIST_ACTION, fContentAssist); } public void dispose() { setActiveEditor(null); super.dispose(); } }