org.eclipse.xtext.ui.editor.hover.html
Class DefaultEObjectHoverProvider

java.lang.Object
  extended by org.eclipse.xtext.ui.editor.hover.html.DefaultEObjectHoverProvider
All Implemented Interfaces:
IEObjectHoverProvider
Direct Known Subclasses:
XbaseHoverProvider

public class DefaultEObjectHoverProvider
extends java.lang.Object
implements IEObjectHoverProvider

Returns a html string as documentation. Delegates to another IEObjectDocumentationProvider and adds the objects type and label at the beginning.

Author:
Christoph Kulla - Initial contribution and API, Sven Efftinge

Nested Class Summary
protected static class DefaultEObjectHoverProvider.BackAction
           
protected static class DefaultEObjectHoverProvider.ForwardAction
           
 class DefaultEObjectHoverProvider.HoverControlCreator
           
protected  class DefaultEObjectHoverProvider.OpenDeclarationAction
          Action that opens the current hover input element.
 class DefaultEObjectHoverProvider.PresenterControlCreator
           
 
Nested classes/interfaces inherited from interface org.eclipse.xtext.ui.editor.hover.IEObjectHoverProvider
IEObjectHoverProvider.IInformationControlCreatorProvider
 
Constructor Summary
DefaultEObjectHoverProvider()
           
 
Method Summary
protected  void addLinkListener(org.eclipse.jface.internal.text.html.BrowserInformationControl control)
           
protected  void addLinkListener(IXtextBrowserInformationControl control)
           
protected  org.eclipse.emf.common.util.URI createURI(org.eclipse.emf.ecore.EObject o)
           
protected  java.lang.String getDocumentation(org.eclipse.emf.ecore.EObject o)
           
protected  XtextElementLinks getElementLinks()
           
protected  java.lang.String getFirstLine(org.eclipse.emf.ecore.EObject o)
           
 org.eclipse.jface.text.IInformationControlCreator getHoverControlCreator()
           
protected  XtextBrowserInformationControlInput getHoverInfo(org.eclipse.emf.ecore.EObject element, org.eclipse.jface.text.IRegion hoverRegion, XtextBrowserInformationControlInput previous)
           
 IEObjectHoverProvider.IInformationControlCreatorProvider getHoverInfo(org.eclipse.emf.ecore.EObject object, org.eclipse.jface.text.ITextViewer viewer, org.eclipse.jface.text.IRegion region)
           
protected  java.lang.String getHoverInfoAsHtml(org.eclipse.emf.ecore.EObject o)
           
 org.eclipse.jface.text.IInformationControlCreator getInformationPresenterControlCreator()
           
protected  java.lang.String getLabel(org.eclipse.emf.ecore.EObject o)
           
protected  org.eclipse.jface.viewers.ILabelProvider getLabelProvider()
           
protected  java.lang.String getStyleSheet()
           
protected  boolean hasHover(org.eclipse.emf.ecore.EObject o)
           
protected  java.lang.String loadStyleSheet()
          Loads and returns the hover style sheet.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultEObjectHoverProvider

public DefaultEObjectHoverProvider()
Method Detail

getHoverInfoAsHtml

protected java.lang.String getHoverInfoAsHtml(org.eclipse.emf.ecore.EObject o)

getHoverInfo

protected XtextBrowserInformationControlInput getHoverInfo(org.eclipse.emf.ecore.EObject element,
                                                           org.eclipse.jface.text.IRegion hoverRegion,
                                                           XtextBrowserInformationControlInput previous)

hasHover

protected boolean hasHover(org.eclipse.emf.ecore.EObject o)

getDocumentation

protected java.lang.String getDocumentation(org.eclipse.emf.ecore.EObject o)

getFirstLine

protected java.lang.String getFirstLine(org.eclipse.emf.ecore.EObject o)

getLabel

protected java.lang.String getLabel(org.eclipse.emf.ecore.EObject o)

getLabelProvider

protected org.eclipse.jface.viewers.ILabelProvider getLabelProvider()

getElementLinks

protected XtextElementLinks getElementLinks()

createURI

protected org.eclipse.emf.common.util.URI createURI(org.eclipse.emf.ecore.EObject o)

addLinkListener

protected void addLinkListener(org.eclipse.jface.internal.text.html.BrowserInformationControl control)
This method is not intended to be referenced by clients.
This method is not intended to be referenced by clients.
This method is not intended to be extended (re-implement with a call to the overridden parent) or re-implemented (with no call to the overridden parent) by clients.
This method is not intended to be re-implemented or extended by clients.

addLinkListener

protected void addLinkListener(IXtextBrowserInformationControl control)
Since:
2.3

getInformationPresenterControlCreator

public org.eclipse.jface.text.IInformationControlCreator getInformationPresenterControlCreator()

getHoverControlCreator

public org.eclipse.jface.text.IInformationControlCreator getHoverControlCreator()

getStyleSheet

protected java.lang.String getStyleSheet()

loadStyleSheet

protected java.lang.String loadStyleSheet()
Loads and returns the hover style sheet.

Returns:
the style sheet, or null if unable to load

getHoverInfo

public IEObjectHoverProvider.IInformationControlCreatorProvider getHoverInfo(org.eclipse.emf.ecore.EObject object,
                                                                             org.eclipse.jface.text.ITextViewer viewer,
                                                                             org.eclipse.jface.text.IRegion region)
Specified by:
getHoverInfo in interface IEObjectHoverProvider
Parameters:
object - EObject for which to show an information hover.
viewer - - might not contain the given EObject.
region - - might be a cross reference pointing to the given object.
Returns:
an to be shown in a hover pop up, returns null if no hover information exists for the given element.