Re: Modifying properties of several objects at the same time



On 22 Oct 2003, Ben Hetland wrote:
Hi everybody,

On Fri, 10 Oct 2003 14:24:19 +0200, Daniele Pighin wrote:
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.

That is a useful possibility.

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 is the hard part.  Suggestions or even patches for this would be most
welcome.

There's also a problem of figuring out which ones have the same setting,
but that's mostly a problem of understanding properties.

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).

It's essential that different kinds of objects can be changed together.
Currently, the properties dialog for a group only shows the intersection of
properties.  We could imagine a number of more or less confusing solutions:
One page with common properties, selection of what types of objects to
affect, etc.

However, this is not very useful without proper handling of multi-value
properties.  Anyone willing to work on this should probably start by
looking at the multi-value problem.

-Lars

-- 
Lars Clausen (http://shasta.cs.uiuc.edu/~lrclause)| 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]