Re: setRange on IsoContour gives NullPointerException

Hi John,

>In order make it more useable I have had to change the source code of
>SpreadSheet.java, as it does not lend itself to being easily extended. 

As I mentioned to Peter Cao, if you have any specific suggestions about
how to make the SpreadSheet easier to use or more extensible, feel free
to mention them.  I am interested in any ideas you might have to make
the Spread Sheet a friendlier piece of software.

>I am also extending FancySSCell - as such, i also needed to change the
>source code of the SpreadSheet to allow a SSCell other than FancySSCell
>to be used.  I had to make one other change to the VisAD source.  The
>FormulaManager used by BasicSSCell, as it is written, must be the one
>created by the createStandardManager() method of FormulaUtil.  The
>FormulaManager created by this method is not suitable for my needs. 

An easy solution to this problem would be for me to add constructors to
BasicSSCell and SpreadSheet that take a FormulaManager object.  Then,
you could easily write a short method to create your desired
FormulaManager and spawn a Spread Sheet UI.

>making "Save SpreadSheet" really save the SpreadSheet

Do you mean that this feature was broken and you fixed it, or that you
modified it to save serialized data from each cell?  If the feature isn't
working for you, I'd of course like to determine why and provide a bug
fix to anyone else who may be affected by the bug.  If you modified it,
then I'll consider adding a menu item to the Setup menu called "Save
entire spreadsheet," or something like that, since you are not the first
person to express interest in such a feature.

>making formulae and frequently used mappings more accessible.

If you have usability improvements to the GUI that you are willing to
share and that you think would benefit the VisAD community at large,
I am very interested in adding them to the Spread Sheet source.

>One signifigant step that needs to be made is to make cell
>resizing work correctly.  maybe this problem does not come up on
>Solaris, but on NT the relationship between the locations yellow resize
>tabs and the actual size of the cells quickly breaks down.  eventually,
>cell resizing stops working altogether, especially if you try to use
>many cells.  also, the cells do not redraw themselves when a resize
>occurs, meaning the user has to go around and click in every cell in
>order to force a resize.

I developed the Spread Sheet on NT, and have seen the redraw problems
with the cells after a resize, but I haven't experienced the resizing
mechanism actually breaking down.  I admit that the layout manager for
the Spread Sheet is a bit flaky, and I am going to overhaul it in the
next month or so.  Maybe I'll eliminate the problem you describe in the
process of fixing the other bugs I've noticed in the resizing logic.

>There is another problem, and, again, maybe this is just on NT:  I can't
>seem to get the cursor to "pan."  It should pan when you drag with the
>middle mouse button, but instead, it rotates the scene with the cursor
>on, as is supposed to happen when you hold down control when you are
>draggin with the middle mouse button.

Actually, panning the scene is accomplished by holding Shift and dragging
with the left mouse button.  The middle mouse button turns the cursor on,
letting you examine data values.

Within the next month, I will be working to implement a lot of the
suggestions given by Peter Cao and John Brecht, as well as fixing many
of the long-standing Spread Sheet bugs, such as the problems John has
described with the resizing logic.  If anyone else has bug reports or
suggestions for extending the Spread Sheet, the next couple of weeks
would be a great time to let me know.

-Curtis