Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## ix.ip2
Class AgendaViewTable

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  javax.swing.JPanel
                      ix.ip2.AgendaViewTable

All Implemented Interfaces:
  AgendaViewer, AgendaListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

Direct Known Subclasses:
  ActivityViewTable, IssueViewTable

    public abstract class AgendaViewTable

extends javax.swing.JPanel
implements AgendaViewer, AgendaListener

A viewer for a set of AgendaItems. The items are managed by an AgendaManager (usually an Agenda). The view has the shape of a table but it not represented that way internally; instead, there are objects representing rows and columns.

See Also:
  Serialized Form

Nested Class Summary
`class` | `AgendaViewTable.ActionCellRenderer`
`(package private) class` | `AgendaViewTable.ItemPopupMenu` The popup menu that appears when the user right-clicks on a item.
`(package private) class` | `AgendaViewTable.Row` A row of the table - corresponds to one item.

Nested classes/interfaces inherited from class javax.swing.JPanel
`javax.swing.JPanel.AccessibleJPanel`

Nested classes/interfaces inherited from class javax.swing.JComponent
`javax.swing.JComponent.AccessibleJComponent`

Nested classes/interfaces inherited from class java.awt.Container
`java.awt.Container.AccessibleAWTContainer`

Nested classes/interfaces inherited from class java.awt.Component
`java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary
`(package private) GridColumn` | `actionCol`
`(package private) TwoKeyHashMap` | `actionShadowingTable` Says which action to use when an item has more than one that have the same description.
`(package private) AgendaManager` | `agendaManager`
`(package private) GridColumn` | `commentsCol`
`(package private) int` | `commentsWidth`
`(package private) GridColumn` | `descriptionCol`
`(package private) int` | `descriptionWidth`
`protected Ip2` | `ip2`
`(package private) ItemEditor` | `itemEditor`
`(package private) java.util.HashMap` | `itemToRowMap` Lets us find the Row object that represents an item.
`(package private) GridColumn` | `priorityCol`
`(package private) java.util.List` | `rows` A List of rows in the order in which they were first added to the table.

Fields inherited from class javax.swing.JComponent
`accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

Fields inherited from class java.awt.Component
`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

Fields inherited from interface java.awt.image.ImageObserver
`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

Constructor Summary
`AgendaViewTable(Ip2 ip2)` Constructs a viewer for the indicated agent.

Method Summary
`protected java.lang.String` | `actionChoiceDescr(HandlerAction act)`
`void` | `addItem(AgendaItem i)`
`protected void` | `adjustSizes()`
`void` | `clearTable()` Clears what's displayed without resetting anything else.
`void` | `ensureItemEditor()`
`void` | `expandItem(AgendaItem i, Refinement instructions)`
`protected HandlerAction` | `findHandlerAction(AgendaItem item, java.lang.String shortDescription)`
`void` | `getNewItemFromUser()`
`void` | `itemAdded(AgendaEvent event, AgendaItem i)`
`void` | `itemAdded(AgendaItem i)`
`void` | `itemHandled(AgendaEvent e, AgendaItem i, HandlerAction h)`
`void` | `itemRemoved(AgendaEvent event, AgendaItem i)`
`(package private) java.awt.event.ActionListener` | `makeActionChoiceListener(AgendaItem item)` Returns a listener that can be called when the user selects an item action.
`AgendaItem` | `makeItem(LList pattern)`
`protected abstract ItemEditor` | `makeItemEditor()` Creates the item editor.
`(package private) java.awt.event.MouseListener` | `makeMouseListener(AgendaItem item)` Returns a listener than can be called when the user clicks in the text of an item description.
`(package private) java.awt.event.ActionListener` | `makePriorityChoiceListener(AgendaItem item)` Returns a listener that can be called when the user selects an item priority.
`void` | `newBindings(AgendaEvent event, java.util.Map bindings)`
`void` | `redisplay()` Clears the table then puts everything back, taking account of any changes in open/closed status.
`void` | `reset()` Sets the viewer back to something approximating its initial state.
`protected void` | `restoreSubtree(AgendaItem item)` The part of the implementation of `restoreTable()` that restores the section of the table that corresponds to the subitem tree of an item whose row is "open".
`void` | `restoreTable()` Undoes a `clearTable()`, taking into acount any changes in open/closed status.
`void` | `saveExpansion(Refinement data)`
`void` | `setAgendaManager(AgendaManager agendaManager)`
`protected void` | `setShadowingAction(AgendaItem item, java.lang.String shortDescription, HandlerAction action)`

Methods inherited from class javax.swing.JPanel
`getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI`

