Having just the text edit window for the column data
is somewhat liimited...Would be nice to use widgets
like combobox, listbox, checkbox, radiobox, etc...
What kind of widgets would be the most useful?
I can see checkbuttons and comboboxes being really useful.
I don't think that embedded widgets will cut it though.
The issues with embedded widgets are
1) You need a widget for every cell. That's can be
expensive (especially under Windows where iconically
window creation is slow).
2) Scrolling is hard. Right now when you scroll, just
what portion's visible is drawn into a pixmap and
blit-ed it out to the screen. Embedded widgets take
one of two approaches: a) create one big child window
behind the viewport(the widget window) and place
embedded widgets on the child window (drawing
the tree on the child too). This allows for smooth
scrolling but the disadvantage is that it doesn't scale
well. The window can get prohibitively big even for
small tables. The alternative b) is to display only
the embedded widgets visible. When you scroll, the
widgets are moved to their new positions. The downside
is that scrolling is choppy. You see the widgets being
moved.
The tradeoff then is to create pseudo widgets (sometimes
called gadgets) that are drawn right along with the tree.
Scrolling will be smooth and you don't need to maintain
lots of redundant information for each cell. For example,
every gadget in a column will have the same width.
But what performance you gain with gadgets, is lost in
terms of flexibility. For example, with widgets you
can make them all different colors and fonts.
My current thinking is to add built-in check and
combo boxes (gadgets). Along with text editting,
I think this covers most (90%) editting needs.
What kind of editting do you need?
--gah
--gah
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=137748
What kind of widgets would be the most useful?
I can see checkbuttons and comboboxes being really useful.
I don't think that embedded widgets will cut it though.
The issues with embedded widgets are
1) You need a widget for every cell. That's can be
expensive (especially under Windows where iconically
window creation is slow).
2) Scrolling is hard. Right now when you scroll, just
what portion's visible is drawn into a pixmap and
blit-ed it out to the screen. Embedded widgets take
one of two approaches: a) create one big child window
behind the viewport(the widget window) and place
embedded widgets on the child window (drawing
the tree on the child too). This allows for smooth
scrolling but the disadvantage is that it doesn't scale
well. The window can get prohibitively big even for
small tables. The alternative b) is to display only
the embedded widgets visible. When you scroll, the
widgets are moved to their new positions. The downside
is that scrolling is choppy. You see the widgets being
moved.
The tradeoff then is to create pseudo widgets (sometimes
called gadgets) that are drawn right along with the tree.
Scrolling will be smooth and you don't need to maintain
lots of redundant information for each cell. For example,
every gadget in a column will have the same width.
But what performance you gain with gadgets, is lost in
terms of flexibility. For example, with widgets you
can make them all different colors and fonts.
My current thinking is to add built-in check and
combo boxes (gadgets). Along with text editting,
I think this covers most (90%) editting needs.
What kind of editting do you need?
--gah
--gah