Re: GtkComboBox design -- first draftThis, of course, brings up the somewhat philosophical question of "what is a combo". About the only commonality between all the examples that have been raised so far is that there is a widget of some type with some type of arrow next to, or on it that, when clicked on causes some type of popup.
- From: "Bryan W. Headley" <bwheadley earthlink net>
- To: gtk-devel-list gnome org
- Subject: Re: GtkComboBox design -- first draftThis, of course, brings up the somewhat philosophical question of "what is a combo". About the only commonality between all the examples that have been raised so far is that there is a widget of some type with some type of arrow next to, or on it that, when clicked on causes some type of popup.
- Date: Mon, 01 Apr 2002 13:08:24 -0600
| This, of course, brings up the somewhat philosophical question of
| "what is a combo". About the only commonality between all the
| examples that have been raised so far is that there is a widget of
| some type with some type of arrow next to, or on it that, when clicked
| on causes some type of popup.
A combo is a behavior pattern; not a true widget per se. Informational
dialogs, file selection panels, color selection wheels all fall into
that category. What's interesting is that there's little low-level
coding involved; these are metawidgets comprised of several pre-written
widgets.
The commonality in the different forms of comboboxes, in terms of event
handling, etc., will be realized in the "factory" widgets I proposed
before. (Factory #1: the list of strings as labels enclosed in a list;
Factory #2, the menu with pushbuttons, Factory #3, the grid of iconic boxes)
The differences in can be generalized via ... traits. See: STL. After
going nuts, revisit the thought and consider whether I'm right or no.
Some things don't fit into this scheme:
- The drop down GtkCalender in GnomeDateEdit
Gee, thousands of copies of Quicken sell for the ease of the pulldown
calendar. Quick! What's the date of two weeks from next Tuesday? It's
not a data validation widget, it's a convenience widget!
Along the same vein, if a ComboBox were to bring up a little calculator,
because I don't want to force the user to remember that 20*20 is 400,
why not? It too is a non-validating ComboBox...
- Popdowns allowing multiple selection, and an explict "OK"
to pop back up. (Use a dialog!)
Okay, I'll use a dialog. What do I care? But!
1. It's more inconvenient for me to program a dialog with 20, 30
checkboxes than one widget with a GList of values. It's also slightly
harder to use by touch typists.
2. The users want to see what was selected by looking at a single widget
on the main panel (w/o bringing up the dialog)
So, what you are looking at is the pop-up, pop-down, and single-source
widget for browsing. Name the usage pattern...
-oo-
I agree with you about the style guide and key/mouse navigation issues.
But you take a risk. The code is open, and anyone can write a mutated
widget that behaves differently than yours. Market conventions will
direct what they do...
--
____ .:. ____
Bryan W. Headley - bwheadley earthlink net
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]