edu.washington.cs.supple.wlib.java2.pointer
Class AbstractPointerListWidget

java.lang.Object
  extended byedu.washington.cs.supple.render.AbstractWidget
      extended byedu.washington.cs.supple.render.SimpleWidget
          extended byedu.washington.cs.supple.wlib.java2.SimpleSwingWidget
              extended byedu.washington.cs.supple.wlib.java2.ListWidget
                  extended byedu.washington.cs.supple.wlib.java2.pointer.AbstractPointerListWidget
All Implemented Interfaces:
java.lang.Cloneable, java.util.EventListener, java.beans.PropertyChangeListener, SwingWidget, UnwrappedWidget, Widget
Direct Known Subclasses:
AbstractTouchListWidget, PointerList10Widget, PointerList5Widget

public abstract class AbstractPointerListWidget
extends ListWidget

Author:
kgajos

Field Summary
 
Fields inherited from class edu.washington.cs.supple.wlib.java2.ListWidget
dataEdit, elementType, exactLength, list, LIST_SIZE_PROPERTY, LIST_WIDTH_SCALE_PROPERTY, listLength, listPane, listWidthScale, selectionListener, selectionMode, selectionModel, updatingWidget, vtype
 
Fields inherited from class edu.washington.cs.supple.wlib.java2.SimpleSwingWidget
currentComponent, finalComponent
 
Fields inherited from class edu.washington.cs.supple.render.AbstractWidget
bag, cost, engaged, object, parent, stateVar, textLabel, type, widgetDescriptor, wrapper
 
Fields inherited from interface edu.washington.cs.supple.render.Widget
MAX_HINT, NO_BORDER, NO_NAME, TOP_LEVEL_WIDGET
 
Constructor Summary
AbstractPointerListWidget(UiObject object, int listSize, double widthScale)
           
AbstractPointerListWidget(UiObject object, WidgetDescriptor wd, WidgetFactory f)
           
 
Method Summary
protected  javax.swing.JComponent buildList()
          Overriding method in AbstractListWidget.
protected  javax.swing.event.ListSelectionListener getSelectionListener()
          Overrides method in AbstractListWidget -- in this widget we generate a selection listener that does nothing.
protected  void toggleSelection(java.awt.event.MouseEvent e)
          In response to a mouse click, it toggles selection of the clicked item
 
Methods inherited from class edu.washington.cs.supple.wlib.java2.ListWidget
addLegalValues, addSelection, deleteLegalValues, disengage, displayDetails, engage, generateWidgetDescriptor, getAddDiffs, getDeleteDiffs, getEffortEstimate, getLengthScale, getListLength, getListModel, getListSelectionModel, getPreferredSize, getSwingComponent, getWidgetProperties, getWidthScale, isComponentReady, isExactLength, isSelectedIndex, isUpdating, legalValuesChanged, removeSelection, rendersObject, setEnabled, setUpdating, toString, updateDetailsState, updateSelection, updateSelection, updateValue, valueChanged
 
Methods inherited from class edu.washington.cs.supple.wlib.java2.SimpleSwingWidget
getConcreteWidget, getSize, refreshDisplay
 
Methods inherited from class edu.washington.cs.supple.render.SimpleWidget
childIterator, hasChildren
 
Methods inherited from class edu.washington.cs.supple.render.AbstractWidget
anotherPropertyChanged, clone, clone, dismissCurrentView, displayDynamic, equals, executeAction, getBag, getConcreteWidget, getCost, getParent, getPath, getSizeCache, getTextLabel, getType, getUiObject, getWidgetDescriptor, indexChanged, isEngaged, isEquivalent, likelyValuesChanged, propertyChange, reportActionExecutionEvent, reportValueChangedEvent, setBag, setCost, setParent, setSizeCache, setValue, setWrapper, unwrapWidget
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.washington.cs.supple.render.Widget
childIterator, clone, clone, getBag, getConcreteWidget, getCost, getPath, getSizeCache, getTextLabel, getType, getUiObject, getWidgetDescriptor, hasChildren, isEngaged, isEquivalent, setBag, setCost, setParent, setSizeCache, setWrapper, unwrapWidget
 

Constructor Detail

AbstractPointerListWidget

public AbstractPointerListWidget(UiObject object,
                                 int listSize,
                                 double widthScale)
Parameters:
object -
listSize -

AbstractPointerListWidget

public AbstractPointerListWidget(UiObject object,
                                 WidgetDescriptor wd,
                                 WidgetFactory f)
Method Detail

getSelectionListener

protected javax.swing.event.ListSelectionListener getSelectionListener()
Overrides method in AbstractListWidget -- in this widget we generate a selection listener that does nothing. That's the right thing to do because all selection events are generated by us and not by the Swing UI.

Overrides:
getSelectionListener in class ListWidget

buildList

protected javax.swing.JComponent buildList()
Overriding method in AbstractListWidget. We use superclass to build the list widget but we remove all mouse listeners from it and add our own.

Overrides:
buildList in class ListWidget

toggleSelection

protected void toggleSelection(java.awt.event.MouseEvent e)
In response to a mouse click, it toggles selection of the clicked item

Parameters:
e - mouse event containing the location of the click (which can then be translated into the index of the clicked element)