/* * @see org.eclipse.jface.action.Action#run() */ @Override public void run() { ErlBrowserInformationControlInput input = null; if (fInfoControl != null) { input = (ErlBrowserInformationControlInput) fInfoControl.getInput(); fInfoControl.notifyDelayedInputChange(null); fInfoControl.dispose(); } else if (edocView != null) { input = edocView.getInput(); } if (input != null) { // TODO: add hover location to editor navigation history? try { final Object element = input.getInputElement(); if (element instanceof IErlElement) { EditorUtility.openElementInEditor(element, true); } else if (element instanceof OpenResult) { final OpenResult or = (OpenResult) element; try { final AbstractErlangEditor editor = input.getEditor(); new OpenUtils().openOpenResult(editor, editor.getModule(), -1, null, or, null); } catch (final Exception e) { ErlLogger.error(e); } } } catch (final PartInitException e) { ErlLogger.error(e); } } }
@Override public void run() { final BrowserInformationControlInput next = (BrowserInformationControlInput) fInfoControl.getInput().getNext(); if (next != null) { fInfoControl.setInput(next); } }
@Override public void run() { final BrowserInformationControlInput previous = (BrowserInformationControlInput) fInfoControl.getInput().getPrevious(); if (previous != null) { fInfoControl.setInput(previous); } }
/* * @see org.eclipse.jface.action.Action#run() */ @Override public void run() { final BrowserInformationControlInput input = fInfoControl.getInput(); fInfoControl.notifyDelayedInputChange(null); fInfoControl.dispose(); try { final EdocView view = (EdocView) ErlideUIPlugin.getActivePage().showView(EdocView.ID); // TODO view.setInput(infoInput); view.setText(input.getHtml()); } catch (final PartInitException e) { ErlLogger.error(e); } }
public void update() { final BrowserInformationControlInput current = fInfoControl.getInput(); if (current != null && current.getNext() != null) { setToolTipText(String.format("Go to next %s", current.getNext().getInputName())); setEnabled(true); } else { setToolTipText(""); setEnabled(false); } }
public void update() { final BrowserInformationControlInput current = fInfoControl.getInput(); if (current != null && current.getPrevious() != null) { final BrowserInput previous = current.getPrevious(); setToolTipText(String.format("Go back to %s", previous.getInputName())); setEnabled(true); } else { setToolTipText(""); setEnabled(false); } }
@Override protected IInformationControl doCreateInformationControl(final Shell parent) { if (BrowserInformationControl.isAvailable(parent)) { final ToolBarManager tbm = new ToolBarManager(SWT.FLAT); final String font = JFaceResources.DIALOG_FONT; final BrowserInformationControl control = new BrowserInformationControl(parent, font, tbm); final PresenterControlCreator.BackAction backAction = new PresenterControlCreator.BackAction(control); backAction.setEnabled(false); tbm.add(backAction); final PresenterControlCreator.ForwardAction forwardAction = new PresenterControlCreator.ForwardAction(control); tbm.add(forwardAction); forwardAction.setEnabled(false); final PresenterControlCreator.ShowInEdocViewAction showInEdocViewAction = new PresenterControlCreator.ShowInEdocViewAction(control); tbm.add(showInEdocViewAction); final OpenDeclarationAction openDeclarationAction = new OpenDeclarationAction(control, editor); tbm.add(openDeclarationAction); final SimpleSelectionProvider selectionProvider = new SimpleSelectionProvider(); final OpenEdocInExternalBrowserAction openEdocInExternalBrowserAction = new OpenEdocInExternalBrowserAction(editor.getSite(), null); openEdocInExternalBrowserAction.setSpecialSelectionProvider(selectionProvider); selectionProvider.addSelectionChangedListener(openEdocInExternalBrowserAction); final ImageDescriptor descriptor = ErlideImage.OBJS_EXTERNALBROWSER.getDescriptor(); openEdocInExternalBrowserAction.setImageDescriptor(descriptor); openEdocInExternalBrowserAction.setDisabledImageDescriptor(descriptor); selectionProvider.setSelection(new StructuredSelection()); tbm.add(openEdocInExternalBrowserAction); // OpenExternalBrowserAction openExternalJavadocAction = new // OpenExternalBrowserAction( // parent.getDisplay(), selectionProvider); // selectionProvider // .addSelectionChangedListener(openExternalJavadocAction); // selectionProvider.setSelection(new // StructuredSelection()); // tbm.add(openExternalJavadocAction); final IInputChangedListener inputChangeListener = new IInputChangedListener() { @Override public void inputChanged(final Object newInput) { backAction.update(); forwardAction.update(); if (newInput == null) { selectionProvider.setSelection(new StructuredSelection()); } else if (newInput instanceof BrowserInformationControlInput) { final BrowserInformationControlInput input = (BrowserInformationControlInput) newInput; final Object inputElement = input.getInputElement(); selectionProvider.setSelection(new StructuredSelection(inputElement)); final boolean hasInputElement = inputElement != null; showInEdocViewAction.setEnabled(hasInputElement); openDeclarationAction.setEnabled(hasInputElement); openEdocInExternalBrowserAction.setInput(newInput); openEdocInExternalBrowserAction.setEnabled(hasInputElement); } } }; control.addInputChangeListener(inputChangeListener); tbm.update(true); control.addLocationListener(new HandleEdocLinksLocationListener(control)); return control; } return new DefaultInformationControl( parent, EditorsUI.getTooltipAffordanceString(), new ErlInformationPresenter(true)); }