Re: Dia's user interface



According to Lars Clausen <lrclause cs uiuc edu>:

After reading <URL:http://www106.pair.com/rhp/free-software-ui.html> about
user interfaces in open-source software, I would like to hear if anybody
on the list knows something about user interfaces (more than just from
having used a bunch).  If there are any, could you point out the worst
problems that Dia has in its interface?  I'd like to turn some attention to
that as we work towards a 1.0 release.

I think I know a little about user interface. So I'll try to give my
opinion for what it is worth.

First apologize if I say things that have already been told, but for
the sake of consistency, I'll just tell them.

The Diagram Window
==================

By default, the Diagram Window should have a menu bar. Currently the
option is not on by default (because I did that change and wanted it
not to be intrusive...). This is a switch to set in preferences. 
I know that some people will argue, so let it along since at least
that can be toggled. :-)

Properties Dialog
-----------------
it can be opened using Dialog->Property. If no object is selected this
menu should be disabled. Anyway, I'll talk about how this should
really work instead. The Properties dialog should act like an
"instpector". A floating toolbar that changes its content upon
selections. If nothing it selected, it becomes empty, but stays here.
That is not the current behavior. It does not update, unless you
"reopen it". That is not user friendly as you may select another
object, then click apply to discover that the wrong object has been
changed.... :-/ BAD. (I know, this happened to me several time, and I
won't told you how frustrated I was with that).


Selecting and manipulating objects
----------------------------------

Only one problem, but it is an annoyance. The middle (or right) button
that is used to trigger object specific action should select before
raising the menu. Because the intuitive way it point and click....

And these commands should be available from the main menu and/or the
properties, because restricting to contextual menu is just not good.
Contextual menus are shortcuts. Nothing more.

The backspace key should be used for object deletion. The arrow keys
for precise moving.

Mouse selection is not always as precise as one wishes: sometimes, for
smal object, it resize it instead of moving. And I haven't clicked in
the handle but within the object.

Menus
-----

The menu "File" should have a MRU of last opened file like the
toolbox "File" menu.

The tools menu should be customized to show tools like in the toolbox.

There should be a Window menu allowing to switch to other open
diagram... I know that a window manager should be able to handle that,
but.

The property dialog
===================

This property dialog should have tabs for object specific properties.
In case of multiple selection, it should handle that and allow mixed
states and changing parameter globally on the whole selection.

The buttons
-----------

There should be only 3 buttons:

[Apply]: to apply current properties
[Close]: to close the dialog without changes. This one can also be
avoided as the close box for the windows does the same.
[Revert]: don't save properties and revert to what the object is
currently.

The [OK] button is currently confusing, and since I described a non
modal property "inspector", this button has no more reasons to be.

Line properties
---------------

Arrows: the same pictograms should be used in the properties dialog
and in the toolbox... The properties dialog currently use text name
for arrow types, which is not as easy to guess.

Same to line styles.

All
---

We should have choice beetween several units for size, and for text,
default should be "points".
List of units:
 cm
 mm
 in
 pt
Pixels (px) is unlikely to be because we don't work at pixel level in
Dia...

I'm sure I have other ideas and comments. Like for example having
movable palettes for tools, etc. But much more sophisicated than the
basic changes I talked about here.

Feel free to comment.


Hub

Attachment: pgpJJ1NugHrD_.pgp
Description: PGP signature



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