This is a universal interface to mark instances to support selection.
It supports up to 32 sources or users for mark. The management of users should be defined
at user level. A source is represented by a bit in the 32-bit-value of the mask.
Usual only one source for selection may existing.
It is possible that two or less more sources do a mark independently.
The class SelectMask is the standard implementation. A derived class can inheritance
from that class if another superclass isn't necessary. This may be usual for small data classes.
Usage of the oData parameter:
| maybe a table container
| maybe an Object
which should be
The oData maybe instance of SelectMask_ifc, but maybe another one, depends on the first Implementor.
Removes the mark bits of the object for the given source.
static final int version
Version, history and license.
2013-04-28 Hartmut rename: This interface is called now 'MarkMask_ifc' instead 'SelectMask_ifc'.
It is a problem of wording: The instances are only marked, not yet 'selected'. See application
of this interface in org.vishia.gral.widget.GralFileSelector: A selected line is the current one
or some marked lines.
2013-04-28 Hartmut chg: Use the mask for selection of mark bits.
2013-04-28 Hartmut chg: new parameter data proper to use. Adaption necessary. Left it empty if it don't need.
2011-11-28 Hartmut creation
For this source the LGPL Lesser General Public License,
published by the Free Software Foundation is valid.
You can use this source without any restriction for any desired purpose.
You can redistribute copies of this source to everybody.
Every user of this source, also the user of redistribute copies
with or without payment, must accept this license for further using.
But the LPGL is not appropriate for a whole software product,
if this source is only a part of them. It means, the user
must publish this part of source,
but don't need to publish the whole source of the own product.
You can study and modify (improve) this source
for own using or for redistribution, but you have to license the
modified sources likewise under this LGPL Lesser General Public License.
You mustn't delete this Copyright/Copyleft inscription in this source file.
If you are intent to use this sources without publishing its usage, you can get
a second license subscribing a special contract with the author.