package com.redhat.ceylon.eclipse.code.hover; import org.eclipse.jface.text.IInformationControl; import org.eclipse.jface.text.IInformationControlCreator; import org.eclipse.jface.text.IRegion; import org.eclipse.jface.text.ITextViewer; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.editors.text.EditorsUI; import org.eclipse.ui.part.IWorkbenchPartOrientation; import com.redhat.ceylon.eclipse.code.editor.CeylonEditor; public class CeylonSourceHover extends SourceInfoHover { public CeylonSourceHover(CeylonEditor editor) { super(editor); } @Override public String getHoverInfo(ITextViewer textViewer, IRegion hoverRegion) { return null; } @Override public Object getHoverInfo2(ITextViewer textViewer, IRegion hoverRegion) { return hoverRegion; } @Override public IInformationControlCreator getHoverControlCreator() { return new IInformationControlCreator() { public IInformationControl createInformationControl(Shell parent) { final int orientation = editor instanceof IWorkbenchPartOrientation ? ((IWorkbenchPartOrientation) editor).getOrientation() : SWT.NONE; return new SourceViewerInformationControl(editor, parent, false, orientation, EditorsUI.getTooltipAffordanceString()); } }; } }