edu.cmu.hcii.calo.view.iconwell.IconWellView Class Reference

Inherits edu.cmu.hcii.calo.view.CALOComponent.

Inheritance diagram for edu.cmu.hcii.calo.view.iconwell.IconWellView:

Inheritance graph
[legend]
Collaboration diagram for edu.cmu.hcii.calo.view.iconwell.IconWellView:

Collaboration graph
[legend]
List of all members.

Detailed Description

A view that shows a matrix of icons, one of which shows the task viewer window and all the others of which do nothing because they're not implemented.

The view also intelligently rearranges its icons when its width changes.

Author:
Brian Ellis


Public Member Functions

 IconWellView ()
 Constructs an IconWellView.

Protected Member Functions

void paintComponent (Graphics g)
 
See also:
javax.swing.JComponent.paintComponent(java.awt.Graphics)


Protected Attributes

TaskViewerPanel taskViewer
 The task viewer panel.

Private Member Functions

void addIconAndLabel (ImageIcon icon, String labelText, String tooltipText)
 Adds the given icon and label to the button list, with the given tooltip text.
void layoutButtonsInColumns (JPanel panel, int numColumns)
 Does what the method name implies.
void recomputeLayout ()
 Causes the button panel to lay itself out again, possibly changing the number of columns in which it displays buttons and also possibly showing or hiding text labels depending on the available space.
void setup ()
 Sets up the visual appearance of this view.

Private Attributes

BindingMaker bm
 A binding maker for layout purposes.
JPanel buttonPanel
 The panel on which the buttons will be placed.
List< IconButtonbuttons
 The list of all buttons we intend to put on the panel.
Map< IconButton, JLabel > labels
 The mapping between each button and its label.
TaskViewerController taskViewerController
 The controller for the task viewer.

Static Private Attributes

static final long serialVersionUID = -2349200075305110326L
 Prevent serialization collisions.

Classes

class  ThisDontWorkYetListener
 An action listener subclass that displays a message saying what the clicked button would do if it were implemented. More...


Constructor & Destructor Documentation

edu.cmu.hcii.calo.view.iconwell.IconWellView.IconWellView (  ) 

Constructs an IconWellView.


Member Function Documentation

void edu.cmu.hcii.calo.view.iconwell.IconWellView.paintComponent ( Graphics  g  )  [protected]

See also:
javax.swing.JComponent.paintComponent(java.awt.Graphics)

Reimplemented from edu.cmu.hcii.calo.view.TranslucentView.

void edu.cmu.hcii.calo.view.iconwell.IconWellView.addIconAndLabel ( ImageIcon  icon,
String  labelText,
String  tooltipText 
) [private]

Adds the given icon and label to the button list, with the given tooltip text.

Parameters:
icon the icon
labelText the text of the label
tooltipText the text that should go on the tool tip

void edu.cmu.hcii.calo.view.iconwell.IconWellView.layoutButtonsInColumns ( JPanel  panel,
int  numColumns 
) [private]

Does what the method name implies.

The panel must be using a RelativeLayout for this to work.

Parameters:
panel the panel to lay out the buttons on
numColumns the number of columns to use
numColumns 

void edu.cmu.hcii.calo.view.iconwell.IconWellView.recomputeLayout (  )  [private]

Causes the button panel to lay itself out again, possibly changing the number of columns in which it displays buttons and also possibly showing or hiding text labels depending on the available space.

void edu.cmu.hcii.calo.view.iconwell.IconWellView.setup (  )  [private]

Sets up the visual appearance of this view.


Member Data Documentation

final long edu.cmu.hcii.calo.view.iconwell.IconWellView.serialVersionUID = -2349200075305110326L [static, private]

Prevent serialization collisions.

Reimplemented from edu.cmu.hcii.calo.view.CALOComponent.

TaskViewerPanel edu.cmu.hcii.calo.view.iconwell.IconWellView.taskViewer [protected]

The task viewer panel.

BindingMaker edu.cmu.hcii.calo.view.iconwell.IconWellView.bm [private]

A binding maker for layout purposes.

JPanel edu.cmu.hcii.calo.view.iconwell.IconWellView.buttonPanel [private]

The panel on which the buttons will be placed.

List<IconButton> edu.cmu.hcii.calo.view.iconwell.IconWellView.buttons [private]

The list of all buttons we intend to put on the panel.

Map<IconButton, JLabel> edu.cmu.hcii.calo.view.iconwell.IconWellView.labels [private]

The mapping between each button and its label.

TaskViewerController edu.cmu.hcii.calo.view.iconwell.IconWellView.taskViewerController [private]

The controller for the task viewer.


The documentation for this class was generated from the following file:
Generated on Mon Aug 13 15:06:24 2007 for CALO by  doxygen 1.5.2