Armin Le Grand wrote:
Hi Robin,
Robin Laing wrote:
I have found that the selection aspect of OOo Draw is not nice. I
select one object and then select a second one and I end up with a box
instead of individual objects. This is what is reported in 70978.
This has been my biggest problem with using OOo Draw. I just never
could put it into words as to what was the problem.
After reading this thread, I see that this is a common issue.
Now, I have used different programs that allow WYSIWYG tools for
selecting objects and most will display each individual object instead
of a block. Some have a "border" that is part of the object which can
be resized or used for wrap around features. Some of them use
animated selection lines. And the one that I like best will put a
dashed line at the border and change the visual colour to the
complementary colour.
As each item is still selected and marked as selected, the total
number of selections can be moved and then one or other items can be
dropped as needed.
Using joergwartenberg's example,
If the yellow square is selected, the border would become dashed.
Drag/shape handles would appear and the colour would change to Dark
blue with about 50% transparency. Select the blue triangle and it
would change the colour to an off yellow with a 50% transparency and a
dashed border. Now you would have two objects with a complete set of
handles for each object. A total of 12 handles.
Each object has 8 default handles, so it would be 16 here. This shows
the visual problem involved: Too many handles when You show them in a
multi selection for each object. This is one reason OOo does not do that.
I realized my error later after making my post. Still doesn't change my
thoughts though.
A different color for the control handles of the controlling set of
handles. Bright green for the controlling handles and dark green for
the passive (followers). If items are stacked, using the tab key to
move between selected items.
Allow the ctrl+space bar to add/remove items from the selected group if
wanted.
Now the fun part comes if you want to resize the selected objects.
This isn't possible with the one program that I am basing this on.
Now one could use any handle and the actions performed would affect
all the objects that are selected.
It is not possible because You cannot decide what the user wants. An
example:
We have two objects selected, A and B. Now three scenarios emerge:
(1) The selection is shown in displaying the handles for each object,
showing 16 handles.
(2) A common selection rectangle is used, showing 8 handles at the
bounds of both obects
(3) 1 and 2 are combined, 24 handles are shown.
With scenario (1) You will be only able to work with single objects,
even if multiple are selected. When trying to apply the same operation
to the other selected objects, unexpected things happen.
Example: A is top left, B is bottom right. Both selected. User graps
bottom right handle of B and starts scaling. The application has the
following choices:
- Only scale B
- Apply the same scale to A, A would get scaled but also move to the
upper left, since the relative scaling point would be top left of B ->
not expected
- Scale A and B relative to the most top left common handle -> same as
scenario (2), but what to do if the top left of B is picked (or any
handle not on the common bound)? Scale relative to common top left
handle? Relative to bottom right handle of B? Whatever You choose, it's
not what the user expects.
There are more possibilities, but all somehow strange. That's why most
applications do not offer that.
In my case I would have the same scaling for all selected objects. If I
select 5 objects and decide to scale them, I would expect all of them to
increase by the same percentage. If I then decided to drop one object,
I could and then continue scaling.
I see it as being simple that way. I see it as if I select a control
handle on one item, it would be the same as selecting the control handle
on all the items that are selected. The items are grouped but only
during the selection phase.
Scenario (2) is what OOo users know, with all advantages and disadvantages
The main problem of scenario (3) is that at least two handles exist
which directly cover each other. Somehow it needs to be decided which
one is on top. Whichever is on top, some interactions are not reachable.
But OOo offers a good alternative: You may group Your objects.
Interactions on a group are straightforward. If You want to manipulate a
single object of the group, OOo allows to enter the group (F3or
double-click) and interact with the group content (and only the group
content, objects outside are disabled, this is also visualized). Leave
group is CTRL+F3 (or doubleclick outside).
With this methods it is relative smart to work with selections. The
trick is to group selections wisely.
I hope that this explanation is clearer than mud. :)
Yes, it is :-) I hope i could make clearer where the problems are.
Suggestions are welcome!
I will also add this description to the mentioned bug...
I do see both sides of the problem and you mention grouping which is
very handy in some cases and a real pain in others.
Now if you select two objects that are on separated with one or multiple
objects between them, you now have a large rectangle with the other
objects (assumed) to be selected as well. Ouch, now you forget to
select one of the middle objects so your grouping, move or whatever
isn't correct. Or in the one case that I really remember, the grouped
selection box prevents you having total control.
The present system isn't perfect and getting it perfect could be a
problem. One thing that my work is to have a maximum space before items
are in "one" box.
As I said earlier, maybe make selections a form of dynamic grouping. I
really find option 2 to be a real pain when working with multiple objects.
The program that I found to be the best example was Paradox for Windows
in the design screen.
I just thought that maybe we have to just drop the handles from the
display until a mouse is over the handle. I will have to thing about
this some more when I get some time.
--
Robin Laing
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]