Methods inherited from class javax.swing.JComponent
`addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

Methods inherited from class java.awt.Container
`add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree`

Methods inherited from class java.awt.Component
`action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### ip2

    protected Ip2 ip2

### agendaManager

    AgendaManager agendaManager

### itemEditor

    ItemEditor itemEditor

### descriptionCol

    GridColumn descriptionCol

### commentsCol

    GridColumn commentsCol

### priorityCol

    GridColumn priorityCol

### actionCol

    GridColumn actionCol

### descriptionWidth

    final int descriptionWidth

### commentsWidth

    final int commentsWidth

### itemToRowMap

    java.util.HashMap itemToRowMap

  Lets us find the Row object that represents an item. An item should not be in the table until after the fields of the row have been added to the appropriate comumns.

### rows

    java.util.List rows

  A List of rows in the order in which they were first added to the table. Note this this is NOT the order in which they are listed in the table, because subitem rows can be added at any time and must be inserted below their parent and hence above any more recently added top-level entries (and their descendents).

### actionShadowingTable

    TwoKeyHashMap actionShadowingTable

  Says which action to use when an item has more than one that have the same description. The two keys are the item and the description.

Constructor Detail

### AgendaViewTable

    public AgendaViewTable(Ip2 ip2)

  Constructs a viewer for the indicated agent.

Method Detail

### setAgendaManager

    public void setAgendaManager(AgendaManager agendaManager)

  Specified by:
    `setAgendaManager` in interface `AgendaViewer`
  Specified by:
    `setAgendaManager` in interface `AgendaListener`

### ensureItemEditor

    public void ensureItemEditor()

### makeItemEditor

    protected abstract ItemEditor makeItemEditor()

  Creates the item editor. This method is defined in subclasses to instantiate the desired ItemEditor class.

### reset

    public void reset()

  Sets the viewer back to something approximating its initial state.

  Specified by:
    `reset` in interface `AgendaViewer`

### clearTable

    public void clearTable()

  Clears what's displayed without resetting anything else.

### redisplay

    public void redisplay()

  Clears the table then puts everything back, taking account of any changes in open/closed status.

### restoreTable

    public void restoreTable()

  Undoes a `clearTable()`, taking into acount any changes in open/closed status.

### restoreSubtree

    protected void restoreSubtree(AgendaItem item)

  The part of the implementation of `restoreTable()` that restores the section of the table that corresponds to the subitem tree of an item whose row is "open".

### findHandlerAction

    protected HandlerAction findHandlerAction(AgendaItem item,
                                              java.lang.String shortDescription)

### setShadowingAction

    protected void setShadowingAction(AgendaItem item,
                                      java.lang.String shortDescription,
                                      HandlerAction action)

### actionChoiceDescr

    protected java.lang.String actionChoiceDescr(HandlerAction act)

### getNewItemFromUser

    public void getNewItemFromUser()

  Specified by:
    `getNewItemFromUser` in interface `AgendaViewer`

### makeItem

    public AgendaItem makeItem(LList pattern)

  Specified by:
    `makeItem` in interface `AgendaViewer`

### addItem

    public void addItem(AgendaItem i)

  Specified by:
    `addItem` in interface `AgendaViewer`

### saveExpansion

    public void saveExpansion(Refinement data)

  Specified by:
    `saveExpansion` in interface `AgendaViewer`

### expandItem

    public void expandItem(AgendaItem i,
                           Refinement instructions)

  Specified by:
    `expandItem` in interface `AgendaViewer`

### itemAdded

    public void itemAdded(AgendaEvent event,
                          AgendaItem i)

  Specified by:
    `itemAdded` in interface `AgendaListener`

### itemAdded

    public void itemAdded(AgendaItem i)

### adjustSizes

    protected void adjustSizes()

### itemRemoved

    public void itemRemoved(AgendaEvent event,
                            AgendaItem i)

  Specified by:
    `itemRemoved` in interface `AgendaListener`

### itemHandled

    public void itemHandled(AgendaEvent e,
                            AgendaItem i,
                            HandlerAction h)

  Specified by:
    `itemHandled` in interface `AgendaListener`

### newBindings

    public void newBindings(AgendaEvent event,
                            java.util.Map bindings)

  Specified by:
    `newBindings` in interface `AgendaListener`

### makeActionChoiceListener

    java.awt.event.ActionListener makeActionChoiceListener(AgendaItem item)

  Returns a listener that can be called when the user selects an item action.

### makePriorityChoiceListener

    java.awt.event.ActionListener makePriorityChoiceListener(AgendaItem item)

  Returns a listener that can be called when the user selects an item priority.

### makeMouseListener

    java.awt.event.MouseListener makeMouseListener(AgendaItem item)

  Returns a listener than can be called when the user clicks in the text of an item description.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD