Short Term TODO items:

Bonobo Issues:
	1. DnD does not seem to be working, it always defaults to "destroy column".
	2. Cursor location is not propagated (no feedback).

Functionality:

	2. Implement GUI grouping.
	3. Implement context menu on item-bars.
	4. Implement config tool for the view.
	5. Add multi-sorting.

GUI:
	1. Implement behaviours for "line-selection"
	2. Implement good behaviour for editing.
	3. Use the theme information for the captions.
	4. Use the font from the widget style.
	5. Fix the update problems when a group is resized.

Implement e-cell-height
Implement computation of heights from the e-cell-heights
Make sure we compute the height from that
Include spacing in columns and rows for the decoration lines
Add threshold to compute a "global" size 
Implement the two methods for row finding: by full thing, or by a factor.


+ Add editing
mouse grabbing for scrolling


1. Make sure that all values are updated on header changes and table
   model changes (they are slightly out of sync now)

* Correctness

	* Make sure we can boot and shutdown with no memory leaks.

	* Run Insure on the thing.

+ * Propagation

+ 	* Row changes should be reflected in the subsets.



* Add an ETable::get_specification method to get the current layout information.

	* Add input and output of column widths and minimum column widths.

+ * Add GUI sort

	* Add depressed button state to ETableHeaderItem?

* Add GUI grouping

	* Create ETableGroupItem class.
	* Make it work.  (A large step)

* Add a context menu

	* Define the menu
	* Create the menu object.
	* Hook up all the menu items.

* Add a possible column list GUI

	* Create ETableColumnList class.
	* Hook it up to ETableHeader.
	* Figure out the correct semantics for the connection between the ETableHeader and the ETableColumnList.
	* Implement widget display.
	* Implement drag&drop.

* Add closing and openning of groups

	* Add + button to group display.
	* Build in semantics for clicking on the button.
	* Make sub items hide & show.
	* Resize group.
	* Figure out how to save this data.

* Data entry ("Click here to add...")

	* Add "Allocate" to the ETableModel
	* Implement ETableDataEntry (a subclass of ETableModel).
	* Build GUI for the data entry model.  This should be fairly simple.

* Usability

	* When the widget grows, the columns should resize to occupy all the
	  available space

* Draw little arrows for new column position instead of little triangles.
* Make new column position be closest to position instead of rounding to the left.
* Copy gtk_dnd as e_dnd.

* Fix known bug about navigating out of the bottom of the table.