← Back to team overview

kicad-developers team mailing list archive

Re: bad dialogs


jean-pierre.charras@... wrote:
> Wayne Stambaugh a écrit :
>> Dick Hollenbeck wrote:
>>> Wayne Stambaugh wrote:
>>> See the attached for another example. Questions I would ask about this
>>> one are:
>>> 1) Why are some column titles capitalized and others not?
> This dialog was created from an older dialog (in fact the old popup 
> menu), using copy/paste.
> Some sentances capitalizations where modifed and others no (forgotten).
> This must be corrected.
>>> 2) Why are the grid row titles not even readable?
> I did not tested it under Linux. Under Windows, no problem.
>>> 3) What is the difference between Via size and Via Diameter?
> Pcbnew uses only circular vias, so there is no difference between size 
> and diameter.
> But i was thinking square vias could be supported, so this is the reason 
> i first used size instead of diameter.
> Because last Design rule dialog was using Via diameter, i used this last 
> name.
> Could an english speaker say what is the better name.
> In fact there is an error in columns labels, because i entered in 
> wxFormBuilder 6 column labels and there is only 5 column.
> (wxFormBuilder does not prompt you on a such error), and i did not 
> noticed this.
> Labels are not in the right place.
> I commited a change for this
>>> 4) Why is the grid not expanding as the dialog is expanding, (obviously
>>> the window has been expanded since it was opened)?
>>> 5) Why is the bottom button panel not expanding as the window is 
>> expanding?
>> 6) Why is wxStdDialogButtonSi zer not being used for the cancel button?
>> 7) Why are buttons being used instead of check boxes for the setting
>> states if this is a modal dialog?
> This is an attempt to minimize mouse clicks.
> In fact, when i designed this dialog, i was hesitated to choose a Radio 
> box + an Ok button ( i.e. a wxStdDialogButtonSi zer ) or 5 Ok buttons + 
> 1 Cancel button.
> Good or bad idea ?
> I do not know.


I think most users will find more than one OK button confusing because
historically the OK button generally means accept the changes made in
the dialog box. I would use check boxes here to enable or disable the
settings. If you are using these buttons to change the underlying
drawing by directly accessing the parent window, you should make this to
a modeless dialog and use events to update the parent window. This
allows you to keep the dialog and parent window manipulation code
independent of each other which makes the code easier to read, more
maintainable, and the dialog reusable.


>> 8) Why is the word ALL in all caps?
> This is imported from the old dialog (in fact a popup menu, now removed 
> and replaced by this dialog)
> Users must take notice to the fact some editions are global, and are a 
> bit dangerous.
> An other good or bad idea ?
> I do not know.
>> 9) Why is there no padding between the dialog frame and top most sizer
>> to prevent the controls from crowding against the dialog frame?
> This is only an unwanted result (a side effect...) of some trials and 
> changes i made to create this dialog
>> This is one of the biggest complaints I get from people when I recommend
>> using Kicad is how confusing and just plain ugly some of the dialog
>> boxes are. I have been using the sample dialog in the GNOME UI
>> Guidelines as my standard for creating dialogs. It can be found at:
>> http://library. gnome.org/ devel/hig- book/stable/ design-window. 
>> html.en 
>> <http://library.gnome.org/devel/hig-book/stable/design-window.html.en>
> Useful link. I did not know it.
> This is more easy to understand that my other link.
>>> I would offer to fix this one, but I cannot be confident that I could
>>> even understand well enough what it is supposed to be doing, so I might
>>> "break" it.
>>> Can anybody offer me guidance, I am glad to help as long as positive
>>> changes dont' get lost?
> Please, feel free to fix these problems, and mainly sizes problems, that 
> can by seen very different
> from a computer to an other (depending on default fonts types or/and 
> size you are using ... )


Follow ups