[prev in list] [next in list] [prev in thread] [next in thread]
List: gtk-devel
Subject: Re: [gtk-list] Re: GtkEditable::activate bug or feature?
From: Owen Taylor <otaylor () redhat ! com>
Date: 2000-02-18 4:01:51
[Download RAW message or body]
Havoc Pennington <hp@redhat.com> writes:
> Owen Taylor <otaylor@redhat.com> writes:
> > From a standpoint of interface correctness, this is the right thing to
> > do. However, it does occur to me that this is sacrificing useability
> > for the user for the sake of making things a bit easier understand
> > for the programmer.
> >
>
> The simplest solution to me is to add a convenience function
> like gnome_dialog_editable_enters(). Then you keep everything
> consistent. A gnome_dialog_editable_enters() type of function is
> certainly less inconvenient than breaking all existing
> activate-related code.
gnome_dialog_editable_enters() is not an attractive solution, because
the default is wrong. To get correct behavior, you have to call it on
pretty much _every_ entry in your program.
If people programming was the only thing to consider, then we could
simply do:
if (gtk_signal_handler_pending (entry, signals[ACTIVATE], FALSE) ||
entry->klass->activate)
{
gtk_signal_emit (entry, signals[ACTIVATE]);
return TRUE;
}
else
return FALSE;
And while it is theoretically ugly, it does not break any functioning
programs, and makes the default behavior right.
Unfortunately, this isn't going to work for gtk-- and probably not
for some other language bindings as well which _always_ are going
to fill something into entry->klass_activate. We do, however, need
to solve some other problems with the default handler slot and
language bindings, so perhaps we can come up with a way of making
this work for all languages.
Regards,
Owen
--
To unsubscribe: mail gtk-devel-list-request@redhat.com with
"unsubscribe" as the Subject.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic