{
String value = values.get (i);
int pos = value.indexOf (':');
if (pos < 0)
{
GoPoint point = parsePoint (value);
if (point == null)
setWarning ("Point list argument contains PASS");
else
m_pointList.add (point);
}
else
{
GoPoint point1 = parsePoint (value.substring (0, pos));
GoPoint point2 = parsePoint (value.substring (pos + 1));
if (point1 == null || point2 == null)
{
setWarning ("Compressed point list contains PASS");
continue;
}
int xMin = Math.min (point1.getX (), point2.getX ());
int xMax = Math.max (point1.getX (), point2.getX ());
int yMin = Math.min (point1.getY (), point2.getY ());
int yMax = Math.max (point1.getY (), point2.getY ());
for (int x = xMin; x <= xMax; ++x)
for (int y = yMin; y <= yMax; ++y)
m_pointList.add (GoPoint.get (x, y));
}
}