/**
* Get the GraphicElement properties...
*/
public static List getGraphicPropertySets(JRDesignGraphicElement element, JasperDesign jd)
{
JRDesignDataset dataset = ModelUtils.getElementDataset(element, jd);
List list = new ArrayList();
Sheet.Set propertySet = Sheet.createPropertiesSet();
propertySet.setName("GRAPHIC_ELEMENT_PROPERTIES");
propertySet.setDisplayName("Graphic properties");
//propertySet.put(new PenProperty( element ));
propertySet.put(new JRPenProperty(element.getLinePen(), element));
propertySet.put(new FillProperty( element ));
list.add(propertySet);
if (element instanceof JRDesignImage)
{
Sheet.Set imagePropertySet = Sheet.createPropertiesSet();
imagePropertySet.setName("IMAGE_ELEMENT_PROPERTIES");
imagePropertySet.setDisplayName("Image properties");
imagePropertySet.put(new ImageExpressionProperty((JRDesignImage)element, dataset));
imagePropertySet.put(new ImageExpressionClassNameProperty((JRDesignImage)element) );
imagePropertySet.put(new ScaleImageProperty( (JRDesignImage)element ));
imagePropertySet.put(new HorizontalAlignmentProperty( (JRDesignImage)element ));
imagePropertySet.put(new VerticalAlignmentProperty( (JRDesignImage)element ));
imagePropertySet.put(new ImageUsingCacheProperty( (JRDesignImage)element ));
imagePropertySet.put(new LazyProperty( (JRDesignImage)element ));
imagePropertySet.put(new OnErrorTypeProperty( (JRDesignImage)element ));
imagePropertySet.put(new ImageEvaluationTimeProperty((JRDesignImage)element, dataset));//, dataset));
imagePropertySet.put(new EvaluationGroupProperty((JRDesignImage)element, dataset));
list.add(imagePropertySet);
}
else if (element instanceof JRDesignLine)
{
Sheet.Set linePropertySet = Sheet.createPropertiesSet();
linePropertySet.setName("LINE_ELEMENT_PROPERTIES");
linePropertySet.setDisplayName("Line properties");
linePropertySet.put(new LineDirectionProperty( (JRDesignLine)element ));
list.add(linePropertySet);
}
else if (element instanceof JRDesignRectangle)
{
Sheet.Set rectanglePropertySet = Sheet.createPropertiesSet();
rectanglePropertySet.setName("RECTANGLE_ELEMENT_PROPERTIES");
rectanglePropertySet.setDisplayName("Rectangle properties");
rectanglePropertySet.put(new RadiusProperty( (JRDesignRectangle)element ));
list.add(rectanglePropertySet);
}
else if (element instanceof JRDesignEllipse)
{
// Nothing to do...
}
return list;
}