Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[nebula-dev] [compositetable] different suggestions

Hi!

I plan to use compositeTable as a replacement to classic tableViewer in
my current Eclipse RCP client. I have to display 100'000+ rows and I was
very pleased by its design. I have several extensions I plan I could
post patches of, but I'd like to check my ideas with Dave Orme first:

- dialog cells:
I have cells that display references. When a user wants to edit them I
have to present a dialog that shows possible values and the possiblity
to delete the current reference (ok, cancel, delete). I started looking
trough your key handling in InternalCompositeTable and I'll probably use
space & double Click to activate the dialog. 

- navigation & cell activation
One important requirement is key based navigation. I tried to use native
combos in cells and everything works fine on my gtk+ box. You can press
alt+arrow down to show the list of selectable values. CCombo on the
other hand looses the focus when navigating in the list. I assume that
this is due to the difference where combo keys are handled natively.
CCombo fails to superseed its binding to the internalCompositeTable
bindings. If you try to navigate the items with the arrow key, the list
gets closed and the table passes the focus to the next (lower) cell. I
admit, that it would be nice to have a common behaviour to all cells,
ex. space activates additional editing-widgets. But this would lead to a
celleditor-like API. I suppose that's not what you wanted to end in?

- columns?
Another feature I think of is the capability to show/hide columns. The
current code uses a pure row based design. It would probably be nice to
refactor it to know the concept of columns, too. The framework could
supply default column implementations for common data types. ex. an
Integer-column would supply a text widget whereas Boolean-columns would
supply a checkbox. Another benefit would be the possibility to supply
default comparator support with it. A user implementator could have a
working table with a minimum of code.

I'd appreciate your feedback a lot!

Greetings
André



Back to the top