3.0 & 3.1.0 up to 3.1.3-svn5390 bug with DoesNotStack tr

I’m not sure who monitors bugs logged directly in SourceForge. So, just in case nobody noticed, I post here the link to a weird behavior I noticed in all 3.x version even in latest svn5390 build in the “does not stack” trait:

sourceforge.net/tracker/?func=de … p_id=90612

David

Thanks for a well documented bug report, with example module.

We have a problem.

As part of 3.0, I regularized the handling of click-selections on counters to match the common usage pattern:- clicks and shift-clicks select counters, ctrl-click and ctrl-shift-click deselect counters.

At this point, Ctrl-Shift-click now both Selects and Deselects a ‘Ctrl-shift Does Not Stack’ counter. Deselecting wins the battle and the counter ends up deselected.

Ctrl-shift should never have been added as an selection option to Does Not Stack units, it should have probably have been alt-shift, which has no counter deselection connotation.

Since this has not worked for quite some time, I propose that we change the Does Not Stack alternate behaviour to be ‘alt-shift’ selectable. We can add this a bug fix in 3.1.3 and it will work immediately with counters currently recorded as ‘shift-click’ selectable.

B.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Warning: Under most Windows Operating Systems since Windows XP (XP, 2003 Server & Vista), pressing the left “Alt” key + Shift will force a change of language/locale and will switch between the current locale & US-EN. This is in fact a toggle, so pressing this combo again, revert to original locale. Windows OS in non US-EN version default to installing the local keyboard setup AND the US-EN layout.

Most “basic” Windows users are not aware of this and could go crazy trying to figure out what happened and when :slight_smile:
And many of them usually remove the little taskbar/systray tool that reminds them of which locale is currently in use (usually it just displays EN or FR in my case in the taskbar) so they won’t notice easily. With Vista it’s even worse: the little taskbar indicator is not activated by default…

Thus if Alt+Shift is used to select DoesNotStack game pieces, it will switch the keyboard to US-EN QWERTY at the same time whereas Ctrl+Shift has no such side effects.
Since most of use are right-handed, we tend to press the Ctrl, Alt & Shift
on the left side of the keyboard while using mouse in right hand.

This would affect all non US/EN users of Windows OS and that’s quite a few
:slight_smile:

So Alt+Shift is a dangerous combo as the left Alt is the most used.

Thus spake “Aradiel”:

Augh, that’s awful. What do Windows users do when faced with programs (like
drawing and image manipulation programs) where various combinations of Alt,
Ctrl, and Shift modify the tool in use?


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Only one Alt is used to change keyboard layout and language. One can be used normally.

Sure, only the left Alt + Shift does this but as I wrote, the majority is right handed and will almost always press Ctrl, Alt or Shift using lefthand while using mouse in right hand.

I don’t remember if the right Alt is just “Alt” on US-EN keyboard or not, but on non US-EN keyboard it’s often “Alt Gr” or something like this and is used to access special characters not commonly used in the local language.

For instance, on a FR-FR keyboard the right “Alt Gr” is used mostly for typing:
#{[|`@]}€

We could keep the Alt+Shift combo but as stated this could cause much trouble to unsuspecting users…

That being said, I modified my module to only use Shift+Click to select special markers that should not be easily moved while we discuss a decision/solution

Hmm, left Alt is used to switch languages, while right Alt is also out because it is used to enter special characters like ą (right Alt+a) etc. in languages that have more characters than the standard 26.

What about Alt-Ctrl-click?

Alt and Ctrl are both modifiers, so Alt-Ctrl together without another key should do nothing?

B.

*********** REPLY SEPARATOR ***********

On 29/03/2009 at 10:01 AM Aradiel wrote:


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Alt-Ctrl suits me fine!

I already use Alt+Ctrl+ pretty often in my module and there has been no side effect using those two modifiers keys at the same time.

Thus spake “Brent Easton”:

I’ve read through this whole thread twice and I feel like I don’t yet
understand the problem fully.

One one hand, we have that Windows uses Alt + Shift to change keyboard
maps, so I guess we should’t use Alt + Shift for anything. Furthermore,
many non-US keyboards have AltGr insted of a right Alt, so again using
Alt + Shift is problematic. This is the part I understand.

The usual meaning of Ctrl + Shift + Click is to select the intersection
of the previously selected area and the lassoed area. Is it a good idea
to use that also for selecting nonstacking pieces? Why is the selection
behavior different for nonstacking pieces, anyway?


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

I was not aware of the ctrl-shift-click intersection connotation. In terms of counter selection it makes sense with a lasso - Select any units I have lassoed that are already selected.

Current Vassal Unit selection protocol:

click = clear current selection and select the unit you click/lasso
shift-click = add the clicked/lassoed unit(s) to the current selection
ctrl-click = remove the clicked/lassoed unit(s) from the current selection
ctrl-shift-click = nothing, but defaults to same action as ctrl-click

‘Does not stack’ pieces originally had a choice of 3 selection filters :-

  1. Normal selection
  2. You must be pressing Shift to select the unit
  3. Unit cannot be selected

There was seen to be a need for an additional selection filter between 2 or 3 that was less likely to be chosen accidentally. shift-click is great for units that you want players to be able to move, but with a little difficulty. It is too easy to accidentally shift-click on units like Terrain that the module designer want to place manually, but then not get moved.

Some person, who shall rename nameless because they where obviously having a bad day and should therefore be considered innocent in this whole matter, decided that ctrl-shift would be a good modifier to use as an additional optional selection filter and this was added.

Then the Unit Selection Protocol was properly implemented and ctrl-shift to select a ‘Does not stack’ unit suddenly conflicts with ctrl-click to remove from a selection.

The current problem exists because ctrl-shift-click should never have been chosen as an option as a selection filter and we need to choose an alternative.

But it seems Ctrl cannot be used because of it’s ‘remove from selection’ connotation.

Perhaps just straight Alt-click?


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Geez, I never thought it would raise such a discussion about units selection protocols :wink:

Always willing to help by poking my nose around in rarely used features 8)

If you want me to test builds incorporating the changes proposed, feel free to ask :slight_smile: