MAR
27
2007

KDE HIG: Dialogs

Finally, the dialog section in the HIG has made some progress. Thank to Olaf who knows Qt Designer much better than I do, we found a way to create a clean dialog layout for KDE4. The trick is to use the same ratio of spacers on bottom of each group box. Read more in the guidelines!

We are planning to provide some video tutorials how to best use Designer - stay tuned. We'll also upload the ui files when we found a good location (the wiki allows only images).

I appreciate feedback on this, as well as on the other guidelines drafted on this page: "General" and "Modality". Please comment here or write a mail to ellen kde org.

Comments

This HIG section is really nice. IMO, dialogs are the part of KDE where we get a bad rep for complex UI so this section is important.

One question though, is the use of : in labels specified somewhere already?


By Will Stephenson at Tue, 03/27/2007 - 21:02

One question though, is the use of : in labels specified somewhere already?

no, not yet. not sure if it should go here or into the "Language" section. i'll add a cross reference once it's written.


By Ellen Reitmayr at Wed, 03/28/2007 - 09:07

Anyone, please post a detailed function examples? I don't now the sintax, so any help is appreciated.
Thanks,


By august at Wed, 12/19/2007 - 16:48

The guideline states;

    Widgets which are subordinate to another widget are indented by 40 Pixels. If their activation depends on the parent widget, create an appropriate slot.

I have some questions about this; First, isn't 40 pixels an awful lot? I tend to use 15.
Second; I'm not entirely clear what the second sentence means. With activation you mean it being enabled? And what is a slot?

In the example you added a spacer to the right of the checkbox. Why did you do that? The style can state if the user can click on the label or on the whole widget, so I'm not sure what the use would be to limit the users ability to click on the whole horizontal line.

Oh; one more thing; the "Be sure not to forget to create label-buddy relations and assign accelerator keys!" sounds good, but in KDE the accelerator keys are automatically added if you do the buddies. So I don't think we should ask people to add it. (Its hell to translate)

Thanks!


By Thomas Zander at Thu, 03/29/2007 - 07:20

I have some questions about this; First, isn't 40 pixels an awful lot? I tend to use 15.

the problem is that we don't yet know how wide a checkbox will be. in the current style, 15px is not enough to align it with the label. 40px is a bit much, you're right. i'll talk to the oxygen style designers to get a reasonable value.

With activation you mean it being enabled? And what is a slot?
i mean enabled (fixed in the guideline)
slots is signals/slots. does this need further explanation? should i add a footnote?

In the example you added a spacer to the right of the checkbox. Why did you do that?
i wasn't aware that the style can make the whole row clickable. i added the spacer to have less "if ... then" in the implementation suggestions ;-)

"Be sure not to forget to create label-buddy relations and assign accelerator keys!"
yeah, talked to coolo in between and he said developers should assign the important ones manually, rest is done automatically.


By Ellen Reitmayr at Thu, 03/29/2007 - 08:09

I've found the proposed layouts a bit too hard to do manually; so see here an email stating a solution I think will be useful.
http://lists.kde.org/?l=kde-core-devel&m=117560133106281&w=2
Screenshots included ;)


By Thomas Zander at Tue, 04/03/2007 - 12:10

I think the following point of guidelines should be reworked:
4. When you did this for all group boxes, determine the best ratio for the dialog's vertical axis. This step is only required if your dialog contains label-widget buddies.
* Determine the longest label on this page. Estimate what proportion it is compared to the whole dialog. If the longest label is more than two words long, consider to shorten it or break it into two lines. That makes a more balanced look.

One of the best features of Qt layout engine is that it can automatically adapt to changes in label lengths. It is very important in translated dialogs, because sometimes translation is much shorter or much longer than original. So such manual adjustments will just not work. If this is necessary, there should be some automatic way to create such look, maybe some additional QLayout type?

Krzysztof Lichota (Polish translation team)


By Krzysztof Lichota at Tue, 04/03/2007 - 14:50