DavidG - 2008-05-01

The version 1.3 parameters dialog enables you to set the side compression
that determines the size of each region (the region side).
The current dialog allows you to set compression values that result
in non-integral region sides.

In principle this can be prevented from happening by validating the input.
However, it is not quite simple.
The spinners are the most convenient method for setting side compression.
But supposing the user tries to set one to an incorrect value?
In that case we can prevent it being changed in the spinner event processing.
However, this will permanently prevent the user moving through that value!

E.g. suppose 3 and 5 are correct values and the spinner is set currently to 3.
The user cannot change it to 5 because it has to move through 4 to get to 5.

A few solutions suggest themselves.

1. Only get the updates from the spinners when the user presses the OK button.
   This destroys the interactivity of the dialog - which I take to be a good feature.

2. Make the software smart so that it will click the spinner to the next valid value.
   Could be a good solution but may be hard.

3. Just put out a warning text when an invalid value is found.  This is easy to do.
   Invalid cases are pretty obvious anyway!

On reflection (having written this) I rather like (2).

The only other question is whether it is possible that non-integral values could have
some use.

Any ideas on this topic gratefully received.