[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [riena-dev] Table Ridget
comments below. I discussed the API issues with Carsten.
Am 30.05.2008 um 22:15 schrieb Volanakis, Elias:
a few comments on the ITableRidget interface. We can discuss these
points on Monday.s
1. bindToModel(...,String columnPropertyNames, String
It's not specified what happens when columnPropertyNames.length !=
columnHeaders.length. My implementation handles this gracefully and
ignores missing / additional columns. An alternative would be to
Should we document this in the interface?
I believe its better to notify the developer of a programming error
than handle it "gracefully"
which probably does NOT mean the same to everybody. So please throw a
runtime exception and
note that behaviour in the interface.
2. bindToModel(..., String columnPropertyNames, String
Can columnHeaders be null? My implementation allows null on the basis
that the ListRidget (also implementing ITableRidget) allows null,
because the List widget does not have headers. This is done in order
keep the "handling" of bindToModel similar across different uses
it easier for the app developer. If columnHeaders is null, the table
will have it's headers hidden automatically. (The Swing implementation
does not allow null.)
We should decide if null is ok and document.
I think null for a single entry in the header is ok (no header for
that column) and null in
total for all headers (no visible headers for this table) is also ok.
And yes that should
go into the javadoc.
We think that calling setComporator(sortedColumnIndex, null) is pretty
odd and not prefered.
3. Unsorting a column programmatically:
is not allowed but it still be accomplished using
Is there a preference one way or the other?
setSortedColumn(-1) looks a lot better even if it might call the other
4. My implementation uses a "creative" way (i.e. unicode char) to
"sortable" indicator in the table header. We should discuss if we want
to keep this.
I like your "creative" character. Also the way to set the column to
ascending, descending, not sorted by clicking on
the header is just the prefered way to do this. I think the Swing
implementation is still missing the unsorted state.
We should add a method to the Ridget interface to allow or disallow
moving of columns. "setReorderingAllowed(bool)". We can discuss
5. My implementation makes all columns moveable by the user by
This may override different settings of the app developer.
the default. I think it should be "false".
I talk to you later.....
BTW I checked out the riena.example and the table does not show any
content (System Properties). Anything I am doing wrong here ?
351 NW 12th Avenue
Portland, Oregon 97209
riena-dev mailing list