/** A check for cloning. */ public void testCloning2() { LineAndShapeRenderer r1 = new LineAndShapeRenderer(); r1.setBasePaint(Color.blue); r1.setBaseLegendTextPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue)); LineAndShapeRenderer r2 = null; try { r2 = (LineAndShapeRenderer) r1.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } assertTrue(r1 != r2); assertTrue(r1.getClass() == r2.getClass()); assertTrue(r1.equals(r2)); MyRendererChangeListener listener = new MyRendererChangeListener(); r2.addChangeListener(listener); r2.setBasePaint(Color.red); assertTrue(listener.lastEvent.getRenderer() == r2); assertFalse(r1.hasListener(listener)); }
/** Confirm that cloning works. */ public void testCloning() { LineAndShapeRenderer r1 = new LineAndShapeRenderer(); Rectangle2D shape = new Rectangle2D.Double(1.0, 2.0, 3.0, 4.0); Rectangle2D baseShape = new Rectangle2D.Double(11.0, 12.0, 13.0, 14.0); r1.setShape(shape); r1.setBaseShape(baseShape); r1.setBaseLegendShape(new Rectangle(4, 3, 2, 1)); r1.setBaseLegendTextFont(new Font("Dialog", Font.PLAIN, 3)); r1.setBaseLegendTextPaint(new Color(1, 2, 3)); LineAndShapeRenderer r2 = null; try { r2 = (LineAndShapeRenderer) r1.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } assertTrue(r1 != r2); assertTrue(r1.getClass() == r2.getClass()); assertTrue(r1.equals(r2)); r1.setSeriesVisible(0, Boolean.FALSE); assertFalse(r1.equals(r2)); r2.setSeriesVisible(0, Boolean.FALSE); assertTrue(r1.equals(r2)); r1.setSeriesVisibleInLegend(0, Boolean.FALSE); assertFalse(r1.equals(r2)); r2.setSeriesVisibleInLegend(0, Boolean.FALSE); assertTrue(r1.equals(r2)); r1.setSeriesPaint(0, Color.black); assertFalse(r1.equals(r2)); r2.setSeriesPaint(0, Color.black); assertTrue(r1.equals(r2)); r1.setSeriesFillPaint(0, Color.yellow); assertFalse(r1.equals(r2)); r2.setSeriesFillPaint(0, Color.yellow); assertTrue(r1.equals(r2)); r1.setSeriesOutlinePaint(0, Color.yellow); assertFalse(r1.equals(r2)); r2.setSeriesOutlinePaint(0, Color.yellow); assertTrue(r1.equals(r2)); r1.setSeriesStroke(0, new BasicStroke(2.2f)); assertFalse(r1.equals(r2)); r2.setSeriesStroke(0, new BasicStroke(2.2f)); assertTrue(r1.equals(r2)); r1.setSeriesOutlineStroke(0, new BasicStroke(2.2f)); assertFalse(r1.equals(r2)); r2.setSeriesOutlineStroke(0, new BasicStroke(2.2f)); assertTrue(r1.equals(r2)); shape.setRect(4.0, 3.0, 2.0, 1.0); assertFalse(r1.equals(r2)); r2.setShape(new Rectangle2D.Double(4.0, 3.0, 2.0, 1.0)); assertTrue(r1.equals(r2)); baseShape.setRect(4.0, 3.0, 2.0, 1.0); assertFalse(r1.equals(r2)); r2.setBaseShape(new Rectangle2D.Double(4.0, 3.0, 2.0, 1.0)); assertTrue(r1.equals(r2)); r1.setSeriesShape(0, new Rectangle2D.Double(1.0, 2.0, 3.0, 4.0)); assertFalse(r1.equals(r2)); r2.setSeriesShape(0, new Rectangle2D.Double(1.0, 2.0, 3.0, 4.0)); assertTrue(r1.equals(r2)); r1.setSeriesItemLabelsVisible(0, Boolean.TRUE); assertFalse(r1.equals(r2)); r2.setSeriesItemLabelsVisible(0, Boolean.TRUE); assertTrue(r1.equals(r2)); r1.setSeriesItemLabelPaint(0, Color.red); assertFalse(r1.equals(r2)); r2.setSeriesItemLabelPaint(0, Color.red); assertTrue(r1.equals(r2)); r1.setSeriesPositiveItemLabelPosition(0, new ItemLabelPosition()); assertFalse(r1.equals(r2)); r2.setSeriesPositiveItemLabelPosition(0, new ItemLabelPosition()); assertTrue(r1.equals(r2)); r1.setSeriesNegativeItemLabelPosition(0, new ItemLabelPosition()); assertFalse(r1.equals(r2)); r2.setSeriesNegativeItemLabelPosition(0, new ItemLabelPosition()); assertTrue(r1.equals(r2)); r1.setSeriesCreateEntities(0, Boolean.FALSE); assertFalse(r1.equals(r2)); r2.setSeriesCreateEntities(0, Boolean.FALSE); assertTrue(r1.equals(r2)); r1.setLegendShape(0, new Rectangle(9, 7, 3, 4)); assertFalse(r1.equals(r2)); r2.setLegendShape(0, new Rectangle(9, 7, 3, 4)); assertTrue(r1.equals(r2)); r1.setBaseLegendShape(new Rectangle(3, 4, 1, 5)); assertFalse(r1.equals(r2)); r2.setBaseLegendShape(new Rectangle(3, 4, 1, 5)); assertTrue(r1.equals(r2)); r1.setLegendTextFont(1, new Font("Dialog", Font.PLAIN, 33)); assertFalse(r1.equals(r2)); r2.setLegendTextFont(1, new Font("Dialog", Font.PLAIN, 33)); assertTrue(r1.equals(r2)); r1.setBaseLegendTextFont(new Font("Dialog", Font.PLAIN, 11)); assertFalse(r1.equals(r2)); r2.setBaseLegendTextFont(new Font("Dialog", Font.PLAIN, 11)); assertTrue(r1.equals(r2)); r1.setLegendTextPaint(3, Color.red); assertFalse(r1.equals(r2)); r2.setLegendTextPaint(3, Color.red); assertTrue(r1.equals(r2)); r1.setBaseLegendTextPaint(Color.green); assertFalse(r1.equals(r2)); r2.setBaseLegendTextPaint(Color.green); assertTrue(r1.equals(r2)); }