this is basically using the undo strategy from transform_active_color
(16cb13b8a0).
NOTE: it would be even possible to use transform_active_color() all the
way, but this would require more refactoring and additionally, current
code in fill_mesh_color() does a cast which alters Alpha mode (not sure
if this is desired even, but wouldnt want to change this behavior with
this patch) which does not happen in transform_active_color() -- I think
it would be best to look at this separately and possibly unify code at a
later point.
It is a common practice in gamedev to rely on coding various data into
the alpha channel of the mesh and there was no way to preserve that when
using the `Set Vertex Colors` operator.
Now add an "Affect Alpha" option (similar to what we have for brushes)
and when that is disabled, existing alpha is locked.