private void printShape(Shape shapes)
{
if (shapes == null)
return;
Styles styles = null;
if (shapes instanceof ShapeWithStyle)
{
styles = new Styles(((ShapeWithStyle)shapes).getFillStyles(),
((ShapeWithStyle)shapes).getLineStyles());
}
for (ShapeRecord shape : shapes.getShapeRecords())
{
indent();
if (shape instanceof StyleChangeRecord)
{
StyleChangeRecord styleChange = (StyleChangeRecord)shape;
out.print("<styleChange ");
if (styleChange.isStateMoveTo())
{
out.print("dx=\"" + styleChange.getMoveDeltaX() + "\" dy=\"" +
styleChange.getMoveDeltaY() + "\" ");
}
if (styleChange.isStateFillStyle0())
{
out.print("fillStyle0=\"" +
(styles.getFillStyles().indexOf(styleChange.getFillstyle0()) + 1) + "\" ");
}
if (styleChange.isStateFillStyle1())
{
out.print("fillStyle1=\"" +
(styles.getFillStyles().indexOf(styleChange.getFillstyle1()) + 1) + "\" ");
}
if (styleChange.isStateLineStyle())
{
out.print("lineStyle=\"" +
(styles.getFillStyles().indexOf(styleChange.getLinestyle()) + 1) + "\" ");
}
if (styleChange.isStateNewStyles())
{
out.println(">");
indent++;