Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.jface.text
Interface IInformationControl

All Known Implementing Classes:
AbstractInformationControl, DefaultInformationControl

public interface IInformationControl

Interface of a control presenting information. The information is given in the form of an input object. It can be either the content itself or a description of the content. The specification of what is required from an input object is left to the implementers of this interface.

If this information control is used by a AbstractHoverInformationControlManager then that manager will own this control and override any properties that may have been set before by any other client.

The information control must not grab focus when made visible using setVisible(true). In order to provide backward compatibility for clients of IInformationControl, extension interfaces are used as a means of evolution. The following extension interfaces exist:

  • IInformationControlExtension since version 2.0 introducing the predicate of whether the control has anything to show or would be empty
  • IInformationControlExtension2 since version 2.1 replacing the original concept of textual input by general input objects.
  • IInformationControlExtension3 since version 3.0 providing access to the control's bounds and introducing the concept of persistent size and location.
  • IInformationControlExtension4 since version 3.3, adding API which allows to set this information control's status field text.
  • IInformationControlExtension5 since version 3.4, adding API to get 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.

Clients can implement this interface and its extension interfaces, subclass AbstractInformationControl, or use the (text-based) default implementation DefaultInformationControl.

Since:
2.0
See Also:
IInformationControlExtension, IInformationControlExtension2, IInformationControlExtension3, IInformationControlExtension4, IInformationControlExtension5, AbstractInformationControl, DefaultInformationControl

Method Summary
 void addDisposeListener ( DisposeListener listener)
          Adds the given listener to the list of dispose listeners.
 void addFocusListener ( FocusListener listener)
          Adds the given listener to the list of focus listeners.
  Point computeSizeHint ()
          Computes and returns a proposal for the size of this information control depending on the information to present.
 void dispose ()
          Disposes this information control.
 boolean isFocusControl ()
          Returns whether this information control (or one of its children) has the focus.
 void removeDisposeListener ( DisposeListener listener)
          Removes the given listeners from the list of dispose listeners.
 void removeFocusListener ( FocusListener listener)
          Removes the given listeners from the list of focus listeners.
 void setBackgroundColor ( Color background)
          Sets the background color of this information control.
 void setFocus ()
          Sets the keyboard focus to this information control.
 void setForegroundColor ( Color foreground)
          Sets the foreground color of this information control.
 void setInformation ( String information)
          Sets the information to be presented by this information control.
 void setLocation ( Point location)
          Sets the location of this information control.
 void setSize (int width, int height)
          Sets the size of this information control.
 void setSizeConstraints (int maxWidth, int maxHeight)
          Sets the information control's size constraints.
 void setVisible (boolean visible)
          Controls the visibility of this information control.
 

Method Detail

setInformation

void setInformation(
String information)
Sets the information to be presented by this information control.

Replaced by IInformationControlExtension2.setInput(Object).

Parameters:
information - the information to be presented

setSizeConstraints

void setSizeConstraints(int maxWidth,
                        int maxHeight)
Sets the information control's size constraints. A constraint value of SWT.DEFAULT indicates no constraint. This method must be called before computeSizeHint() is called.

Note: An information control which implements IInformationControlExtension3 may ignore this method or use it as hint for its very first appearance.

Parameters:
maxWidth - the maximal width of the control to present the information, or SWT.DEFAULT for not constraint
maxHeight - the maximal height of the control to present the information, or SWT.DEFAULT for not constraint

computeSizeHint

Point computeSizeHint()
Computes and returns a proposal for the size of this information control depending on the information to present. The method tries to honor known size constraints but might return a size that exceeds them.

Returns:
the computed size hint

setVisible

void setVisible(boolean visible)
Controls the visibility of this information control.

Note: The information control must not grab focus when made visible.

Parameters:
visible - true if the control should be visible

setSize

void setSize(int width,
             int height)
Sets the size of this information control.

Parameters:
width - the width of the control
height - the height of the control

setLocation

void setLocation(
Point location)
Sets the location of this information control.

Parameters:
location - the location

dispose

void dispose()
Disposes this information control.


addDisposeListener

void addDisposeListener(
DisposeListener listener)
Adds the given listener to the list of dispose listeners. If the listener is already registered it is not registered again.

Parameters:
listener - the listener to be added

removeDisposeListener

void removeDisposeListener(
DisposeListener listener)
Removes the given listeners from the list of dispose listeners. If the listener is not registered this call has no effect.

Parameters:
listener - the listener to be removed

setForegroundColor

void setForegroundColor(
Color foreground)
Sets the foreground color of this information control.

Parameters:
foreground - the foreground color of this information control

setBackgroundColor

void setBackgroundColor(
Color background)
Sets the background color of this information control.

Parameters:
background - the background color of this information control

isFocusControl

boolean isFocusControl()
Returns whether this information control (or one of its children) has the focus. The suggested implementation is like this (fShell is this information control's shell):
return fShell.getDisplay().getActiveShell() == fShell

Returns:
true when the information control has the focus, otherwise false

setFocus

void setFocus()
Sets the keyboard focus to this information control.


addFocusListener

void addFocusListener(
FocusListener listener)
Adds the given listener to the list of focus listeners. If the listener is already registered it is not registered again.

The suggested implementation is to 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.

Parameters:
listener - the listener to be added

removeFocusListener

void removeFocusListener(
FocusListener listener)
Removes the given listeners from the list of focus listeners. If the listener is not registered this call has no affect.

Parameters:
listener - the listener to be removed

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire