com.tensegrity.gui.swt.control.buttons
Class AbstractButton

java.lang.Object
  extended byorg.eclipse.swt.widgets.Widget
      extended byorg.eclipse.swt.widgets.Control
          extended byorg.eclipse.swt.widgets.Scrollable
              extended byorg.eclipse.swt.widgets.Composite
                  extended byorg.eclipse.swt.widgets.Canvas
                      extended bycom.tensegrity.gui.swt.control.widgets.BorderedWidget
                          extended bycom.tensegrity.gui.swt.control.buttons.AbstractButton
All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable, java.util.EventListener, org.eclipse.swt.events.MouseListener, org.eclipse.swt.internal.SWTEventListener
Direct Known Subclasses:
ColorButton, GradientButton, ImageButton, MarkerButton, PatternButton, TextureButton

public abstract class AbstractButton
extends BorderedWidget
implements org.eclipse.swt.events.MouseListener

Base class for own button implementations. It makes mouse interaction and listener notification more easier. Implementing classes have to overwrite at least the mouseDown() method to specify desired actions and to generate a selection event for listener notification.

Version:
$Id: AbstractButton.java,v 1.3 2005/03/23 09:29:09 ArndHouben Exp $
Author:
Arnd Houben

Field Summary
 
Fields inherited from class com.tensegrity.gui.swt.control.widgets.BorderedWidget
indent
 
Fields inherited from class org.eclipse.swt.widgets.Control
handle
 
Constructor Summary
AbstractButton(org.eclipse.swt.widgets.Composite parent, int style)
          The general SWT default constructor
 
Method Summary
 void addSelectionListener(org.eclipse.swt.events.SelectionListener listener)
          Adds the specified SelectionListener to the list of all listeners which get notified when the button was clicked
 void mouseDoubleClick(org.eclipse.swt.events.MouseEvent e)
           
 void mouseUp(org.eclipse.swt.events.MouseEvent e)
           
protected  void notifyListeners(org.eclipse.swt.events.SelectionEvent se)
          Notifies all registered listeners about a SelectionEvent.
 void removeSelectionListener(org.eclipse.swt.events.SelectionListener listener)
          Removes the specified SelectionListener from the list of all selection listeners
protected  void widgetDisposed(org.eclipse.swt.events.DisposeEvent de)
          Called on dispose events.
 
Methods inherited from class com.tensegrity.gui.swt.control.widgets.BorderedWidget
computeSize, draw, hasBorder, setBorderColor
 
Methods inherited from class org.eclipse.swt.widgets.Canvas
getCaret, scroll, setCaret, setFont
 
Methods inherited from class org.eclipse.swt.widgets.Composite
checkSubclass, getChildren, getLayout, getTabList, layout, layout, setFocus, setLayout, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getClientArea, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addFocusListener, addHelpListener, addKeyListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addPaintListener, addTraverseListener, computeSize, forceFocus, getAccessible, getBackground, 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, setBounds, setBounds, setCapture, setCursor, setEnabled, 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, 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
 
Methods inherited from interface org.eclipse.swt.events.MouseListener
mouseDown
 

Constructor Detail

AbstractButton

public AbstractButton(org.eclipse.swt.widgets.Composite parent,
                      int style)
The general SWT default constructor

Parameters:
parent - the composite to add this AbstractButton to
style - SWT style bits
Method Detail

addSelectionListener

public final void addSelectionListener(org.eclipse.swt.events.SelectionListener listener)
Adds the specified SelectionListener to the list of all listeners which get notified when the button was clicked

Parameters:
listener - a SelectionListener instance

removeSelectionListener

public final void removeSelectionListener(org.eclipse.swt.events.SelectionListener listener)
Removes the specified SelectionListener from the list of all selection listeners

Parameters:
listener - a SelectionListener instance

notifyListeners

protected final void notifyListeners(org.eclipse.swt.events.SelectionEvent se)
Notifies all registered listeners about a SelectionEvent. This happens if the user clicks the button

Parameters:
se - a SelectionEvent instance with additional information

mouseUp

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

mouseDoubleClick

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

widgetDisposed

protected void widgetDisposed(org.eclipse.swt.events.DisposeEvent de)
Description copied from class: BorderedWidget
Called on dispose events. Implementing classes should release all their requested resources

Specified by:
widgetDisposed in class BorderedWidget
Parameters:
de - a DisposeEvent instance with additional information


Copyright © 2005 Tensegrity Software GmbH. All Rights Reserved. Date of creation: 09.06.2006.