net.xoetrope.swt
Class XToolTip

java.lang.Object
  extended by org.eclipse.swt.widgets.Widget
      extended by org.eclipse.swt.widgets.Control
          extended by org.eclipse.swt.widgets.Label
              extended by net.xoetrope.swt.XToolTip
All Implemented Interfaces:
java.util.EventListener, XAttributedComponent, org.eclipse.swt.events.MouseListener, org.eclipse.swt.events.MouseTrackListener, org.eclipse.swt.graphics.Drawable, org.eclipse.swt.internal.SWTEventListener

public class XToolTip
extends org.eclipse.swt.widgets.Label
implements org.eclipse.swt.events.MouseTrackListener, org.eclipse.swt.events.MouseListener, XAttributedComponent

A Tooltip class for AWT components. Unlike other XUI-AWT components the tooltips are not added via the component factory. In this initial implementation tooltips must be added explicitly.

Copyright (c) Xoetrope Ltd., 2002-2004

$Revision: 1.1 $

License: see License.txt


Field Summary
protected  org.eclipse.swt.graphics.Font font
           
protected  int HORIZONTAL_ENLARGE
           
protected  int lag
           
protected  org.eclipse.swt.widgets.Composite mainComposite
           
protected  org.eclipse.swt.widgets.Control owner
           
protected  boolean shown
           
protected  boolean showTip
           
protected  java.lang.String tip
           
protected  net.xoetrope.swt.XToolTip.TooltipThread tooltipThread
           
protected  int VERTICAL_OFFSET
           
 
Fields inherited from class org.eclipse.swt.widgets.Control
handle
 
Constructor Summary
XToolTip(java.lang.String tip, org.eclipse.swt.widgets.Control owner)
          Create anew tooltip
 
Method Summary
protected  void addToolTip(org.eclipse.swt.graphics.Point pt)
          Add a tooltip
protected  void calcsize()
          Get the size
 java.lang.String getTip()
          Get the tip's text
 void mouseDoubleClick(org.eclipse.swt.events.MouseEvent e)
           
 void mouseDown(org.eclipse.swt.events.MouseEvent e)
          Invoked when a mouse button has been pressed on a component.
 void mouseEnter(org.eclipse.swt.events.MouseEvent e)
          Invoked when the mouse enters a component.
 void mouseExit(org.eclipse.swt.events.MouseEvent e)
          Invoked when the mouse exits a component.
 void mouseHover(org.eclipse.swt.events.MouseEvent e)
           
 void mouseUp(org.eclipse.swt.events.MouseEvent e)
           
protected  void removeToolTip()
          Remove a tooltip
 int setAttribute(java.lang.String attribName, java.lang.Object attribValue)
          Set one or more attributes of the component.
 void setTip(java.lang.String newTip)
          Get the tip's text
protected  void setToolTipLocation(org.eclipse.swt.graphics.Point pt)
          Set a tooltip location
protected  void showTip(org.eclipse.swt.graphics.Point pt)
          Show the tooltip at the specified point
 
Methods inherited from class org.eclipse.swt.widgets.Label
computeSize, getAlignment, getImage, getText, setAlignment, setImage, setText
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addFocusListener, addHelpListener, addKeyListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addPaintListener, addTraverseListener, computeSize, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, redraw, redraw, removeControlListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removePaintListener, removeTraverseListener, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setEnabled, setFocus, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setSize, setSize, setToolTipText, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkSubclass, checkWidget, dispose, getData, getData, getDisplay, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, setData, setData, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

tip

protected java.lang.String tip

owner

protected org.eclipse.swt.widgets.Control owner

mainComposite

protected org.eclipse.swt.widgets.Composite mainComposite

shown

protected boolean shown

VERTICAL_OFFSET

protected final int VERTICAL_OFFSET
See Also:
Constant Field Values

HORIZONTAL_ENLARGE

protected final int HORIZONTAL_ENLARGE
See Also:
Constant Field Values

font

protected org.eclipse.swt.graphics.Font font

showTip

protected boolean showTip

lag

protected int lag

tooltipThread

protected net.xoetrope.swt.XToolTip.TooltipThread tooltipThread
Constructor Detail

XToolTip

public XToolTip(java.lang.String tip,
                org.eclipse.swt.widgets.Control owner)
Create anew tooltip

Parameters:
tip - the tip text
owner - the owner component
Method Detail

getTip

public java.lang.String getTip()
Get the tip's text

Returns:
the tooltip text

setTip

public void setTip(java.lang.String newTip)
Get the tip's text

Parameters:
newTip - the new text

addToolTip

protected void addToolTip(org.eclipse.swt.graphics.Point pt)
Add a tooltip

Parameters:
pt - point

calcsize

protected void calcsize()
Get the size


setToolTipLocation

protected void setToolTipLocation(org.eclipse.swt.graphics.Point pt)
Set a tooltip location

Parameters:
pt - point

removeToolTip

protected void removeToolTip()
Remove a tooltip


showTip

protected void showTip(org.eclipse.swt.graphics.Point pt)
Show the tooltip at the specified point

Parameters:
pt -

mouseExit

public void mouseExit(org.eclipse.swt.events.MouseEvent e)
Invoked when the mouse exits a component.

Specified by:
mouseExit in interface org.eclipse.swt.events.MouseTrackListener

mouseEnter

public void mouseEnter(org.eclipse.swt.events.MouseEvent e)
Invoked when the mouse enters a component.

Specified by:
mouseEnter in interface org.eclipse.swt.events.MouseTrackListener
Parameters:
e - mouse event

mouseDown

public void mouseDown(org.eclipse.swt.events.MouseEvent e)
Invoked when a mouse button has been pressed on a component.

Specified by:
mouseDown in interface org.eclipse.swt.events.MouseListener
Parameters:
e - mouse event

mouseUp

public void mouseUp(org.eclipse.swt.events.MouseEvent e)
Specified by:
mouseUp in interface org.eclipse.swt.events.MouseListener

mouseHover

public void mouseHover(org.eclipse.swt.events.MouseEvent e)
Specified by:
mouseHover in interface org.eclipse.swt.events.MouseTrackListener

mouseDoubleClick

public void mouseDoubleClick(org.eclipse.swt.events.MouseEvent e)
Specified by:
mouseDoubleClick in interface org.eclipse.swt.events.MouseListener

setAttribute

public int setAttribute(java.lang.String attribName,
                        java.lang.Object attribValue)
Set one or more attributes of the component.

Specified by:
setAttribute in interface XAttributedComponent
Parameters:
attribName - the name of the attribute
attribValue - the value of the attribute
Returns:
0 for success, non zero for failure or to require some further action