Re: Modifying properties of several objects at the same time
From: Ben Hetland <Ben A Hetland sintef no>
To: dia-list gnome org
Subject: Re: Modifying properties of several objects at the same time
Date: Wed, 22 Oct 2003 16:51:19 +0200
Hi everybody,
On Fri, 10 Oct 2003 14:24:19 +0200, Daniele Pighin wrote:
>
> I was wondering whether it was possible to introduce a way to be able to
> modify several objects' properties at the very same time, as it would be very
> useful and time saving, especially for large diagrams.
I suddenly got this idea to how a solution for a GUI for this could
behave in a very flexible way IMO. I just share the idea so we all
can elaborate on it or spawn better ideas... :-)
The idea is perhaps a variant of the following proposal:
>
> method 3 - popup oriented: when selecting several objects and then clicking on
> "properties", present a popup with the appropriate widgets to edit any
> property which is common to all selected objects. All of these widget would
> initially be disabled (each would be enabled by an appropriate checkbox):
> when enabling one or more fields, editing and applying, all of the selected
> objects would have the corresponding property changed.
Instead of being able to edit only the common properties, which is
merely the intersection set of the all sets of properties for the
individually selected object, one could present a popup dialog
having a selector at the top (e.g., combo box or tabbed dialog
widget). The selection available here would be the type names of all
kinds of objects included in the current selection.
The rest of the dialog box would be the same dialog as the
Properties dialog for the selected object type in the selector. The
size of the dialog window could either re-adjust itself on every
selector change, or it could simply be the maximum size required to
fit in the windows below the selector.
This would now enable us to manipulate the _union_ set of all
properties.
But if for example "Standard - Line" was selected, its property
sheet would be displayed. Consider now that there happened to be
several such objects included in the selection:
Now, some of the properties have the same settings in all objects;
Those fields can just be enabled and the common setting shown.
If the property in question does NOT have the same value in all
selected objects, however, then the field should still be enabled
(i.e. modifiable), but doesn't show any real value. It could also be
"dimmed down" or something to visually aid in the concept that there
are really multiple values around. If the user does not touch this
setting at all, then the properties should remain unchanged in all
objects. But if the user sets a different value, then that will be
set in all objects of that type.
This solution is the most flexible, I think, and it also handles the
case where different kinds of objects happen to share a property
name which isn't really the same property. But I'm not sure that it
really handles the situation that some common property among
different object types might be better handled if it's only
displayed at one [common] place (and not repeated on every type's
property sheet).
Regards,
-+-Ben-+-