Interface IInformationControlExtension5

All Known Implementing Classes:
AbstractInformationControl, DefaultInformationControl

public interface IInformationControlExtension5
Extension interface for IInformationControl. Adds API
  • to test the visibility of the control,
  • to test whether another control is a child of the information control,
  • to compute size constraints based on the information control's main font and
  • to return a control creator for an enriched version of this information control.

Important: Enriching this information control only works properly if IInformationControl.isFocusControl() is implemented like this (fShell is the control's shell):

 return fShell.getDisplay().getActiveShell() == fShell
 
Likewise, IInformationControl.addFocusListener(org.eclipse.swt.events.FocusListener) should install listeners for SWT.Activate and SWT.Deactivate on the shell and forward events to the focus listeners. Clients are encouraged to subclass AbstractInformationControl, which does this for free.
Since:
3.4
See Also:
  • Method Details

    • containsControl

      boolean containsControl(Control control)
      Tests whether the given control is this information control or a child of this information control.
      Parameters:
      control - the control to test
      Returns:
      true iff the given control is this information control or a child of this information control
    • isVisible

      boolean isVisible()
      Returns:
      true iff the information control is currently visible
    • computeSizeConstraints

      Point computeSizeConstraints(int widthInChars, int heightInChars)
      Computes the width- and height constraints of the information control in pixels, based on the given width and height in characters. Implementors should use the main font of the information control to do the characters-to-pixels conversion. This is typically the dialog font.
      Parameters:
      widthInChars - the width constraint in number of characters
      heightInChars - the height constraint in number of characters
      Returns:
      a point with width and height in pixels, or null to use the subject control's font to calculate the size
    • getInformationPresenterControlCreator

      IInformationControlCreator getInformationPresenterControlCreator()
      Returns the rich information control creator for this information control.

      The returned information control creator is used to create an enriched version of this information control, e.g. when the mouse is moved into this control and it needs to be enriched or when it needs to be made sticky for other reasons.

      The returned information control creator must create information controls that implement IInformationControlExtension3 and IInformationControlExtension2, and whose IInformationControlExtension2.setInput(Object) accepts all inputs that are also supported by this information control.

      Note that automatic enriching of this information control works only if it also implements IInformationControlExtension3.

      This method may be called frequently, so implementors should ensure it returns quickly, e.g. by caching the returned creator.

      Returns:
      the information presenter control creator or null to disable enriching