TableRowSpec

TableRowSpec

Superclass
TableValuesSpec

Subclasses
none

Referenced By
TableInterfacesSpec, TableValuesSpec

This class holds the components of a row of a table.  Each component is to be put into each
cell of that row of a table.  Its total value is just itself, since the row is considered
to be the atomic element when doing arithmetic calculations.

Each component is calculated by using the specifications held in the variables elements
and operators.  The elements can be any of the following:
1.  ValueCollection -- For calculation, the total value is used.  Ultimately, all elements
must be transformed to this class.
2.  String -- The key to the instance of TotalValuesCollection, where the values are stored
in the elements dictionary.
3.  Number -- In this case, the number points to a specific row of the table that holds
this class.  Therefore, if the number is 3, then the TotalValuesCollection is the row spec
of the third row.
4.  #total -- In this case, the TotalValuesCollection is the total of the table that holds
this row.
5.  #(String Number) -- The string is the name of the table and the number is the row of
the table.  Again it is a row spec.
6.  #(String #total) -- The total value of the table is desired.

Of the above, only the first two should remain.  The others are transformed before
calculation so that this class is not dependent on other table  or tables specs for
information.  It should be dependent only on the elements dictionary.
After the bad dependencies have been removed, then the elements are applied the operators
to obtain a final value.  This value is one component.  All components, except those that
are dependent on other columns, are calculated this way.

Instance variables:
label <String> The label of the row on the table interface.
elements <Collection> The elements used to create components.
operators <Collection of: Symbol> The operators for each element. The size should be equal to the size of the elements.
format <Symbol> The format of how the component values should be displayed.
doubleClickBlock <BlockClosure> The block that is executed if the row is clicked twice. Developed By: Joseph W. Yoder (yoder@cs.uiuc.edu) and Jee Ku (jku@cat.ncsa.uiuc.edu)

Potential problems with this comment:
	Instance variable commented but not in class definition - 
		doubleClickBlock
	Instance variable not commented - 
		doubleClickSpecArray