X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.phphelp/src/net/sourceforge/phpdt/phphelp/actions/PHPEclipseShowContextHelp.java b/net.sourceforge.phpeclipse.phphelp/src/net/sourceforge/phpdt/phphelp/actions/PHPEclipseShowContextHelp.java index c822bb1..a671d36 100644 --- a/net.sourceforge.phpeclipse.phphelp/src/net/sourceforge/phpdt/phphelp/actions/PHPEclipseShowContextHelp.java +++ b/net.sourceforge.phpeclipse.phphelp/src/net/sourceforge/phpdt/phphelp/actions/PHPEclipseShowContextHelp.java @@ -1,14 +1,14 @@ /********************************************************************** -Copyright (c) 2000, 2002 IBM Corp. 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 + Copyright (c) 2000, 2002 IBM Corp. 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 implementation - www.phpeclipse.de -**********************************************************************/ + Contributors: + IBM Corporation - Initial implementation + www.phpeclipse.de + **********************************************************************/ package net.sourceforge.phpdt.phphelp.actions; import java.io.IOException; @@ -30,85 +30,90 @@ import org.eclipse.ui.IEditorActionDelegate; import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.actions.ActionDelegate; -import org.eclipse.ui.help.WorkbenchHelp; -public class PHPEclipseShowContextHelp extends ActionDelegate implements IEditorActionDelegate { +public class PHPEclipseShowContextHelp extends ActionDelegate implements + IEditorActionDelegate { - private IWorkbenchWindow window; - private PHPEditor editor; + private IWorkbenchWindow window; - public void dispose() { - } + private PHPEditor editor; - public void init(IWorkbenchWindow window) { - this.window = window; - } + public void dispose() { + } - public void selectionChanged(IAction action, ISelection selection) { - if (!selection.isEmpty()) { - if (selection instanceof TextSelection) { - action.setEnabled(true); - } else if (window.getActivePage() != null && window.getActivePage().getActivePart() != null) { - // - } - } - } + public void init(IWorkbenchWindow window) { + this.window = window; + } - public void run(IAction action) { - if (editor == null) { - IEditorPart targetEditor = window.getActivePage().getActiveEditor(); - if (targetEditor != null && (targetEditor instanceof PHPEditor)) { - editor = (PHPEditor) targetEditor; - } - } - if (editor != null) { - ITextSelection selection = (ITextSelection) editor.getSelectionProvider().getSelection(); - IDocument doc = editor.getDocumentProvider().getDocument(editor.getEditorInput()); - int pos = selection.getOffset(); - String word = getFunctionName(doc, pos); - openContextHelp(word); + public void selectionChanged(IAction action, ISelection selection) { + if (!selection.isEmpty()) { + if (selection instanceof TextSelection) { + action.setEnabled(true); + } else if (window.getActivePage() != null + && window.getActivePage().getActivePart() != null) { + // + } + } + } - } - } + public void run(IAction action) { + if (editor == null) { + IEditorPart targetEditor = window.getActivePage().getActiveEditor(); + if (targetEditor != null && (targetEditor instanceof PHPEditor)) { + editor = (PHPEditor) targetEditor; + } + } + if (editor != null) { + ITextSelection selection = (ITextSelection) editor + .getSelectionProvider().getSelection(); + IDocument doc = editor.getDocumentProvider().getDocument( + editor.getEditorInput()); + if (null == window) { + window = editor.getSite().getWorkbenchWindow(); + } + int pos = selection.getOffset(); + String word = getFunctionName(doc, pos); + openContextHelp(word); + } + } - public void setActiveEditor(IAction action, IEditorPart targetEditor) { - if (targetEditor != null && (targetEditor instanceof PHPEditor)) { - editor = (PHPEditor) targetEditor; - } - } + public void setActiveEditor(IAction action, IEditorPart targetEditor) { + if (targetEditor != null && (targetEditor instanceof PHPEditor)) { + editor = (PHPEditor) targetEditor; + } + } - public static void openContextHelp(String word) { - IPreferenceStore store = PHPHelpPlugin.getDefault().getPreferenceStore(); - if (store.getBoolean(PHPHelpPlugin.PHP_CHM_ENABLED)) { - String[] arguments = { store.getString(PHPHelpPlugin.PHP_CHM_FILE), word }; - MessageFormat form = new MessageFormat(store.getString(PHPHelpPlugin.PHP_CHM_COMMAND)); - try { - Runtime runtime = Runtime.getRuntime(); - String command = form.format(arguments); + public void openContextHelp(String word) { + IPreferenceStore store = PHPHelpPlugin.getDefault() + .getPreferenceStore(); + if (store.getBoolean(PHPHelpPlugin.PHP_CHM_ENABLED)) { + String[] arguments = { store.getString(PHPHelpPlugin.PHP_CHM_FILE), + word }; + MessageFormat form = new MessageFormat(store + .getString(PHPHelpPlugin.PHP_CHM_COMMAND)); + try { + Runtime runtime = Runtime.getRuntime(); + String command = form.format(arguments); - runtime.exec(command); - } catch (IOException e) { - } - } else { -// IHelp help = WorkbenchHelp.getHelpSupport(); -// if (help != null) { - PHPFunctionHelpResource helpResource = new PHPFunctionHelpResource(word); - WorkbenchHelp.displayHelpResource(helpResource.getHref()); - //getHelpSupport().displayHelpResource(helpResource); -// } else { - // showMessage(shell, dialogTitle, ActionMessages.getString("Open help not available"), false); //$NON-NLS-1$ -// } - } - } + runtime.exec(command); + } catch (IOException e) { + } + } else { + PHPFunctionHelpResource helpResource = new PHPFunctionHelpResource( + word); + window.getWorkbench().getHelpSystem().displayHelpResource( + helpResource.getHref()); + } + } - private String getFunctionName(IDocument doc, int pos) { - Point word = PHPWordExtractor.findWord(doc, pos); - if (word != null) { - try { - return doc.get(word.x, word.y).replace('_', '-'); - } catch (BadLocationException e) { - } - } - return ""; - } + private String getFunctionName(IDocument doc, int pos) { + Point word = PHPWordExtractor.findWord(doc, pos); + if (word != null) { + try { + return doc.get(word.x, word.y).replace('_', '-'); + } catch (BadLocationException e) { + } + } + return ""; + } }