Hi,

A year ago I posted my comments about the GtkComboBox to this list,
this link shows the thread:
http://marc.theaimsgroup.com/?t=113243876900001&r=1&w=2

Still, the GtkComboBox is the biggest problem in my application. I'm
sorry to say, but the combo control is both ugly and clumsy. But as
you can read in the thread, it won't be changed soon if at all because
it's been designed this way to follow Gtk policies and UI
consistency.

Paul Pogonyshev:
> Not having such a limit is a conscious decision by GTK+ team.  Not a
> missed feature.

It IS a missed feature. Because:

1. A too big list overlaps other widgets containing useful
information. Suppose you have a form with lots of labels and entries
like a database frontend. Usually you fill in the fields from top to
bottom. So if the combobox is nearer the bottom of the screen than
top, the popuplist will popup above the gtkcombobox, therefore your
just filled in entries become invisible. This is bad and at the moment
not controllable. Being able to limit the number of rows in the
scrolled popup is useful because now it will be placed below the
gtkcombobox widget itself. Replacing gtkcombobox with a treeview is
often not suitable, see below.

2. It's ugly. This widget crosses the line where visual apealingness
becomes more important than sticking to design philosophies. The fact
that every now and then someone posts a question about setting the
maximum number of rows shows that there clearly is demand for such
features. In addition, apps like gnumeric show they come up with some
alternative selection (like the font selection in gnumeric) where the
natural choice would be GtkComboBox.

3. Gtk+ current behaviour is inconsistent. The fact that
GtkEntryCompletion does not take as much space a possible is in my
opinion contradicting to GtkComboBox. So why doesn't completion take
as much screen space as possible?


> I'm not opposed to GtkTreeView, however what I want to have is a widget
> that displays a list only durring selection and (sometimes) has a single
> editable entry field, visible all of the time, just like GtkCombo did.

The best alternative would be GtkTreeView, but in so many places it
just doesn't fit because it takes too much space, like a fontselection
in a toolbar. So you could make it into a separate window which opens
when you push the selector button (like GtkFontButton). This makes
selection not really economic: first, you have to click selector
button to open the treeview window, then you select, and then yet
another click to close the treeview window. With a proper GtkComboBox
one click could suffice.

> And please, stop taking it personally, cause that makes me take it
> personally too.

I understand :)

And please don't take my comments personally, I'm not trying to piss
people off or being a pessimist. Gtk+ as it is now is very
good. Having a decent combobox would make it really good for me.


BTW: "appears-as-list" is a read-only style property but you can force
an individual GtkComboBox to set this property like this:

combo_box=gtk_combo_box_new_text();
gtk_rc_parse_string("style \"list-combo-style\" {\n"
                    "GtkComboBox::appears-as-list=1}"
                    "widget \"*.list-combo\" style "
                    "\"list-combo-style\"");
gtk_widget_set_name(combo,"list-combo");
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to