
On 2007-April-14 , at 01:08 , bulia byak wrote:
On 4/13/07, jiho <jo.irisson@...400...> wrote:
Indeed, it seems the selector tool is out of modifiers. In fact there is already a conflict: you used ALT for touch selection which steels it from "Select under".
Nope, it was just a bug that I just found myself and fixed :) Alt+click selects under, Alt+drag selects by touch. No conflict here. Should work properly now, please test.
That was quick!
[...]
I am studying keys.svg and trying to come up with a decent solution but I guess there is a point when a toggle will be needed to accommodate for different sets of behaviors.
Maybe... but I'll keep trying :)
OK, so I have some more meat for you to bite in then ;) I studied keys.svg and experimented with a test drawing (http:// jo.irisson.free.fr/dropbox/selection_test_case.svg) and I concluded that the current behavior is:
Clic = selects Shift+clic = toggles selection Ctrl+clic = selects within group Alt+clic = selects under Ctrl+Alt+clic = when the selection is empty, first selects in group and then further clics select under, through the group and possibly underneath ; when a group is already selected, selects underneath it without entering the group Shift+Ctrl+clic = toggles selection, entering in groups Shift+Ctrl+Alt+clic = when the selection is empty, adds to selection, then adds to selection underneath (entering in groups), and then toggles the selection of the front most object ; when a group is already selected, adds to selection under the selected group, then adds to selection underneath (entering in groups if necessary), and then toggles the selection of the front most object ; (wow that was complex... and not very useful probably)
Drag = select what is inside Shift+Drag = add to selection what is inside Ctrl+Drag = move object hor/ver when selection not empty ; select first touched object and moves hor/ver when selection empty Alt+Drag = move object when selection not empty ; touch selection when selection empty Shift+Ctrl+Drag = identical to Ctrl+Drag Ctrl+Alt+Drag = move object hor/ver when selection not empty ; does nothing on empty selections Shift+Ctrl+Alt+Drag = idem (move object hor/ver when selection not empty ; does nothing on empty selections)
I think I was exhaustive. Most of it is really great (for me, one of Inkscape main strengths) but some details could be improved which would leave room for even greater improvements!
Proposed changes: => Ctrl+Alt+clic should display the first described behavior, even there is a group selected first (this would probably make things work the same for Shift+Ctrl+Alt+clic also). I think it is more consistent with the idea that Ctrl selects inside groups and does not contradict the idea that alt selects underneath the currently selected object => Shift+Drag should _toggle_ the selection of what is inside the selection rectangle and not just add. I cannot count the times when I would have had the use for this behavior in the past. In addition it is more consistent with Shift+clic toggle behavior. => Ctrl+Drag and Shift+Ctrl+Drag behavior is strange when the selection is empty, I think it could (should?) do nothing => similarly Alt+Drag behavior is odd when the selection is not empty. IMHO, Alt+Drag should always draw a scribble selection path now. It is more useful. (=> It would be nice if scribble paths could have the same visual aspects as rect selections)
And in the end, long term improvement: => Create full "contact" and "encircle" selection modes: . In encircle mode rect selections behave as now, scribble selection paths are automatically closed and only objects inside are selected (i.e. lasso tool) . In contact mode, rect selection behave as in AI, scribble selections paths are left as is (i.e. not closed) and behave as now Switching between the two would be most convenient through a modifier key. If the last two changes above are done, Ctrl+drag and Ctrl+Alt +drag are freed and could be used. If we consider that Ctrl switches to contact mode, we have: Ctrl+drag = contact rect selection and Ctrl +Alt+drag = contact scribble selection, and Alt+drag becomes encircle scribble selection. Otherwise, this could be achieved via a toggle (shortcut: m for "selection Mode", can't find a better one). The "issue" with this is that rect selection is probably more useful in encircle mode while scribble selection is probably more useful in contact mode so the toggle state should be independent for these two selection types (so that is is possible to switch from encircling-rect-mode to contact- scribble-mode by just pressing Alt, without having to pass through m- Alt-scribble-m).
What do you think?
JiHO --- http://jo.irisson.free.fr/