Re: Dia's user interface (Keyboard friendly dialogs)

On Mon, 22 Apr 2002, Rob Campbell wrote:
Setting the properties of a UML object (and others, I assume, but I only
use UML) can be tedious, because of the lack of logical tab-order and
accelerator keys.  For example, on the attrbiutes page of the class
object, Tab cycles thru the tabs of the notebook and OK, Apply, and
Close.  It never reaches New, Delete, Move Up, or Move Down.  Once you
click on New (or click in a data field), the Name field gets the focus
and you can tab forward and backward thru the other data fields.  But if
you go past the last field accidentally, you leave the "scope" of that
tab order and can't go back.  Also, as soon as you press Enter to
complete the entry for that attribute, you leave the scope and need to
use the mouse to start entering another attribute.

I think this is GTK default behaviour, but I could be wrong:  Tab cycles
through the tabs of the notebook, to enter one, you need to use
down-arrow.  I agree that this is not obvious.  On the other hand, it seems
to me that having Tab go through all the things on the notebook page before
going to the next tab would make it difficult to cycle the tabs.  Maybe
that could be alleviated by introducing shortcuts for the tabs (Alt-*).

I think that the simplest solution is to have Tab and Shift+Tab to cycle
thru every control on a page.  An improvement would be to have inactive
controls be skipped until they are somehow activated.  For example, on
the Operations page, Tab would eventually cycle thru to the New Paramter
button.  But it would not cycle thru the parameter-related fields until
the user selects New Parameter.  Then the tab order would revert to the
original order.

Inactive controls are already skipped (they are ghosted).

The tab order should include the list of existing attributes, operations,
or other data types.  Pressing tab again would tab to the next control.
Using the arrow keys (and maybe pressing an unshifted letter key?) would
scroll thru the list.  Pressing Enter would behave as if that entry was
clicked with the mouse, i.e., populate the data fields with its values.

Apart from having to use downarrow to enter the tab, the tabbing works as
described.  Enter does not select the entry, though, which is a mistake.

More intelligent behavior could be developed, but I think this simple
change fixes 80% of the problem.  The other 20% could be fixed by adding
accelerator keys to every field and control, including the notebook tabs.
This would allow you to jump to any field, including greyed out ones.

Yes, accellerator keys would be good.  Not sure how to do them for the
Operations tab.


Lars Clausen (| Hårdgrim of Numenor
"I do not agree with a word that you say, but I   |----------------------------
will defend to the death your right to say it."   | Where are we going, and
    --Evelyn Beatrice Hall paraphrasing Voltaire  | what's with the handbasket?

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]