2008-06-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateTickUnit.java (addToDate(Date)): Deprecated. 2008-06-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Millisecond.java (compareTo): Added handling for general RegularTimePeriod. 2008-06-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/Axis.java (setTickLabelInsets(RectangleInsets)): Delegate to new method, (setTickLabelInsets(RectangleInsets, boolean)): New method. 2008-06-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/SimpleTimePeriod.java (start): Changed from Date to long, (end): Likewise, (getStartMillis): New method, (getEndMillis): Likewise, (getStart): Returns new date instance, (getEnd): Likewise. 2008-06-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer2.java (drawItem): Handle PlotOrientation.HORIZONTAL. 2008-06-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (getLegendItems): Return early if dataset is null. 2008-06-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (drawRadarPoly): Check dataExtractOrder when generating chart entities. 2008-06-02 David Gilbert <david.gilbert@object-refinery.com> Patches by Henry Proudhon: * swt/org/jfree/experimental/chart/swt/ChartComposite.java (ChartComposite): Removed duplicate listener registration, (paintControl): Switched horizontalAxisTrace and verticalAxisTrace, (dispose): New method, * swt/org/jfree/experimental/swt/SWTGraphics2D.java (transformsPool): New field, (setBackground): Use color pool, (setTransform): Use transform pool, (transform): Likewise, (disposeResourcePool): Clear the fontsPool and transformsPool, (getSwtTransformFromPool): New method, (toSwtTransform): Removed. 2008-06-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (isPointInRect): New utility method, * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (drawItem): Modified bounds check for inclusion of chart entity, * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (drawSecondaryPass): Modified bounds check for inclusion of chart entity. 2008-05-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/DateRange.java (lowerDate): Changed from Date to long, (upperDate): Likewise, (DateRange(Date, Date)): Updated for field type change, (DateRange(long, long)): Likewise, (getLowerDate): Likewise, (getUpperDate): Likewise, (toString): Likewise, * source/org/jfree/data/time/FixedMillisecond.java (time): Changed from Date to long. 2008-05-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/AbstractXYItemLabelGenerator.java (getNullYString): New method, (equals): Check nullYString, * source/org/jfree/chart/labels/IntervalXYItemLabelGenerator.java: New file, * source/org/jfree/chart/renderer/xy/YIntervalRenderer.java (additionalItemLabelGenerator): New field, (YIntervalRenderer): Initialise new field, (getAdditionalItemLabelGenerator): New method, (setAdditionalItemLabelGenerator): Likewise, (drawItem): Added item label support, (drawAdditionalItemLabel): New method, (equals): New method override. 2008-05-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/HistogramDataset.java (clone): Reimplemented. 2008-05-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (calculateAxisSpace): Calculate space for range axes first, adjust the plotArea then calculate the space for the domain axes. 2008-05-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java (drawItem): Use addEntity(). 2008-05-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (addEntity): If area is null, take into account the plot orientation for the generated hotspot, * source/org/jfree/chart/renderer/xy/XYStepRenderer.java (drawItem): Use addEntity(). 2008-05-13 David Gilbert <david.gilbert@object-refinery.com> Bugs 1962467 and 1962472: * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (drawItem): Use hotspot that includes high and low values, and use addEntity() to add the chart entity. 2008-05-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/SlidingCategoryDataset.java: New class, * source/org/jfree/data/gantt/SlidingGanttCategoryDatsaet.java: Likewise, * tests/org/jfree/data/category/SlidingCategoryDatasetTests.java: New tests, * tests/org/jfree/data/gantt/SlidingGanttCategoryDatasetTests.java: Likewise. 2008-05-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/gantt/TaskSeries.java (clone): New method override, * source/org/jfree/data/gantt/TaskSeriesCollection.java (clone): Likewise. 2008-05-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/block/EmptyBlock.java (arrange): Use constraint. 2008-05-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/DefaultCategoryDataset.java: Implemented PublicCloneable. 2008-05-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (chartMouseListeners): Marked this field transient, (chartBuffer): Likewise, (writeObject): New method, (readObject): Likewise. 2008-05-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (zoomPoint): Changed from Point to Point2D, (getPointInRectangle): Changed return type to Point2D, and no longer round the coordinates in the returned point, (mouseReleased): Tidied up for readability, (restoreAutoDomainBounds): Updated for modified zoomPoint type, (restoreAutoRangeBounds): Likewise. 2008-05-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (drawItem): Ensure that minimumBarLength, if used, extends the non-base end of the bar. 2008-05-05 David Gilbert <david.gilbert@object-refinery.com> Patch 1924543 by Richard West: * experimental/org/jfree/experimental/chart/demo/CombinedCategoryPlotDemo1.java: New file, * experimental/org/jfree/experimental/chart/demo/CombinedXYPlotDemo1.java: Likewise, * experimental/org/jfree/experimental/chart/plot/CombinedCategoryPlot.java: Likewise, * experimental/org/jfree/experimental/chart/plot/CombinedXYPlot.java: Likewise. 2008-05-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/ShortTextTitle.java: New file, * tests/org/jfree/chart/title/junit/ShortTextTitleTests.java: Likewise. 2008-05-01 David Gilbert <david.gilbert@object-refinery.com> Bug 1955483: * source/org/jfree/data/xy/XYSeries.java (addOrUpdate(Number, Number)): Add a new item if duplicates are allows, (addOrUpdate(double, double)): New method. 2008-04-29 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/HighLowRenderer.java (tickLength): New field, (HighLowRenderer): Initialise new field, (getTickLength): New method, (setTickLength): Likewise, (equals): Added check for new field. 2008-04-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/TextTitle.java (maximumLinesToDisplay): New field, (getMaximumLinesToDisplay): New method, (setMaximumLinesToDisplay): Likewise, (arrangeFN): Pass maximumLinesToDisplay, (arrangeRR): Likewise, (equals): Added tests for additional fields. 2008-04-28 David Gilbert <david.gilbert@object-refinery.com> Bug 1950037: * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): New method override, * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): New method override, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method override. 2008-04-23 David Gilbert <david.gilbert@object-refinery.com> Bug 1942059: * source/org/jfree/chart/axis/CategoryAxis.java (calculateTextBlockWidth): Use correct insets. 2008-04-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/BubbleXYItemLabelGenerator.java, * source/org/jfree/chart/labels/StandardPieSectionLabelGenerator.java: Implemented PublicCloneable. 2008-04-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItemCollection.java (clone): Reimplemented, * source/org/jfree/chart/plot/CategoryPlot.java (equals): Check additional fields, (clone): Clone some internal structures. 2008-04-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java (LegendItem(String)): New constructor, (clone): Implemented. 2008-04-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/CategoryLineAnnotation.java, * source/org/jfree/chart/annotations/CategoryTextAnnotation.java: Implemented PublicCloneable. 2008-04-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java: Added new contributor Diego Pierangeli, * source/org/jfree/chart/urls/CustomCategoryURLGenerator.java: New class, * source/org/jfree/chart/urls/CustomXYURLGenerator.java (addURLSeries): Copy the incoming list. 2008-04-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/VectorRenderer.java, * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java: Implemented PublicCloneable. 2008-04-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultHighLowDataset.java, * source/org/jfree/data/xy/DefaultIntervalXYDataset.java, * source/org/jfree/data/xy/DefaultWindDataset.java, * source/org/jfree/data/xy/DefaultXYZDataset.java, * source/org/jfree/data/xy/MatrixSeriesCollection.java, * source/org/jfree/data/xy/VectorSeriesCollection.java, * source/org/jfree/data/xy/XIntervalSeriesCollection.java, * source/org/jfree/data/xy/XYBarDataset.java, * source/org/jfree/data/xy/XYIntervalSeriesCollection.java, * source/org/jfree/data/xy/XYSeriesCollection.java, * source/org/jfree/data/xy/YIntervalSeriesCollection.java: Implemented PublicCloneable. 2008-04-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultTableXYDataset.java: Implemented PublicCloneable, plus (clone): New method override. 2008-04-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultOHLCDataset.java: Implemented PublicCloneable, plus (clone): New method override. 2008-04-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/CategoryTableXYDataset.java: Implemented PublicCloneable, plus (clone): New method override. 2008-04-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/ImageTitle.java (equals): New method override. 2008-04-18 David Gilbert <david.gilbert@object-refinery.com> Patch 1943021 (Brian Cabana): * source/org/jfree/chart/plot/MultiplePiePlot.java (MultiplePiePlot(CategoryDataset)): Call setDataset() to ensure that plot registers as a dataset listener, * tests/org/jfree/chart/plot/junit/MultiplePiePlotTests.java (testConstructors): New test method. 2008-04-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/ImageTitle.java (arrange): New method override to handle margin, border and padding, * test/org/jfree/chart/title/junit/ImageTitleTests.java (testArrangeNN): New test method. 2008-04-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/urls/CustomXYURLGenerator.java (clone): Implemented, * tests/org/jfree/chart/urls/junit/CustomPieURLGeneratorTests.java: New file, * tests/org/jfree/chart/urls/junit/CustomXYURLGeneratorTests.java (testEquals): New test method, (testCloning): Likewise, * tests/org/jfree/chart/urls/junit/UrlsPackageTests.java (suite): Added CustomPieURLGeneratorTests. 2008-04-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/DeviationRenderer.java (findRangeBounds): New method override, * source/org/jfree/chart/renderer/xy/YIntervalRenderer.java (findRangeBounds): Likewise. 2008-04-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XIntervalSeriesCollection.java (getStartXValue): New method override, (getEndXValue): Likewise. 2008-04-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XIntervalSeries.java (getXLowValue): New method, (getXHighValue): Likewise. 2008-04-08 David Gilbert <david.gilbert@object-refinery.com> Bug 1932146: * source/org/jfree/chart/axis/PeriodAxis.java (setRange): Notify listeners, * tests/org/jfree/chart/axis/junit/PeriodAxisTests.java (lastEvent): New field, (axisChanged): New method, (test1932146): New test method. 2008-04-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/HighLowRenderer.java (findRangeBounds): New method override. 2008-04-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (findRangeBounds): New method override, * source/org/jfree/data/general/DatasetUtilities.java (iterateRangeBounds(XYDataset)): Fixed typo for OHLCDataset. 2008-04-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/block/BorderArrangement.java (arrangeFF): Check for negative width remaining. 2008-04-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/block/ColorBlock.java (arrange): New method override, (draw): Add code for margin, border and padding, * source/org/jfree/chart/block/EmptyBlock.java (arrange): New method override, (draw(Graphics2D, Rectangle2D)): Delegate, (draw(Graphics2D, Rectangle2D, Object)): New method override. 2008-04-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimePeriodValue.java (toString): New method override, * source/org/jfree/data/time/TimePeriodValues.java (updateBounds): Update maxMiddleIndex correctly, * tests/org/jfree/data/time/junit/TimePeriodValues.java (testGetMinStartIndex): New test method, (testGetMaxStartIndex): Likewise, (testGetMinMiddleIndex): Likewise, (testGetMaxMiddleIndex): Likewise, (testGetMinEndIndex): Likewise, (testGetMaxEndIndex): Likewise. 2008-04-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (removeDomainMarker): Check for null collection, (removeRangeMarker): Likewise, * source/org/jfree/chart/plot/XYPlot.java (removeDomainMarker): Check for null collection, (removeRangeMarker): Likewise. 2008-04-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValue.java (equals): Simplified to reflect that this.key is never null. 2008-04-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java (drawItem): Inserted code to add entities. 2008-03-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (equals): Updated for labelLinkStyle field. 2008-03-31 David Gilbert <david.gilbert@object-refinery.com> Patch 1891849 by Martin Hilpert: * source/org/jfree/chart/plot/PieLabelLinkStyle.java: New file, * source/org/jfree/chart/plot/PiePlot.java (labelLinkStyle): New field, (getLabelLinkStyle): New method, (setLabelLinkStyle): Likewise, (drawLeftLabel): Added support for labelLinkStyle field, (drawRightLabel): Likewise. 2008-03-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PieLabelDistributor.java (distributeLabels): Comment out adjustInwards() until it is working, (adjustDownwards): Fix check for lower bound, (adjustUpwards): Fix check for upper bound, (distributeEvenly): Allow overlapping rather than exceeding bounds. 2008-03-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (drawLeftLabels): Adjust label area for interiorGap, (drawRightLabels): Likewise. 2008-03-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/HighLowItemLabelGenerator.java: (hashCode): Implemented, * source/org/jfree/chart/labels/MultipleXYSeriesLabelGenerator.java: Likewise, * source/org/jfree/chart/labels/StandardCategorySeriesLabelGenerator.java: Likewise, * source/org/jfree/chart/labels/StandardXYSeriesLabelGenerator.java: Likewise, * source/org/jfree/chart/labels/SymbolicXYItemLabelGenerator.java: Likewise. 2008-03-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java (getSubplots): Return null if this.subplots is null, * source/org/jfree/chart/plot/CombinedDomainXYPlot.java: Likewise, * source/org/jfree/chart/plot/CombinedRangeCategoryPlot.java: Likewise, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java: Likewise. 2008-03-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DatasetUtilities.java (iterateRangeBounds(CategoryDataset, boolean)): Modified implementation, (iterateRangeBounds(XYDataset, boolean)): Likewise, * tests/org/jfree/data/general/junit/DatasetUtilitiesTests.java (testFindRangeBounds3): New test, (testIterateCategoryRangeBounds): Renamed testIterateRangeBounds_CategoryDataset(), (testIterateRangeBounds2_CategoryDataset): New method, (testIterateRangeBounds3_CategoryDataset): Likewise, (testIterateXYRangeBounds): Renamed testIterateRangeBounds(), (testIterateXYRangeBounds2): Renamed testIterateRangeBounds2(), (testIterateRangeBounds3): New method, (testIterateRangeBounds4): Likewise, (testCumulativeRange3): Likewise, (testSampleFunction2D): Likewise. 2008-03-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DatasetUtilities.java (iterateCategoryRangeBounds): Deprecated, (iterateRangeBounds(CategoryDataset)): New method, (iterateRangeBounds(CategoryDataset, boolean)): Likewise. 2008-03-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DatasetUtilities.java (findRangeBounds(XYDataset, boolean)): Use boolean argument for call to iterateRangeBounds(), (iterateXYRangeBounds): Deprecated, (iterateRangeBounds(XYDataset)): New method, (iterateRangeBounds(XYDataset, boolean)): Likewise. 2008-03-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DatasetUtilities.java (sampleFunction2D): Fixed sample count bug. 2008-03-27 David Gilbert <david.gilbert@object-refinery.com> Bug 1927239: * source/org/jfree/chart/renderer/category/WaterfallBarRenderer.java (findRangeBounds): Reimplemented to account for the special treatment of the value in the final category, * source/org/jfree/data/general/DatasetUtilities.java (findCumulativeRangeBounds): Include final category. 2008-03-27 David Gilbert <david.gilbert@object-refinery.com> Bug 1926517: * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java: (getDataRange): Override just to document, * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (getDataRange): Added javadoc comment, * source/org/jfree/chart/plot/CombinedRangeCategoryPlot.java (getDataRange): Likewise, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (getDataRange): Likewise. 2008-03-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (drawHorizontalItem): Draw box outline using itemOutlinePaint/Stroke, (drawVerticalItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBoxAndWhiskerRenderer.java (lookupBoxPaint): New method, (drawHorizontalItem): Do lookup for box fill paint, (drawVerticalItem): Likewise. 2008-03-26 David Gilbert <david.gilbert@object-refinery.com> Patch 1918209: * source/org/jfree/chart/axis/LogAxis.java (createTickLabel): Changed from private to protected. 2008-03-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java * source/org/jfree/chart/plot/CombinedDomainXYPlot.java * source/org/jfree/chart/plot/CombinedRangeCategoryPlot.java * source/org/jfree/chart/plot/CombinedRangeXYPlot.java * source/org/jfree/chart/plot/CompassPlot.java * source/org/jfree/chart/plot/ContourPlot.java * source/org/jfree/chart/plot/MeterPlot.java * source/org/jfree/chart/plot/MultiplePiePlot.java * source/org/jfree/chart/plot/PiePlot.java * source/org/jfree/chart/plot/PiePlot3D.java * source/org/jfree/chart/plot/PolarPlot.java * source/org/jfree/chart/plot/RingPlot.java * source/org/jfree/chart/plot/SpiderWebPlot.java * source/org/jfree/chart/plot/ThermometerPlot.java * source/org/jfree/chart/plot/WaferMapPlot.java Use fireChangeEvent() method all over. 2008-03-25 David Gilbert <david.gilbert@object-refinery.com> Patch 1914411: * source/org/jfree/chart/plot/Plot.java (fireChangeEvent): New method, * source/org/jfree/chart/plot/CategoryPlot.java * source/org/jfree/chart/plot/FastScatterPlot.java * source/org/jfree/chart/plot/XYPlot.java: Use fireChangeEvent() method all over. 2008-03-25 David Gilbert <david.gilbert@object-refinery.com> Patch 1913751: * source/org/jfree/chart/plot/CategoryPlot.java (addDomainMarker(int, CategoryMarker, Layer, boolean)): New method, (removeDomainMarker(int, Marker, Layer, boolean)): Likewise, (addRangeMarker(int, CategoryMarker, Layer, boolean)): Likewise, (removeRangeMarker(int, Marker, Layer, boolean)): Likewise, (addAnnotation(CategoryAnnotation, boolean)): Likewise, (removeAnnotation(CategoryAnnotation, boolean)): Likewise. 2008-03-25 David Gilbert <david.gilbert@object-refinery.com> Patch 1913751: * source/org/jfree/chart/plot/XYPlot.java (addDomainMarker(int, Marker, Layer, boolean)): New method, (removeDomainMarker(int, Marker, Layer, boolean)): Likewise, (addRangeMarker(int, Marker, Layer, boolean)): Likewise, (removeRangeMarker(int, Marker, Layer, boolean)): Likewise, (addAnnotation(XYAnnotation, boolean)): Likewise, (removeAnnotation(XYAnnotation, boolean)): Likewise. 2008-03-20 David Gilbert <david.gilbert@object-refinery.com> Bug 1920854: * source/org/jfree/chart/plot/PiePlot3D.java (draw): Move label drawing outside section loop. 2008-03-19 David Gilbert <david.gilbert@object-refinery.com> Patch 1902418: * source/org/jfree/chart/axis/LogAxis.java (refreshTicksVertical): Change tick type for major tick labels. 2008-03-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot3D.java (getMaximumExplodePercent): Check for null dataset, (initialise): Likewise, * tests/org/jfree/chart/plot/junit/PiePlot3DTests.java (testDrawWithNullDataset): New test method. 2008-02-26 David Gilbert <david.gilbert@object-refinery.com> Patch 1901599: * experimental/org/jfree/chart/annotations/XYTitleAnnotation.java (draw): Check for null 'info' argument before adding entities, (hashCode): Reimplemented, * experimental/org/jfree/chart/annotations/junit/XYTitleAnnotationTests.java (testDrawWithNullInfo): New test. 2008-02-26 David Gilbert <david.gilbert@object-refinery.com> Bug 1897580: * source/org/jfree/data/DefaultIntervalCategoryDataset.java (DefaultIntervalCategoryDataset(Comparable[], Comparable[], Number[][], Number[][]): Initialise seriesKeys and categoryKeys to empty arrays instead of null for empty dataset, (setCategoryKeys): Fixed argument check to handle empty dataset. 2008-02-19 David Gilbert <david.gilbert@object-refinery.com> * org/jfree/chart/util/LogFormat.java (powerLabel): New field, (LogFormat(double, String, boolean)): Delegate to new constructor, (LogFormat(double, String, String, boolean)): New constructor, (format): Use new powerLabel, (equals): New method override, (clone): Likewise. 2008-02-18 David Gilbert <david.gilbert@object-refinery.com> Bug 1880114: * org/jfree/chart/renderer/xy/VectorRenderer.java (drawItem): Modify arrow-head for plot orientation. 2008-02-18 David Gilbert <david.gilbert@object-refinery.com> Patch 1871902 by Martin Hoeller: * org/jfree/chart/plot/PolarPlot.java (DEFAULT_ANGLE_TICK_UNIT_SIZE): New field, (angleTickUnit): Likewise, (PolarPlot(XYDataset, ValueAxis, PolarItemRenderer)): Initialise angleTickUnit, (getAngleTickUnit): New method, (setAngleTickUnit): Likewise, (refreshAngleTicks): Likewise, (draw): Refresh angle tick list before drawing. 2008-02-15 David Gilbert <david.gilbert@object-refinery.com> * org/jfree/data/DefaultKeyedValue.java (DefaultKeyedValue(Comparable, Number)): Check for null key. 2008-02-15 David Gilbert <david.gilbert@object-refinery.com> Patch 1868745: * source/org/jfree/chart/axis/LogAxis.java (refreshTicksHorizontal): Adjust label anchor according to axis position, (refreshTicksVertical): Likewise. 2008-02-15 David Gilbert <david.gilbert@object-refinery.com> Patch 1873328: * source/org/jfree/chart/util/RelativeDateFormat.java (showZeroHours): New field, (positivePrefix): Likewise, (RelativeDateFormat(long)): Initialise new fields, (getShowZeroHours): New method, (setShowZeroHours): Likewise, (getPositivePrefix): Likewise, (setPositivePrefix): Likewise, (format): Apply positive prefix, and fix formatting for negative values, (equals): Handle new fields, (hashCode): Use positivePrefix. 2008-02-15 David Gilbert <david.gilbert@object-refinery.com> Bug 1873160: * source/org/jfree/chart/plot/DialPlot.java (draw): Fix clipping issues. 2008-02-14 David Gilbert <david.gilbert@object-refinery.com> Bug 1892419: * source/org/jfree/chart/axis/LogAxis.java (LogAxis(String)): Change default number of minor ticks. 2008-02-14 David Gilbert <david.gilbert@object-refinery.com> Patch 1874890 (Ulrich Voigt with contributions from Martin Hoeller): * source/org/jfree/chart/renderer/xy/XYStepRenderer.java (stepPoint): New field, (getStepPoint): New method, (setStepPoint): Likewise, (drawItem): Calculate step point using new field, (drawLine): New private method, (equals): New method override, (hashCode): Likewise. 2008-02-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (drawHorizontalItem): Call addEntity() to handle entity generation, (drawVerticalItem): Likewise. 2008-02-14 David Gilbert <david.gilbert@object-refinery.com> Patch 1888422 (Rob Van der Sanden): * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (drawHorizontalItem): Use correct data area dimension for series gap calculation. 2008-01-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (draw): Reset fixed range axis space for subplots. 2008-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XIntervalSeriesCollection.java (removeSeries(int)): New method, (removeSeries(XIntervalSeries)): Likewise, (removeAllSeries): Likewise, * source/org/jfree/data/xy/XYIntervalSeriesCollection.java (removeSeries(int)): New method, (removeSeries(XYIntervalSeries)): Likewise, (removeAllSeries): Likewise, * source/org/jfree/data/xy/YIntervalSeriesCollection.java (removeSeries(int)): New method, (removeSeries(YIntervalSeries)): Likewise, (removeAllSeries): Likewise. 2008-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeriesCollection.java (getSeries): Changed argument from String to Comparable. 2008-01-15 David Gilbert <david.gilbert@object-refinery.com> Patch 1866446 (Rob Van der Sanden): * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (maximumBarWidth): New field, (BoxAndWhiskerRenderer): Initialise new field, (getMaximumBarWidth): New method, (setMaximumBarWidth): Likewise, (equals): Updated for new field, * tests/org/jfree/chart/renderer/category/junit/BoxAndWhiskerRendererTests.java (testEquals): Updated to check new field. 2008-01-10 David Gilbert <david.gilbert@object-refinery.com> Bug 1864222: * source/org/jfree/data/time/TimeSeries.java (createCopy(RegularTimePeriod, RegularTimePeriod)): Handle empty range, * tests/org/jfree/data/time/junit/TimeSeriesTests.java (testBug1864222): New test method. 2008-01-10 David Gilbert <david.gilbert@object-refinery.com> Bug 1868521: * source/org/jfree/chart/ChartUtilities.java (writeChartAsJPEG): Create RGB image rather than ARGB. ---------- JFREECHART 1.0.9 RELEASED ------------------------ 2008-01-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (drawQuadrants): Fix painting error when quadrant origin is outside plot area. 2008-01-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (drawHorizontalItem): Check visibility of average marker, (drawVerticalItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBoxAndWhiskerRenderer.java (drawHorizontalItem): Check visibility of average marker, (drawVerticalItem): Likewise. 2007-12-20 David Gilbert <david.gilbert@object-refinery.com> Fixes bug 1848961: * source/org/jfree/chart/renderer/category/GroupedStackedBarRenderer.java (calculateBarW0): Use correct dataset index. 2007-12-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Week.java (Week(Date, TimeZone)): Hand on the zone, * tests/org/jfree/data/time/junit/WeekTests.java (testBug1448828): Control the default locale, (testBug1498805): Likewise, (testGetFirstMillisecondWithTimeZone): Control the default locale, and modify expected result accordingly, (testGetLastMillisecondWithTimeZone): Likewise. 2007-12-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/TextTitle.java (arrange): Implement additional options, (arrangeNN): New method, (arrangeFN): Likewise, (arrangeRN): Likewise. 2007-12-18 David Gilbert <david.gilbert@object-refinery.com> Committing for Sergei Ivanov: * source/org/jfree/data/Range.java (intersects(Range)): New method, (expand): Handle special case for negative margins, (shift): Added argument check, (scale): New method, * tests/org/jfree/data/junit/RangeTests.java (testConstructor): New test, (testHashCode): Likewise, (testExpand): Additional checks, (testShift): New test, (testScale): Likewise. 2007-12-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/IntervalMarker.java (IntervalMarker(double, double, Paint)): New constructor. 2007-12-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/HashUtilities.java (hashCode(int, BooleanList)): New method, (hashCode(int, PaintList)): Likewise, (hashCode(int, StrokeList)): Likewise. 2007-12-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/entity/ChartEntity.java (getImageMapAreaTag): Don't escape tooltips and urls, delegate that to the tag generators, * source/org/jfree/chart/imagemap/StandardURLTagFragmentGenerator.java (generateURLFragment): Encode the url text, * tests/org/jfree/chart/imagemap/junit/ImageMapPackageTests.java: New file, * tests/org/jfree/chart/imagemap/junit/StandardToolTipTagFragmentGeneratorTests.java: Likewise, * tests/org/jfree/chart/imagemap/junit/StandardURLTagFragmentGeneratorTests.java: Likewise. 2007-12-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (setTitle): Handle listener registration, * tests/org/jfree/chart/junit/JFreeChartTests.java (testTitleChangeEvents): New test method. 2007-12-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/imagemap/DynamicDriveToolTipFragmentGenerator.java (generateToolTipFragment): Escape text, * source/org/jfree/chart/imagemap/OverLIBToolTipFragmentGenerator.java (generateToolTipFragment): Likewise, * source/org/jfree/chart/imagemap/StandardToolTipFragmentGenerator.java (generateToolTipFragment): Likewise, * source/org/jfree/chart/imagemap/StandardURLTagFragmentGenerator.java (generateURLFragment): Likewise. 2007-12-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (hashCode): Compute using more fields. 2007-12-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (createBufferedImage(int, int, ChartRenderingInfo)): Change image type, (createBufferedImage(int, int, double, double, ChartRenderingInfo)): Likewise. 2007-12-04 David Gilbert <david.gilbert@object-refinery.com> Bugs 1363043 and 1840139: * source/org/jfree/chart/entity/ChartEntity.java (getImageMapAreaTag): Escape toolTipText and urlText, * source/org/jfree/chart/imagemap/ImageMapUtilities.java (getImageMap): Escape name, (htmlEscape): New method. 2007-12-04 David Gilbert <david.gilbert@object-refinery.com> Bug 1460195: * source/org/jfree/chart/entity/ChartEntity.java (getImageMapAreaTag): Add 'nohref' attribute when there is no URL. 2007-12-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYSeriesCollection.java (getSeries(Comparable)): New method, * tests/org/jfree/data/xy/junit/XYSeriesCollectionTests.java (testGetSeriesByKey): New test method. 2007-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYDataItem.java (getXValue): New method, (getYValue): Likewise, (toString): Likewise. 2007-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LocalizationBundle_it.properties: Fixed errors. 2007-11-29 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MeterPlot.java (writeObject): Handle dialOutlinePaint, (readObject): Likewise, * tests/org/jfree/chart/plot/junit/MeterPlotTests.java (testEquals): Updated to test dialOutlinePaint, (testSerialization1): Likewise. 2007-11-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/ComparableObjectSeries.java (clear): Changed from protected to public, * source/org/jfree/data/xy/VectorSeries.java (clear): Removed, * tests/org/jfree/data/time/ohlc/junit/OHLCSeriesTests.java (testClear): New test method, * tests/org/jfree/data/xy/junit/VectorSeriesTests.java (testClear): Likewise, * tests/org/jfree/data/xy/junit/XIntervalSeriesTests.java (testClear): Likewise, * tests/org/jfree/data/xy/junit/XYIntervalSeriesTests.java (testClear): Likewise, * tests/org/jfree/data/xy/junit/YIntervalSeriesTests.java (testClear): Likewise. 2007-11-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (setFixedRangeAxisSpaceForSubplots): Call new method in XYPlot, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (setFixedDomainAxisSpaceForSubplots): Likewise, * source/org/jfree/chart/plot/XYPlot.java (setFixedDomainAxisSpace(AxisSpace)): Delegate to new method, (setFixedDomainAxisSpace(AxisSpace, boolean)): New method, (setFixedRangeAxisSpace(AxisSpace)): Delegate to new method, (setFixedRangeAxisSpace(AxisSpace, boolean)): New method. 2007-11-27 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java: (drawImage(BufferedImage, BufferedImageOp, int, int)): Updated for method moved to SWTUtils, (drawImage(Image, int, int, ImageObserver)): Implemented, (drawImage(Image, int, int, int, int, ImageObserver)): Likewise, (drawImage(Image, int, int, Color, ImageObserver)): Likewise, (drawImage(Image, int, int, int, int, Color, ImageObserver)): Likewise, (convertToSWT(BufferedImage)): Moved to SWTUtils.java, * swt/org/jfree/experimental/swt/SWTUtils.java: (convertAWTImageToSWT): New method, (convertToSWT(BufferedImage)): Moved from SWTGraphics2D.java. ---------- JFREECHART 1.0.8 RELEASED ------------------------ 2007-11-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/dial/DialPointer.java (Pointer.fillPaint): New attribute, (Pointer.outlinePaint): Likewise, (Pointer(int)): Initialize new fields, (getFillPaint): New method, (setFillPaint): Likewise, (getOutlinePaint): Likewise, (setOutlinePaint): Likewise, (draw): Use new attributes, (equals): Check new fields, (hashCode): Likewise, (writeObject): Handle serialization for new fields, (readObject): Likewise, * tests/org/jfree/chart/plot/dial/junit/DialPointerTests.java (testEqualsPointer): New test method, (testSerialization2): Likewise. 2007-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/HashUtilities.java (hashCode(int, int)): New method, * source/org/jfree/chart/needle/ArrowNeedle.java * source/org/jfree/chart/needle/LineNeedle.java * source/org/jfree/chart/needle/LongNeedle.java * source/org/jfree/chart/needle/MeterNeedle.java * source/org/jfree/chart/needle/MiddlePinNeedle.java * source/org/jfree/chart/needle/PinNeedle.java * source/org/jfree/chart/needle/PlumNeedle.java * source/org/jfree/chart/needle/PointerNeedle.java * source/org/jfree/chart/needle/ShipNeedle.java * source/org/jfree/chart/needle/WindNeedle.java: Implemented hashCode() method. 2007-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java * source/org/jfree/chart/renderer/xy/DeviationRenderer.java * source/org/jfree/chart/renderer/xy/HighLowRenderer.java * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer2.java * source/org/jfree/chart/renderer/xy/StackedXYBarRenderer.java * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java * source/org/jfree/chart/renderer/xy/XYBarRenderer.java * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java * source/org/jfree/chart/renderer/xy/XYBoxAndWhiskerRenderer.java * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java * source/org/jfree/chart/renderer/xy/XYDotRenderer.java * source/org/jfree/chart/renderer/xy/XYErrormRenderer.java * source/org/jfree/chart/renderer/xy/XYLine3DRenderer.java * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java * source/org/jfree/chart/renderer/xy/XYSplineRenderer.java * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java: Replaced calls to notifyListeners() with fireChangeEvent(). 2007-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java * source/org/jfree/chart/renderer/category/AreaRenderer.java * source/org/jfree/chart/renderer/category/BarRenderer.java * source/org/jfree/chart/renderer/category/BarRenderer3D.java * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java * source/org/jfree/chart/renderer/category/CategoryStepRenderer.java * source/org/jfree/chart/renderer/category/GanttRenderer.java * source/org/jfree/chart/renderer/category/GroupedStackedBarRenderer.java * source/org/jfree/chart/renderer/category/LevelRenderer.java * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java * source/org/jfree/chart/renderer/category/LineRenderer3D.java * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java * source/org/jfree/chart/renderer/category/ScatterRenderer.java * source/org/jfree/chart/renderer/category/StackedAreaRenderer.java * source/org/jfree/chart/renderer/category/StackedBarRenderer.java * source/org/jfree/chart/renderer/category/StackedBarRenderer3D.java * source/org/jfree/chart/renderer/category/StatisticalBarRenderer.java * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java: Replaced calls to notifyListeners() with fireChangeEvent(). 2007-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYSeries.java (clone): Reimplemented, * tests/org/jfree/data/xy/junit/XYSeriesTests.java (testCloning2): New method, (testCloning3): Likewise. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues.java (removeValue): Always rebuild index, * source/org/jfree/data/DefaultKeyedValues2D.java (removeColumn(Comparable)): Added argument checks, and protect against rows not containing the specified key, * tests/org/jfree/data/category/junit/DefaultCategoryDatasetTests.java (testBug1835955): New method, * tests/org/jfree/data/junit/DefaultKeyedValues2DTests.java (testRemoveColumnByKey): New method, * tests/org/jfree/data/junit/DefaultKeyedValuesTests.java (testGetIndex2): New method. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> Fix for bug 1832432: * source/org/jfree/data/time/TimeSeries.java (clone): Reimplemented. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/DatasetRenderingOrder.java (hashCode): Implemented, * source/org/jfree/chart/plot/DialShape.java (hashCode): Likewise, * source/org/jfree/chart/plot/PlotOrientation.java (hashCode): Likewise, * source/org/jfree/chart/plot/SeriesRenderingOrder.java (hashCode): Likewise. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (previousStandardDate): Return dates already fetched. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/CategoryAxis.java (equalPaintMaps): Use entrySet rather than keySet. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/PieLabelRecord.java (equals): Implemented. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/Outlier.java (equals): Implemented. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (shapesFilled): Deprecated, (getShapesFilled): Likewise, (setShapesFilled): Likewise, (setBaseShapesVisible): Call fireChangeEvent() instead of notifyListeners(), (setPlotLines): Likewise, (setGapThresholdType): Likewise, (setGapThreshold): Likewise, (setPlotImages): Likewise, (setLegendLine): Likewise. 2007-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (DEFAULT_INTERIOR_GAP): Modified default value, (maximumLabelWidth): Likewise, (labelGap): Likewise, (labelLinkMargin): Likewise, (DEBUG_DRAW_INTERIOR): New debug flag, (DEBUG_DRAW_LINK_AREA): Likewise, (DEBUG_DRAW_PIE_AREA): Likewise, (PiePlot(PieDataset)): Removed background paint setting, (drawPie): Modified label position calculations and added debug code, (drawLabels): Modified label width calculation, * source/org/jfree/chart/plot/PiePlot3D.java (depthFactor): Changed default value, (draw): Modified chart dimension calculations and added debug code, in line with changes made to the PiePlot class. 2007-11-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/dial/StandardDialScale.java (getLowerBound): New method, (setLowerBound): Likewise, (getUpperBound): Likewise, (setUpperBound): Likewise, (getMinorTickStroke): Likewise, (setMinorTickStroke): Likewise. 2007-11-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalBarRenderer.java (errorIndicatorStroke): New field, (StatisticalBarRenderer): Initialise new field, (getErrorIndicatorStroke): New method, (setErrorIndicatorStroke): Likewise, (drawHorizontalItem): Fix drawBarOutline and gradientPaintTransformer omissions, and use new errorIndicatorStroke field, (drawVerticalItem): Likewise, (equals): Updated for new field, (writeObject): Likewise, (readObject): Likewise. ---------- JFREECHART 1.0.7 RELEASED ------------------------ 2007-11-14 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (ChartComposite): Create canvas with SWT.DOUBLE_BUFFERED, (getChartRenderingInfo): New method, (isDomainZoomable): Likewise, (setDomainZoomable): Likewise, (isRangeZoomable): Likewise, (setRangeZoomable): Likewise. 2007-11-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (setWeight): Fire change event, (setFixedDomainAxisSpace(AxisSpace)): Delegate to new method, (setFixedDomainAxisSpace(AxisSpace, boolean)): New method, (setFixedRangeAxisSpace(AxisSpace)): Delegate to new method, (setFixedRangeAxisSpace(AxisSpace, boolean)): New method, * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java (setFixedRangeAxisSpaceForSubplots): Updated, * source/org/jfree/chart/plot/CombinedRangeCategoryPlot.java (setFixedDomainAxisSpaceForSubplots): Updated. 2007-11-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfere/chart/HashUtilities.java (hashCode(int, Comparable)): New method, * source/org/jfree/chart/entity/CategoryLabelEntity.java (equals): New method, (hashCode): Likewise. 2007-11-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/ModuloAxis.java (equals): Implemented. 2007-11-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/entity/ChartEntity.java (hashCode): Implemented, * source/org/jfree/chart/entity/PieSectionEntity.java (equals): Implemented, (hashCode): Likewise. 2007-11-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/HashUtilities.java (hashCode(int, boolean)): New method, (hashCode(int, double)): Likewise, (hashCode(int, Paint)): Likewise, (hashCode(int, Stroke)): Likewise, (hashCode(int, String)): Likewise. 2007-11-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/dial/AbstractDialLayer.java (hashCode): Implemented. 2007-11-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultBoxAndWhiskerXYDataset.java (add): Fire dataset change event, (getY): Removed redundant constructor call, (equals): New method override, (clone): Likewise. 2007-11-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (equals): Added check for domain/rangeTickBandPaint, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (fillDomainGridBand): Handle plot orientation properly, (fillRangeGridBand): Likewise. 2007-11-12 David Gilbert <david.gilbert@object-refinery.com> Patch 1827829 from Richard West: * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItemLabel): Fixed NPE. 2007-11-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (drawItem): Simplified entity generation, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItem): Likewise. 2007-11-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYDotRenderer.java (legendShape): New field, (XYDotRenderer): Initialise new field, (getLegendShape): New method, (setLegendShape): Likewise, (getLegendItem): New method override, (equals): Updated for new field, (readObject): New method, (writeObject): New method. 2007-11-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (paintComponent): Clear refreshBuffer flag before drawing chart. 2007-11-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultMultiValueCategoryDataset.java (getValues): Return EMPTY_LIST rather than null. 2007-11-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java (TimeSeries(String)): Changed first argument to Comparable, (TimeSeries(String, Class)): Likewise, (TimeSeries(String, String, String, Class)): Likewise. 2007-11-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (setFixedDomainAxisSpace): Fire change event, (setFixedRangeAxisSpace): Likewise. 2007-11-05 David Gilbert <david.gilbert@object-refinery.com> Patch 1823724 by Richard West: * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (drawItemPass1): Add code to draw item labels. 2007-11-05 David Gilbert <david.gilbert@object-refinery.com> Patch 1823697 by Richard West: * source/org/jfree/chart/plot/XYPlot.java (removeDomainMarker(Marker)): New method, (removeDomainMarker(Marker, Layer)): Likewise, (removeDomainMarker(int, Marker, Layer)): Likewise, (removeRangeMarker(Marker)): New method, (removeRangeMarker(Marker, Layer)): Likewise, (removeRangeMarker(int, Marker, Layer)): Likewise. 2007-11-05 David Gilbert <david.gilbert@object-refinery.com> Patch 1823697 by Richard West: * source/org/jfree/chart/plot/CategoryPlot.java (removeDomainMarker(Marker)): New method, (removeDomainMarker(Marker, Layer)): Likewise, (removeDomainMarker(int, Marker, Layer)): Likewise, (removeRangeMarker(Marker)): New method, (removeRangeMarker(Marker, Layer)): Likewise, (removeRangeMarker(int, Marker, Layer)): Likewise. 2007-10-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues.java (data): Removed, (keys): New field, (values): Likewise, (indexMap): New field, (DefaultKeyedValues): Initialise new fields, (getItemCount): Use new data fields, (getValue(int)): Likewise, (getKey(int)): Likewise, (getIndex(Comparable)): Likewise, (getKeys): Likewise, (setValue(Comparable, Number)): Likewise, (insertValue): Likewise, (rebuildIndex): Likewise, (removeValue): Likewise, (clear): Likewise, (sortByKeys): Likewise, (sortByValue): Likewise, (hashCode): Likewise, (clone): Likewise. 2007-10-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/ComparableObjectSeries.java (hashCode): Faster implementation, * source/org/jfree/data/time/TimeSeries.java (hashCode): Likewise, * source/org/jfree/data/xy/XYSeriesTests.java (hashCode): Likewise. 2007-10-29 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/dial/SimpleDialFrame.java: Renamed StandardDialFrame.java. 2007-10-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (linesVisible): Deprecated, (shapesVisible): Likewise, (shapesFilled): Likewise, (getLinesVisible): Likewise, (setLinesVisible): Likewise, (getShapesVisible): Likewise, (setShapesVisible): Likewise, (setShapesFilled): Likewise. 2007-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYSplineAndShapeRenderer.java: Renamed XYSplineRenderer. 2007-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYSplineAndShapeRenderer.java (drawPrimaryLineAsPath): Check for duplicated control points, (ControlPoint.equals): New method override. 2007-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (getDomainAxisIndex): Added argument check, (getRangeAxisIndex): Likewise. 2007-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/StandardTickUnitSource.java: Implemented Serializable, (StandardTickUnitSource): Added explicit constructor, (equals): New method override, (hashCode): Likewise. 2007-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (defaultDirectoryForSaveAs): New field, (ChartPanel(JFreeChart, int, int, int, int, int, int, boolean, boolean, boolean, boolean, boolean, boolean)): Initialise new field, (getDefaultDirectoryForSaveAs): New method, (setDefaultDirectoryForSaveAs): Likewise, (doSaveAs): Apply default directory. 2007-10-24 David Gilbert <david.gilbert@object-refinery.com> * experimenta/org/jfree/experimental/chart/plot/dial/*.java: Moved this package to org.jfree.chart.plot.dial.*, * experimenta/org/jfree/experimental/chart/plot/dial/junit/*.java: Moved this package to org.jfree.chart.plot.dial.junit.*. 2007-10-24 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java: Removed and renamed ArcDialFrame.java, * experimental/org/jfree/experimental/chart/plot/dial/ArcDialFrame.java: New file. 2007-10-24 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java (pointers): New field, (DialPlot): Delegate to new constructor, (DialPlot(ValueDataset)): New constructor, (addPointer): New method, (getPointerIndex): Likewise, (removePointer(int)): Likewise, (removePointer(DialPointer)): Likewise, (getPointerForDataset): Likewise, (draw): Draw pointers in their own layer, (equals): Check new pointers field, * experimental/org/jfree/experimental/chart/plot/dial/DialPointer.java: Implemented PublicCloneable, (DialPointer): Changed to protected, (DialPointer(int)): Likewise, and changed default radius, (Pin.setPaint): Added argument check, (Pin.setStroke): Likewise, (Pointer(int)): Removed radius setting, * experimental/org/jfree/experimental/chart/plot/dial/DialTextAnnotation.java (getAnchor): New method, (setAnchor): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/DialValueIndicator.java (DialValueIndicator): New constructor, (DialValueIndicator(int, String)): Removed string argument, (setDatasetIndex): Fire change event, (setTemplateValue): Check for null argument, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java (setInnerRadius): Added argument check, (setOuterRadius): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialRange.java (scaleIndex): New field, (StandardDialRange(double, double)): Added field initialisations, (getScaleIndex): New method, (setScaleIndex): Likewise, (draw): Get the correct scale, (equals): Updated for new field, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialScale.java (minorTickPaint): New field, (minorTickStroke): Likewise, (tickLabelFormatter): Likewise, (StandardDialScale): Updated for modified constructor signature, (StandardDialScale(double, double, double, double)): Added two new arguments to signature, (setMajorTickLength): Added argument check, (setMinorTickCount): Likewise, (setMinorTickLength): Likewise, (getMinorTickPaint): New method, (setMinorTickPaint): Likewise, (getTickLabelFormatter): Likewise, (setTickLabelFormatter): Likewise, (draw): Fix major tick length, format labels with new formatter, (equals): Updated for new fields, (hashCode): Implemented, (writeObject): Handle new fields, (readObject): Likewise. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (drawRoundRect): Implemented, (fillRoundRect): Likewise, (clearRect): Implemented. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (drawArc): Implemented, (fillArc): Likewise. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (drawOval): Implemented, (fillOval): Likewise. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (drawPolyline): Implemented. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (drawPolygon): Implemented. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (hints): New field, (SWTGraphics2D): Initialise new field, (getRenderingHint): Implemented, (setRenderingHint): Likewise, (getRenderingHints): Likewise, (addRenderingHints): Likewise, (setRenderingHints): Likewise. 2007-10-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (lookupSeriesPaint): Call accessor methods for per-series paint, (lookupSeriesFillPaint): Likewise, (lookupSeriesOutlinePaint): Likewise, (lookupSeriesStroke): Likewise, (lookupSeriesOutlineStroke): Likewise, (lookupSeriesStroke): Likewise. 2007-10-22 Henry Proudhon <henry.proudhon@insa-lyon.fr> * source/swt/org/jfree/experimental/chart/swt/ChartComposite.java: (chart): Made the chart field be private again, (ChartComposite): Refactored class, now implements PaintListener, MouseListener and MouseMovedListener, (zoom): Fixed bug with multiple plots, (addChartMouseListener): Implemented, (removeChartMouseListener): Likewise, (restoreAutoDomainBounds): Fixed NPE, (restoreAutoRangeBounds): Likewise, (widgetDefaultSelected): Implemented, (addSWTListener): New method, (mouseDoubleClick): Likewise, (mouseDown): Likewise, (mouseUp): Likewise, (mouseMove): Likewise, (paintControl): Likewise, * source/swt/org/jfree/experimental/swt/SWTUtils.java (toAwtMouseEvent): changed method signature. 2007-10-22 Henry Proudhon <henry.proudhon@insa-lyon.fr> * source/swt/org/jfree/experimental/swt/SWTUtils.java (toAwtMouseEvent): Improved mouse event conversion. 2007-10-22 Henry Proudhon <henry.proudhon@ensmp.fr> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (composite): New field, (setComposite): Implemented, (getComposite): Return from field. 2007-10-22 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (getClip): Implemented. 2007-10-17 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/AbstractDialLayer.java (equals): New method override, (clone): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/DialBackground.java (equals): Added call to super.equals(); * experimental/org/jfree/experimental/chart/plot/dial/DialCap.java (equals): Added call to super.equals(); * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java (setBackground): Fix listener registration, (setCap): Likewise, (setDialFrame): Likewise, (addLayer): Likewise, (getLayerIndex(DialLayer)): New method, (removeLayer(int)): Likewise, (removeLayer(DialLayer)): Likewise, (addScale): Fix listener registration, * experimental/org/jfree/experimental/chart/plot/dial/DialPointer.java (equals): New method override, (Pin.equals): Likewise, (Pin.readObject): New method, (Pin.writeObject): Likewise, (Pointer.equals): New method override, * experimental/org/jfree/experimental/chart/plot/dial/DialScale.java: Now extends DialLayer, * experimental/org/jfree/experimental/chart/plot/dial/DialTextAnnotation.java (equals): Added call to super.equals(); * experimental/org/jfree/experimental/chart/plot/dial/DialValueIndicator.java (equals): Added call to super.equals(); * experimental/org/jfree/experimental/chart/plot/dial/SimpleDialFrame.java (equals): Added call to super.equals(); * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java (equals): Added call to super.equals(); * experimental/org/jfree/experimental/chart/plot/dial/StandardDialRange.java (increment): Removed field, (setLowerBound): Added argument check, (setUpperBound): Likewise, (setBounds): New method, (equals): Updated, (hashCode): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialScale.java (setTickRadius): Added argument check, (setMajorTickIncrement): Likewise, (setTickLabelPaint): Likewise, (equals): Updated. 2007-10-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/AbstractXYItemLabelGenerator.java: (nullXString): Removed, (createItemArray): Removed check for null x-value. 2007-10-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer3D.java (drawRangeMarker): Use adjusted data area; * source/org/jfree/chart/renderer/category/LineRenderer3D.java (drawRangeMarker): Use adjusted data area, and call super to handle IntervalMarker (DG); 2007-10-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MultiValueRenderer.java: Renamed ScatterRenderer.java; * tests/org/jfree/chart/renderer/category/junit/MultiValueRendererTests.java: Renamed ScatterRendererTests.java. 2007-10-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/ThermometerPlot.java (DEFAULT_GAP_RADIUS): Renamed DEFAULT_GAP, (gapRadius): Renamed gap, (getGapRadius): Renamed getGap(), (setGapRadius): Renamed setGap(), (getGapDiameter): Removed, (draw): Updated for method name changes, (equals): Likewise. 2007-10-08 David Gilbert <david.gilbert@object-refinery.com> Based on Patch 1769088: * source/org/jfree/chart/plot/ThermometerPlot.java (BULB_RADIUS): Deprecated, (BULB_DIAMETER): Likewise, (COLUMN_RADIUS): Likewise, (COLUMN_DIAMETER): Likewise, (GAP_RADIUS): Likewise, (GAP_DIAMETER): Likewise, (bulbRadius): New field, (columnRadius): Likewise, (gapRadius): Likewise, (getBulbRadius): New method, (setBulbRadius): Likewise, (getBulbDiameter): Likewise, (getColumnRadius): Likewise, (setColumnRadius): Likewise, (getColumnDiameter): Likewise, (getGapRadius): Likewise, (setGapRadius): Likewise, (getGapDiameter): Likewise, (draw): Use attributes rather than constants, (equals): Updated for new fields, * tests/org/jfree/chart/plot/junit/ThermometerPlotTests.java (testEquals): Updated for new fields. 2007-10-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MultiShapeRenderer.java: New file, * source/org/jfree/data/statistics/DefaultMultiValueCategoryDataset.java: Likewise, * source/org/jfree/data/statistics/MultiValueCategoryDataset.java: Likewise, * tests/org/jfree/chart/renderer/category/junit/MultiShapeRendererTests.java: Likewise, * tests/org/jfree/chart/renderer/category/junit/RendererCategoryPackageTests.java (suite): Added MultiShapeRendererTests, * tests/org/jfree/data/statistics/junit/DataStatisticsPackageTests.java (suite): Added DefaultMultiValueCategoryDatasetTests, * tests/org/jfree/data/statistics/junit/DefaultMultiValueCategoryDatasetTests.java: New file. 2007-10-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/ValueMarker.java (ValueMarker(double, Paint, Stroke, Paint, Stroke, float)): Fixed call to super, * tests/org/jfree/chart/plot/junit/ValueMarkerTests.java (test1808376): New test method. 2007-10-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (volumePaint): New field, (CandlestickRenderer(double, boolean, XYToolTipGenerator)): Initialise new field, (getVolumePaint): New method, (setVolumePaint): Likewise, (drawItem): Use new paint attribute, (equals): Add check for new field, (writeObject): Handle serialization for new field, (readObject): Likewise, * tests/org/jfree/chart/renderer/xy/junit/CandlestickRendererTests.java (EPSILON): New field, (testConstructor): New method, (testEquals): Added check for new field. 2007-10-05 David Gilbert <david.gilbert@object-refinery.com> Based on patch 1805262 by Alex Moots: * source/org/jfree/chart/plot/PiePlot3D.java (darkerSides): New field, (getDarkerSides): New method, (setDarkerSides): Likewise, (drawSide): Make side colour darker if necessary, (equals): Updated for new field, * tests/org/jfree/chart/plot/junit/PiePlot3DTests.java (testEquals): Updated for new field. 2007-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/KeyedObjects2D.java (getRowIndex): Check for null argument, (getColumnIndex): Likewise, (removeObject): Check for unknown keys, (clear): New method, * source/org/jfree/data/statistics/DefaultBoxAndWhiskerCategoryDataset.java (rangeBounds): Removed, (DefaultBoxAndWhiskerCategoryDataset()): Updated for removed field, (add(BoxAndWhiskerItem, Comparable, Comparable)): Likewise, (remove(Comparable, Comparable)): New method, (removeRow(int)): Likewise, (removeRow(Comparable)): Likewise, (removeColumn(int)): Likewise, (removeColumn(Comparable)): Likewise, (clear): Likewise, (getRangeBounds): Return new instance every time, * source/org/jfree/data/statistics/DefaultStatisticalCategoryDataset.java (remove(Comparable, Comparable)): New method, (removeRow(int)): Likewise, (removeRow(Comparable)): Likewise, (removeColumn(int)): Likewise, (removeColumn(Comparable)): Likewise, (clear): Likewise, (getRangeBounds): Return new instance every time, * tests/org/jfree/data/statistics/junit/DefaultBoxAndWhiskerCategoryDatasetTests.java (testRemove): New method, * tests/org/jfree/data/statistics/junit/DefaultStatisticalCategoryDatasetTests.java (testRemove): New method. 2007-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultBoxAndWhiskerCategoryDataset.java (add(BoxAndWhiskerItem, Comparable, Comparable)): Update cached bounds by iteration if necessary, (updateBounds): New private method, * tests/org/jfree/data/statistics/junit/DefaultBoxAndWhiskerCategoryDatasetTests.java (testGetRangeBounds): New test method. 2007-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/KeyedObjects2D.java (getObject(Comparable, Comparable)): Check arguments for null or unrecognised keys, (setObject(Object, Comparable, Comparable): Check for null arguments, (removeObject): Check if row or column needs removing, (removeRow(Comparable)): Check for unrecognised key, (removeColumn(Comparable)): Likewise, * tests/org/jfree/data/junit/KeyedObjects2DTests.java (testGetValueByIndex): New test method, (testGetValueByKey): Likewise, (testSetObject): Likewise, (testRemoveRowByIndex): Likewise, (testRemoveColumnByIndex): Likewise, (testRemoveRowByKey): Likewise, (testRemoveColumnByKey): Likewise, (testRemoveValue): Likewise. 2007-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues.java (removeValue(Comparable)): Throw UnknownKeyException for unrecognised key, * source/org/jfree/data/KeyedObjects.java (getObject(int)): Allow IndexOutOfBoundsException to be thrown, (getKey(int)): Likewise, (getIndex): Check for null argument, (getObject): Throw UnknownKeyException for unrecognised key, (insertValue): New method, (removeValue): Throw UnknownKeyException for unrecognised key, (clear): New method, (hashCode): Likewise, * source/org/jfree/data/KeyedObjects2D.java (getObject): Check for missing key in underlying data structure, * tests/org/jfree/data/junit/DefaultKeyedValuesTests.java (testRemoveValue): Updated checks for consistency with KeyedObjects, * tests/org/jfree/data/junit/KeyedObjectsTests.java (testInsertAndRetrieve): Updated checks, (testGetObject): New test method, (testGetKey): Likewise, (testGetIndex): Likewise, (testSetObject): Likewise, (testRemoveValue): Likewise, (testRemoveValueInt): Likewise. 2007-10-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultStatisticalCategoryDataset.java (minimumRangeValueRow): New field, (minimumRangeValueColumn): Likewise, (minimumRangeValueIncStdDevRow): Likewise, (minimumRangeValueIncStdDevColumn): Likewise, (maximumRangeValueRow): Likewise, (maximumRangeValueColumn): Likewise, (maximumRangeValueIncStdDevRow): Likewise, (maximumRangeValueIncStdDevColumn): Likewise, (DefaultStatisticalCategoryDataset()): Initialise new fields, (add(Number, Number, Comparable, Comparable)): Fixed calculation of bounds, (updateBounds): New method, (getRangeLowerBound): Observe includeInterval flag, (getRangeUpperBound): Likewise, * source/org/jfree/data/statistics/MeanAndStandardDeviation.java (getMeanValue): New method, (getStandardDeviationValue): Likewise, (toString): Likewise, * tests/org/jfree/data/statistics/junit/DefaultStatisticalCategoryDatasetTests.java (testGetRangeBounds): Fixed broken test, (EPSILON): New field, (testAdd): New test method, (testGetRangeLowerBound): Likewise, (testGetRangeUpperBound): Likewise, (testGetRangeBounds2): Likewise. 2007-10-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/BoxAndWhiskerItem.java (BoxAndWhiskerItem(double, double, double, double, double, double, double, double, List)): New constructor, * source/org/jfree/data/statistics/DefaultBoxAndWhiskerCategoryDataset.java (minimumRangeValue): Changed from Number to double, (minimumRangeValueRow): New field, (minimumRangeValueColumn): Likewise, (maximumRangeValue): Changed from Number to double, (maximumRangeValueRow): New field, (maximumRangeValueColumn): Likewise, (DefaultBoxAndWhiskerCategoryDataset): Updated for changed field types, (add): Fix updating of cached range values, (getRangeLowerBound): Update for changed field type, (getRangeUpperBound): Likewise, * tests/org/jfree/data/statistics/junit/DefaultBoxAndWhiskerCategoryDataset.java (testAdd): New test method, (testAddUpdatesCachedRange): Likewise, (testConstructor): Likewise. 2007-09-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/KeyedObjects.java (equals): Cleaned up, * source/org/jfree/data/KeyedObjects2D.java (equals): Likewise, (clone): Clone data storage, * source/org/jfree/data/statistics/DefaultBoxAndWhiskerCategoryDataset.java (clone): New method override, * source/org/jfree/data/statistics/DefaultStatisticalCategoryDataset.java (clone): Likewise, * tests/org/jfree/data/junit/KeyedObjects2DTests.java (testEquals): New test, (testCloning): Check independence, * tests/org/jfree/data/junit/KeyedObjectsTests.java (testCloning2): New test, * tests/org/jfree/data/junit/KeyedObjectTests.java (testCloning2): New test, * tests/org/jfree/data/statistics/junit/DefaultBoxAndWhiskerCategoryDatasetTests.java (testCloning): Check independence, * tests/org/jfree/data/statistics/junit/DefaultStatisticalCategoryDatasetTests.java (testCloning): Check independence. 2007-09-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java (drawItem): Simplified entity generation code. 2007-09-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java (setGroupStroke): Check for null argument, add event notification, (equals): New method override, * tests/org/jfree/chart/renderer/category/junit/MinMaxCategoryRendererTests.java (testEquals): Extended to cover additional fields. 2007-09-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java (drawItem): Apply new offset option to x-coordinates. 2007-09-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (getCategorySeriesMiddle): New method, * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (useSeriesOffset): New field, (itemMargin): Likewise, (LineAndShapeRenderer(boolean, boolean)): Initialise new fields, (getUseSeriesOffset): New method, (setUseSeriesOffset): Likewise, (getItemMargin): Likewise, (setItemMargin): Likewise, (drawItem): Apply new offset option to x-coordinates, (equals): Check new fields, * tests/org/jfree/chart/renderer/category/junit/LineAndShapeRendererTests.java (testEquals): Updated for new fields. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java (drawItem): Simplified entity generation code. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/GrayPaintScale.java (getPaint): Use constrained value to calculate gray scale value, * tests/org/jfree/chart/renderer/junit/GrayPaintScaleTests.java (testConstructor): New test method, (testGetPaint): Likewise. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItem): Apply margin in a way that works for inverted axes. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PlotUtilities.java: New class, * source/org/jfree/data/general/DatasetUtilities.java (isEmptyOrNull(XYDataset)): Return early if not empty, * tests/org/jfree/data/general/junit/DatasetUtilitiesTests.java (testIsEmptyOrNullXYDataset): New test method. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/Series.java (getItemCount): New abstract method, (isEmpty): New method. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (getQuadrantPaint): Improve exception text, (setQuadrantPaint): Likewise, (getDomainAxisForDataset): Likewise, (getRangeAxisForDataset): Likewise. 2007-09-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Marker.java (readObject): Initialise listener list, * tests/org/jfree/chart/plot/junit/ValueMarkerTests.java (test1802195): New test method. 2007-09-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (linesVisible): Deprecated, (shapesVisible): Likewise, (shapesFilled): Likewise, (getLinesVisible): Likewise, (setLinesVisible(Boolean)): Likewise, (setLinesVisible(boolean)): Likewise, (getShapesVisible): Likewise, (setShapesVisible(Boolean)): Likewise, (setShapesVisible(boolean)): Likewise, (setUseOutlinePaint): Fire change event, (getShapesFilled): Deprecated, (setShapesFilled(Boolean)): Likewise, (setShapesFilled(boolean)): Likewise, (setSeriesShapesFilled): Fire change event, (setBaseShapesFilled): Likewise, (equals): Minor tidy up. 2007-09-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (paintComponent): Clear chart buffer before refreshing. 2007-09-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (zoomAroundAnchor): New field, (getZoomAroundAnchor): New method, (setZoomAroundAnchor): Likewise, (zoomInDomain): Use zoomAroundAnchor flag, (zoomInRange): Likewise, (zoomOutDomain): Likewise, (zoomOutRange): Likewise, * source/org/jfree/chart/plot/CategoryPlot.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D)): Delegate to new method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, * source/org/jfree/chart/plot/FastScatterPlot.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): Likewise, * source/org/jfree/chart/PolarPlot.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): Likewise, * source/org/jfree/chart/ThermometerPlot.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): Likewise, * source/org/jfree/chart/XYPlot.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomDomainAxes(double, PlotRenderingInfo, Point2D)): Delegate to new method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D)): Delegate to new method, * source/org/jfree/chart/plot/Zoomable.java (zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)): New method, (zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)): Likewise. 2007-09-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/SimpleHistogramDataset.java: API doc updates. 2007-08-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Week.java (Week(Date, TimeZone)): Deprecated, (Week(Date, TimeZone, Locale)): New constructor, * tests/org/jfree/data/time/junit/WeekTests.java (testConstructor): New test. 2007-08-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalBarRenderer.java (drawHorizontalItem): Check for null data items, (drawVerticalItem): Likewise, * tests/org/jfree/chart/renderer/category/junit/StatisticalBarRendererTests.java (testDrawWithNullMeanVertical): New test method, (testDrawWithNullMeanHorizontal): Likewise, (testDrawWithNullDeviationVertical): Likewise, (testDrawWithNullDeviationHorizontal): Likewise. 2007-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYSplineAndShapeRenderer.java (precision): Initialise in constructor, (XYSplineAndShapeRenderer()): Change default precision to 5, (XYSplineAndShapeRenderer(int)): New constructor. 2007-08-03 David Gilbert <david.gilbert@object-refinery.com> Fix for bug 1766646: * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java (findDomainBounds): Check for null, (findRangeBounds): Likewise. 2007-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java (LegendItem): Initialise GradientPaintTransformer. 2007-08-02 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/axis/LogAxis.java (LogAxis(String)): Leave tick marks visible, (autoAdjustRange): Apply margins to log scale, and don't allow auto-range to go below minimum value, (refreshTicksHorizontal): Improved handling of ticks and labels, (refreshTicksVertical): Likewise, (selectAutoTickUnit): New method, (selectHorizontalAutoTickUnit): Likewise, (selectVerticalAutoTickUnit): Likewise, (exponentLengthToJava2D): Likewise, (estimateMaximumTickLabelHeight): Likewise, (estimateMaximumTickLabelWidth): Likewise, (equals): New method override, (hashCode): Likewise, (createLogTickUnits): New method, and moved to source/org/jfree/chart/axis/, * source/org/jfree/chart/axis/NumberTick.java (NumberTick(TickType, double, String, TextAnchor, TextAnchor, double)): New constructor, * source/org/jfree/chart/axis/NumberTickUnit.java (NumberTickUnit(double, NumberFormat, int)): New constructor, (toString): New method override, * source/org/jfree/chart/axis/TickType.java: New file, * source/org/jfree/chart/axis/TickUnit.java (minorTickCount): New field, (TickUnit(double, int)): New constructor, (getMinorTickCount): New method, (equals): Updated for new field, * source/org/jfree/chart/axis/TickUnits.java: Reformatting only, * source/org/jfree/chart/axis/ValueAxis.java (drawTickMarksAndLabels): Check for major tick before writing label, * source/org/jfree/chart/axis/ValueTick.java: (tickType): New field, (ValueTick(TickType, double, String, TextAnchor, TextAnchor, double)): New constructor, (getTickType): New method, (equals): Updated for new field, * source/org/jfree/chart/util/LogFormat.java: New file, * tests/org/jfree/chart/axis/junit/AxisPackageTests.java (suite): Added LogAxisTests and TickUnitsTests, * tests/org/jfree/chart/axis/junit/LogAxisTests.java: New file, * tests/org/jfree/chart/axis/junit/TickUnitsTests.java: Likewise. 2007-07-31 David Gilbert <david.gilbert@object-refinery.com> Bug 1763413: * source/org/jfree/chart/axis/PeriodAxis.java (drawTickLabels): Calculate tick label width correctly for inverted axis. 2007-07-25 David Gilbert <david.gilbert@object-refinery.com> Patch 1752205: * source/org/jfree/data/time/TimeTableXYDataset.java (clear): New method, * tests/org/jfree/data/time/junit/TimeTableXYDatasetTests.java (testClear): New method. 2007-07-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYSplineAndShapeRenderer.java: New file, contributed by Klaus Rheinwald. 2007-07-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/SymbolAxis.java (DEFAULT_GRID_BAND_ALTERNATE_PAINT): New field, (gridBandAlternatePaint): New field, (SymbolAxis): Initialise new field, (getGridBandAlternatePaint): New method, (setGridBandAlternatePaint): Likewise, (equals): Test new field, (writeObject): Handle new field, (readObject): Likewise, * tests/org/jfree/chart/axis/junit/SymbolAxisTests.java (testEquals): Added check for new field. 2007-07-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/demo/PieChartDemo1.java (createChart): Modified settings, * source/org/jfree/chart/plot/PiePlot.java (DEFAULT_INTERIOR_GAP): Modified default, (DEFAULT_LABEL_SHADOW_PAINT): Likewise, (simpleLabels): New field, (labelPadding): Likewise, (simpleLabelOffset): Likewise, (PiePlot(PieDataset)): Initialise new fields, (getLabelPadding): New method, (setLabelPadding): Likewise, (getSimpleLabels): Likewise, (setSimpleLabels): Likewise, (getSimpleLabelOffset): Likewise, (setSimpleLabelOffset): Likewise, (drawPie): Added simple label handling, (drawSimpleLabels): New method, (drawLabels): Reformatting, (drawLeftLabels): Set label padding, (drawRightLabels): Likewise, (equals): Updated for new fields, * source/org/jfree/chart/plot/PiePlot3D.java (draw): Updated for simple labels. 2007-07-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (remove): Actually remove the subplot. 2007-07-11 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/axis/LogAxis.java (setSmallestValue): Added event notification, (zoomRange): New method override. 2007-07-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/SegmentedTimeline.java (FIRST_MONDAY_AFTER_1900): Deprecated, (NO_DST_TIME_ZONE): Likewise, (DEFAULT_TIME_ZONE): Likewise, (workingCalendarNoDST): Initialise in constructor, (SegmentedTimeline): Initialise workingCalendarNoDST, (firstMondayAfter1900): New method, (newMondayThroughFridayTimeline): Use new method for first monday, (newFifteenMinuteTimeline): Likewise, * tests/org/jfree/chart/axis/junit/SegmentedTimelineTests2.java: Save and restore time zone in all tests. 2007-07-11 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/DayTests.java (testGetFirstMillisecond): Set/restore time zone, (testGetFirstMillisecondWithCalendar): Set time zone, (testGetLastMillisecond): Set/restore time zone, (testGetLastMillisecondWithCalendar): Set time zone, * tests/org/jfree/data/time/junit/HourTests.java: Likewise, * tests/org/jfree/data/time/junit/MillisecondTests.java: Likewise, * tests/org/jfree/data/time/junit/MinuteTests.java: (testGetFirstMillisecond): Set/restore time zone, (testGetFirstMillisecondWithCalendar): Set time zone, (testGetLastMillisecond): Set/restore time zone, (testGetLastMillisecondWithCalendar): Set time zone, (testGetStart): Set/restore time zone, (testGetEnd): Likewise, * tests/org/jfree/data/time/junit/MonthTests.java (testGetFirstMillisecond): Set/restore time zone, (testGetFirstMillisecondWithCalendar): Set time zone, (testGetLastMillisecond): Set/restore time zone, (testGetLastMillisecondWithCalendar): Set time zone, * tests/org/jfree/data/time/junit/QuarterTests.java: Likewise, * tests/org/jfree/data/time/junit/SecondTests.java: Likewise, * tests/org/jfree/data/time/junit/WeekTests.java: Likewise, * tests/org/jfree/data/time/junit/YearTests.java: Likewise. 2007-07-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createPieChart(String, PieDataset, boolean, boolean, Locale)): New method, (createPieChart(String, PieDataset, PieDataset, int, boolean, boolean, boolean, Locale, boolean, boolean)) : Likewise, (createRingChart(String, PieDataset, boolean, boolean, Locale)): Likewise, (createPieChart3D(String, PieDataset, boolean, boolean, Locale)): Likewise, * source/org/jfree/chart/labels/StandardPieSectionLabelGenerator.java (StandardPieSectionLabelGenerator(Locale)): New constructor, (StandardPieSectionLabelGenerator(String labelFormat, Locale)): Likewise, * source/org/jfree/chart/labels/StandardPieToolTipGenerator.java (StandardPieToolTipGenerator): Delegate, (StandardPieToolTipGenerator(Locale)): New constructor, (StandardPieToolTipGenerator(String)): Delegate, (StandardPieToolTipGenerator(String labelFormat, Locale)): New constructor. 2007-07-10 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/chart/renderer/xy/junit/ClusteredXYBarRendererTests.java (EPSILON): New field, (testFindDomainBounds): Fixed compile errors, * tests/org/jfree/data/time/junit/TimePeriodValuesCollectionTests.java (EPSILON): New field, (testGetDomainBoundsWithoutInterval): Fixed compile errors, (testGetDomainBoundsWithInterval): Likewise. 2007-07-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/SimpleHistogramDataset.java (SimpleHistogramDataset): Check for null argument. 2007-07-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (getRangeAxisIndex): New method. ---------- JFREECHART 1.0.6 RELEASED ------------------------ 2007-06-15 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (getSwtColorFromPool): Removed JDK 1.5 specific code. 2007-06-15 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Updated version number to 1.0.6, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (XYBarRenderer): Changed default value for drawBarOutline. 2007-06-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/AbstractPieLabelDistributor.java: New file, * source/org/jfree/chart/plot/PieLabelDistributor.java: Now extends AbstractPieLabelDistributor, * source/org/jfree/chart/plot/PieLabelRecord: Implemented Serializable, * source/org/jfree/chart/plot/PiePlot.java (labelDistributor): New field, (PiePlot(PieDataset)): Initialise new field, (getLabelDistributor): New method, (setLabelDistributor): New method. 2007-06-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/LookupPaintScale.java (PaintItem.value): Changed from Number to double, (PaintItem(Number, Paint)): Changed first parameter to double, (compareTo): Updated for change in value type, (equals): Likewise, (add(Number, Paint)): Deprecated, (add(double, Paint)): New method, (getPaint): Updated. 2007-06-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBoxAndWhiskerRenderer.java (XYBoxAndWhiskerRenderer(double)): Replaced deprecated method call, (drawHorizontalItem): Call addEntity(), (drawVerticalDataItem): Likewise. 2007-06-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java (drawItem): If dataset is not a StatisticalCategoryDataset, revert to the super class drawing behaviour. 2007-06-14 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/chart/renderer/xy/XYSmoothLineAndShapeRenderer.java: New class. 2007-06-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/block/LineBorder.java (draw): Don't draw if area doesn't have positive dimensions, * source/org/jfree/chart/util/HexNumberFormat.java: New class. 2007-06-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultBoxAndWhiskerCategoryDataset.java (add): Assign max outlier value to maxValue. 2007-06-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/DefaultDrawingSupplier.java (DEFAULT_FILL_PAINT_SEQUENCE): New field, (fillPaintSequence): Likewise, (fillPaintIndex): Likewise, (DefaultDrawingSupplier): Constructors updated for new field, (getNextFillPaint): New method, * source/org/jfree/chart/plot/DrawingSupplier.kava (getNextFillPaint): New method, * source/org/jfree/chart/renderer/AbstractRenderer.java (autoPopulateSeriesPaint): New field, (autoPopulateSeriesFillPaint): Likewise, (autoPopulateSeriesOutlinePaint): Likewise, (autoPopulateSeriesStroke): Likewise, (autoPopulateSeriesOutlineStroke): Likewise, (autoPopulateSeriesShape): Likewise, (AbstractRenderer): Initialise new fields, (lookupSeriesPaint): Check autoPopulateField, (getAutoPopulateSeriesPaint): New method, (setAutoPopulateSeriesPaint): New method, (lookupSeriesFillPaint): New method, (getAutoPopulateSeriesFillPaint): New method, (setAutoPopulateSeriesFillPaint): New method, (lookupSeriesOutlinePaint): New method, (getAutoPopulateSeriesOutlinePaint): New method, (setAutoPopulateSeriesOutlinePaint): New method, (lookupSeriesStroke): New method, (getAutoPopulateSeriesStroke): New method, (setAutoPopulateSeriesStroke): New method, (lookupSeriesOutlineStroke): New method, (getAutoPopulateSeriesOutlineStroke): New method, (setAutoPopulateSeriesOutlineStroke): New method, (lookupSeriesShape): New method, (getAutoPopulateSeriesShape): New method, (setAutoPopulateSeriesShape): New method. 2007-06-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (drawItem): Check item visibility flag, and check that entity hotspot is contained in dataArea before adding an entity, (getLegendItem): Reduced indentation. 2007-06-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/ClusteredXYBarRenderer.java (findDomainBounds): New method override, (findDomainBoundsWithOffset): New utility method, (drawItem): Fixed to handle inverted axes, * tests/org/jfree/chart/renderer/xy/junit/ClusteredXYBarRendererTests.java (testFindDomainBounds): New test, (createSampleDataset1): New helper method. 2007-06-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/ClusteredXYBarRenderer.java (drawItem): Simplified chart entity generation, (equals): Reorganised. 2007-06-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createBarChart): Replaced deprecated method calls, (createWaterfallChart): Likewise, (createBoxAndWhiskerChart): Likewise. 2007-06-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (CandlestickRenderer(double, boolean, XYToolTipGenerator)): Replaced call to deprecated setToolTipGenerator() method. 2007-06-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimePeriodValuesCollection.java (TimePeriodValuesCollection(TimePeriodValues)): Changed default value for this.domainIsPointsInTime, (getDomainBounds): Use includeInterval parameter correctly, * tests/org/jfree/data/time/junit/TimePeriodValuesCollectionTests.java (testGetDomainBoundsWithoutInterval): New method, (testGetDomainBoundsWithInterval): Likewise. 2007-06-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/QuarterDateFormat.java (GREEK_QUARTERS): New field, (quarterFirst): Likewise, (QuarterFormat(TimeZone, String[], boolean)): New constructor, (equals): Updated for new field, * tests/org/jfree/chart/axis/junit/QuarterDateFormatTests.java (testEquals): Added check for new field. 2007-06-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (drawItem): Take orientation into account when passing coordinates to addEntity(), * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (drawSecondaryPass): Likewise, * tests/org/jfree/chart/junit/TestUtilities.java: New file, * tests/org/jfree/chart/renderer/xy/junit/StandardXYItemRendererTests.java (testNoDisplayedItem): New method. 2007-06-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (drawSecondaryPass): Only add entity if data point is within the visible data area. 2007-06-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Plot.java (fillBackground(Graphics2D, Rectangle2D)): Delegate to new method, (fillBackground(Graphics2D, Rectangle2D, PlotOrientation)): New method, * source/org/jfree/chart/plot/CategoryPlot.java (drawBackground): New method override, * source/org/jfree/chart/plot/XYPlot.java (drawBackground): Call new fillBackground() method. 2007-06-06 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (getToolTipText): Fixed minor issues with tooltips. bug reported and fix proposed by Christoph Beck, bug 1726404 (HP); 2007-06-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (paintComponent): Fixed coordinates for drawing buffer image (DG); 2007-06-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (JFreeChart(String, Font, Plot, boolean)): Add change listener to legend, if created, * tests/org/jfree/chart/junit/JFreeChartTests.java (testLegendEvents): New test, (chartChanged): New method, (lastChartChangeEvent): New field. 2007-06-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (addItemEntity): Fixed deprecation warning, * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (drawHorizontalItem): Likewise, (drawVerticalItem): Likewise, * source/org/jfree/chart/renderer/category/GanttRenderer.java (drawTasks): Likewise, (drawTask): Likewise, * source/org/jfree/chart/renderer/category/GroupedStackedBarRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/category/IntervalBarRenderer.java (drawInterval): Likewise, * source/org/jfree/chart/renderer/category/LayeredBarRenderer.java (drawHorizontalItem): Likewise, (drawVerticalItem): Likewise, * source/org/jfree/chart/renderer/category/LevelRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java (drawItem): Likewise. 2007-06-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java (drawItem): Return early for non-visible items, (equals): Call super.equals() last. 2007-05-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/SubCategoryAxis.java (addSubCategory): Added argument check and event notification. 2007-05-25 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/renderer/xy/VectorRenderer.java: Moved to source/org/jfree/chart/renderer/xy/VectorRenderer.java * experimental/org/jfree/experimental/data/xy/Vector.java: Moved to source/org/jfree/data/xy/Vector.java, * experimental/org/jfree/experimental/data/xy/VectorDataItem.java: Moved to source/org/jfree/data/xy/VectorDataItem.java, * experimental/org/jfree/experimental/data/xy/VectorSeries.java: Moved to source/org/jfree/data/xy/VectorSeries.java, * experimental/org/jfree/experimental/data/xy/VectorSeriesCollection.java: Moved to source/org/jfree/data/xy/VectorSeriesCollection.java, * experimental/org/jfree/experimental/data/xy/VectorXYDataset.java: Moved to source/org/jfree/data/xy/VectorXYDataset.java, * experimental/org/jfree/experimental/data/xy/XYCoordinate.java: Moved to source/org/jfree/data/xy/XYCoordinate.java. 2007-05-25 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Added '-cvs' to version number, removed gjdoc, * experimental/org/jfree/experimental/data/xy/VectorSeries.java (remove): New method, (clear): Likewise. 2007-05-25 David Gilbert <david.gilbert@object-refinery.com> Translations provided by Leonardo Alves Machado: * source/org/jfree/chart/LocalizationBundle_pt_BR.properties: New file, * source/org/jfree/chart/editor/LocalizationBundle_pt_BR.properties: Likewise. 2007-05-24 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/renderer/xy/VectorRenderer.java (findDomainBounds): Updated for method name changes, (findRangeBounds): Likewise, (drawItem): Likewise, * experimental/org/jfree/experimental/data/xy/Vector.java (getLength): New method, (getAngle): Likewise, * experimental/org/jfree/experimental/data/xy/VectorDataItem.java (getVector): New method, (getDeltaX): Renamed getVectorX(), (getDeltaY): Renamed getVectorY(), * experimental/org/jfree/experimental/data/xy/VectorSeries.java (getDeltaXValue): Renamed getVectorXValue(), (getDeltaYValue): Renamed getVectorYValue(), * experimental/org/jfree/experimental/data/xy/VectorSeriesCollection.java (removeSeries): New method, (removeAllSeries): Likewise, (indexOf): Likewise, (getVector): Likewise, (getDeltaXValue): Renamed getVectorXValue(), (getDeltaYValue): Renamed getVectorYValue(), * experimental/org/jfree/experimental/data/xy/VectorXYDataset.java (getDeltaXValue): Renamed getVectorXValue(), (getDeltaYValue): Renamed getVectorYValue(), (getDeltaX): Removed, (getDeltaY): Removed, (getVector): New method. 2007-05-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (render): Fixed bug for a series with zero items, * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (initialise): Disable visible items optimisation, * tests/org/jfree/chart/plot/junit/XYPlotTests.java (testDrawSeriesWithZeroItems): New test. 2007-05-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (updateUI): Update UI for popup menu if there is one. 2007-05-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartMouseEvent.java: API doc updates, * source/org/jfree/chart/ChartMouseListener.java: Likewise. 2007-05-19 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java Integrated a patch by Cédric Chabanois to remove resources leaks. * swt/org/jfree/experimental/swt/SWTGraphics2D.java Removed resource leaks by adding a resource pool thanks to a patch sent by Cédric Chabanois. 2007-05-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/SimpleHistogramDataset.java (clearObservations): New method, (removeAllBins): Likewise, * tests/org/jfree/data/statistics/junit/SimpleHistogramDatasetTests.java (testClearObservations): New method, (testRemoveAllBins): Likewise. 2007-05-19 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (paintControl): corrected bug with scaling when the drawing region is larger than maximum draw width/height. 2007-05-19 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (paintControl): check for null chart 2007-05-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java (dataset): New field, (seriesKey): Likewise, (getDataset): New method, (setDataset): Likewise, (getSeriesKey): Likewise, (setSeriesKey): Likewise, * source/org/jfree/chart/entity/CategoryItemEntity.java (dataset): No longer transient, (series): Deprecated, (category): Deprecated, (categoryIndex): Deprecated, (rowKey): New field, (columnKey): Likewise, (CategoryItemEntity(Shape, String, String, CategoryDataset, int, Object, int)): Deprecated, (CategoryItemEntity(Shape, String, String, CategoryDataset, Comparable, Comparable)): New constructor, (setDataset): Added argument check, (getRowKey): New method, (setRowKey): New method, (getColumnKey): New method, (setColumnKey): New method, (getSeries): Deprecated, (setSeries): Deprecated, (getCategory): Deprecated, (setCategory): Deprecated, (getCategoryIndex): Likewise, (setCategoryIndex): Likewise, (toString): Include new fields, (equals): Updated for new fields, * source/org/jfree/chart/entity/LegendItemEntity.java (dataset): New field, (seriesKey): New field, (getDataset): New method, (setDataset): New method, (getSeriesKey): New method, (setSeriesKey): New method, (getSeriesIndex): Deprecated, (setSeriesIndex): Deprecated, (equals): Updated for new fields, (toString): Likewise, * source/org/jfree/chart/plot/MeterPlot.java (getLegendItems): Set dataset for legend item, * source/org/jfree/chart/plot/MultiplePiePlot.java (getLegendItems): Likewise, * source/org/jfree/chart/plot/PiePlot.java (getLegendItems): Likewise, * source/org/jfree/chart/plot/SpiderWebPlot.java (getLegendItems): Likewise, * source/org/jfree/chart/renderer/DefaultPolarItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (getLegendItem): Set dataset and series key, * source/org/jfree/chart/renderer/category/AreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/CategoryStepRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/title/LegendItemBlockContainer.java (dataset): New field, (seriesKey): Likewise, (LegendItemBlockContainer(Arrangement, int, int)): Deprecated, (LegendItemBlockContainer(Arrangement, Dataset, Comparable)): New constructor, (getDataset): New method, (getSeriesKey): Likewise, (draw): Updated for new fields, * source/org/jfree/chart/title/LegendTitle.java (createLegendItemBlock): Replaced deprecated constructor, * tests/org/jfree/chart/entity/junit/CategoryItemEntityTests.java (testEquals): Updated, (testCloning): Reformatted, (testSerialization): Likewise, * tests/org/jfree/chart/entity/junit/LegendItemEntityTests.java (testEquals): Added checks for new fields, (testCloning): Reformatted, (testSerialization): Likewise. 2007-05-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MultiplePiePlot.java (setPieChart(JFreeChart)): Added argument checks. 2007-05-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (getLegendItem): Set datasetIndex and seriesIndex, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (getLegendItem): Likewise, * tests/org/jfree/chart/renderer/xy/junit/StandardXYItemRendererTests.java (testGetLegendItemSeriesIndex): New test, * tests/org/jfree/chart/renderer/xy/junit/XYAreaRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/XYAreaRenderer2Tests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/XYBarRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/XYBubbleRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/XYDifferenceRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/XYDotRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/XYLineAndShapeRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/xy/junit/YIntervalRendererTests.java (testGetLegendItemSeriesIndex): Likewise. 2007-05-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AreaRenderer.java (getLegendItem): Set datasetIndex and seriesIndex, * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (getLegendItem): Likewise, * tests/org/jfree/chart/renderer/category/junit/AreaRendererTests.java (testGetLegendItemSeriesIndex): New test, * tests/org/jfree/chart/renderer/category/junit/BoxAndWhiskerRendererTests.java (testGetLegendItemSeriesIndex): Likewise, * tests/org/jfree/chart/renderer/category/junit/LevelRendererTests.java (testGetLegendItemSeriesIndex): Likewise. 2007-05-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Set datasetIndex and seriesIndex, * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (getLegendItem): Likewise, * tests/org/jfree/chart/renderer/category/junit/BarRendererTests.java (testGetLegendItemSeriesIndex): New test, * tests/org/jfree/chart/renderer/category/junit/LineAndShapeRendererTests.java (testGetLegendItemSeriesIndex): Likewise. 2007-05-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (getSubtitles): Copy list, (setSubtitles): Likewise, (addSubtitle(int, Title)): New method, * tests/org/jfree/chart/junit/JFreeChartTests.java (testAddSubtitle): New test method, (testGetSubtitles): Likewise. 2007-05-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (getSubtitle): Fixed argument check, * tests/org/jfree/chart/junit/JFreeChartTests.java (testGetSubtitle): New test method. 2007-05-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Plot.java (outlineVisible): New field, (Plot): Initialise new field, (isOutlineVisible): New method, (setOutlineVisible): Likewise, (drawOutline): Check outlineVisible flag, (equals): Likewise. 2007-05-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Check for visibility, * tests/org/jfree/chart/renderer/category/junit/BarRendererTests.java (testGetLegendItem): New test method. 2007-05-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (getLegendItem): Check for visibility, * tests/org/jfree/chart/renderer/category/junit/BoxAndWhiskerRendererTests.java (testGetLegendItem): New test method. 2007-05-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StackedBarRenderer3D.java (drawStackHorizontal): Check drawBarOutlines flag, and add shading to bar sides, (drawStackVertical): Likewise. 2007-05-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeriesCollection.java (indexOf): New method, * source/org/jfree/data/xy/XYSeriesCollection.java (indexOf): Likewise, * tests/org/jfree/data/junit/time/TimeSeriesCollectionTests.java (testIndexOf): New method, * tests/org/jfree/data/junit/xy/XYSeriesCollectionTests.java (testIndexOf): Likewise. 2007-05-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (render): Only process visible data items, if possible, * source/org/jfree/chart/renderer/RendererUtilities.java: New file, * source/org/jfree/chart/renderer/xy/DeviationRenderer.java: (initialise): Disable visible items optimisation, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (initialise): Likewise, * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java: (initialise): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRendererState.java (processVisibleItemsOnly): New field, (XYItemRendererState): Initialise new field, (getProcessVisibleItemsOnly): New method, (setProcessVisibleItemsOnly): Likewise, * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java (initialise): Disable visible items optimisation, * tests/org/jfree/chart/renderer/junit/RendererUtilitiesTests.java: New file. 2007-05-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/DefaultPolarItemRenderer.java (drawSeries): Fixed lookup for series paint and stroke, (getLegendItem): Likewise. 2007-05-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeriesCollection.java (getDomainOrder): New method override. 2007-05-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (previousStandardDate): Fixed boundary cases for MILLISECOND, SECOND and MONTH units, * tests/org/jfree/chart/axis/junit/DateAxisTests.java (testPreviousStandardDateYear): Removed, (testPreviousStandardDateMonth): Removed, (testPreviousStandardDateDay): Removed, (testPreviousStandardDateHour): Removed, (testPreviousStandardDateMinute): Removed, (testPreviousStandardDateSecond): Removed, (testPreviousStandardDateMillisecond): Removed, (testPreviousStandardDateYearA): New method, (testPreviousStandardDateYearB): Likewise, (testPreviousStandardDateMonthA): Likewise, (testPreviousStandardDateMonthB): Likewise, (testPreviousStandardDateDayA): Likewise, (testPreviousStandardDateDayB): Likewise, (testPreviousStandardDateHourA): Likewise, (testPreviousStandardDateHourB): Likewise, (testPreviousStandardDateMinuteA): Likewise, (testPreviousStandardDateMinuteB): Likewise, (testPreviousStandardDateSecondA): Likewise, (testPreviousStandardDateSecondB): Likewise, (testPreviousStandardDateMillisecondA): Likewise, (testPreviousStandardDateMillisecondB): Likewise. 2007-05-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/ThermometerPlot.java (subrangePaint): Made transient, (ThermometerPlot(ValueDataset)): Set axis field directly, (setRangeAxis): Added null argument check, and event notification, (setPadding): Added null argument check, (setUnits(String)): Deprecated, (setValueFont): Added null argument check, (setValuePaint): Likewise, (setValueFormat): Likewise, (setMercuryPaint): Likewise, (getShowValueLines): Deprecated, (setShowValueLines): Likewise, (datasetChanged): Check for null dataset, (writeObject): Handle subrange paint, (readObject): Likewise. 2007-05-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYLine3DRenderer.java (equals): New method override, (readObject): New method, (writeObject): New method. 2007-04-30 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/annotations/XYTitleAnnotation.java (equals): Fixed incorrect cast, * experimental/org/jfree/experimental/chart/annotations/junit/XYTitleAnnotationTests.java: New file. 2007-04-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DefaultPieDataset.java (insertValue(int, Comparable, double)): New method, (insertValue(int, Comparable, Double)): Likewise. 2007-04-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues.java (insertValues(int, Comparable, double)): New method, (insertValues(int, Comparable, Double)): Likewise, * tests/org/jfree/data/junit/DefaultKeyedValuesTests.java (testConstructor): New test method, (testGetItemCount): Likewise, (testGetKeys): Likewise, (testGetValue): Extended, (testAddValue): New test method, (testInsertValue): Likewise. 2007-04-23 David Gilbert <david.gilbert@object-refinery.com> Patch from Richard West: * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (drawItemPass0): Reimplemented, (drawItemPass1): Likewise, (getPositiveArea): Removed, (getNegativeArea): Removed, (getIntersection): Removed, (isEitherSeriesDegenerate): New method, (areSeriesDisjoint): New method, (createPolygon): New method. 2007-04-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (positiveItemLabelPosition): Deprecated, (negativeItemLabelPosition): Likewise, (createEntities): Likewise, (getPositiveItemLabelPosition): Deprecated, (setPositiveItemLabelPosition(ItemLabelPosition)): Likewise, (setPositiveItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (getNegativeItemLabelPosition): Deprecated, (setNegativeItemLabelPosition(ItemLabelPosition)): Likewise, (setNegativeItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (getCreateEntities): Deprecated, (setCreateEntities(Boolean): Likewise, (setCreateEntities(Boolean, boolean)): Likewise, * source/org/jfree/chart/renderer/category/CategoryItemRenderer.java (getPositiveItemLabelPosition): Deprecated, (setPositiveItemLabelPosition(ItemLabelPosition)): Likewise, (setPositiveItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (getNegativeItemLabelPosition): Deprecated, (setNegativeItemLabelPosition(ItemLabelPosition)): Likewise, (setNegativeItemLabelPosition(ItemLabelPosition, boolean)): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (getPositiveItemLabelPosition): Deprecated, (setPositiveItemLabelPosition(ItemLabelPosition)): Likewise, (setPositiveItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (getNegativeItemLabelPosition): Deprecated, (setNegativeItemLabelPosition(ItemLabelPosition)): Likewise, (setNegativeItemLabelPosition(ItemLabelPosition, boolean)): Likewise. 2007-04-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (itemLabelsVisible): Deprecated, (itemLabelFont): Likewise, (itemLabelPaint): Likewise, (setItemLabelsVisible(boolean)): Likewise, (setItemLabelsVisible(Boolean)): Likewise, (setItemLabelsVisible(Boolean, boolean)): Likewise, (getItemLabelFont): Likewise, (setItemLabelFont(Font)): Likewise, (setItemLabelFont(Font, boolean)): Likewise, (getItemLabelPaint): Likewise, (setItemLabelPaint(Paint)): Likewise, (setItemLabelPaint(Paint, boolean)): Likewise, * source/org/jfree/chart/renderer/category/CategoryItemRenderer.java (setItemLabelsVisible(boolean)): Deprecated, (setItemLabelsVisible(Boolean)): Likewise, (setItemLabelsVisible(Boolean, boolean)): Likewise, (getItemLabelFont): Likewise, (setItemLabelFont(Font)): Likewise, (getItemLabelPaint): Likewise, (setItemLabelPaint(Paint)): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (setItemLabelsVisible(boolean)): Deprecated, (setItemLabelsVisible(Boolean)): Likewise, (setItemLabelsVisible(Boolean, boolean)): Likewise, (getItemLabelFont): Likewise, (setItemLabelFont(Font)): Likewise, (getItemLabelPaint): Likewise, (setItemLabelPaint(Paint)): Likewise. 2007-04-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (itemLabelGenerator): Deprecated, (toolTipGenerator): Likewise, (itemURLGenerator): Likewise, (setItemLabelGenerator): Likewise, (getToolTipGenerator): Likewise, (setToolTipGenerator): Likewise, (setItemURLGenerator): Deprecated and added event notification, (setSeriesItemURLGenerator): Added event notification, (setBaseItemURLGenerator): Likewise, * source/org/jfree/chart/renderer/category/CategoryItemRenderer.java (setItemLabelGenerator): Deprecated, (getToolTipGenerator): Likewise, (setToolTipGenerator): Likewise, (setItemURLGenerator): Likewise. 2007-04-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (itemLabelGenerator): Deprecated, (toolTipGenerator): Likewise, (getItemLabelGenerator): Likewise, (setItemLabelGenerator): Likewise, (getToolTipGenerator): Likewise, (setToolTipGenerator): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (setItemLabelGenerator): Deprecated, (setToolTipGenerator): Likewise. 2007-04-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (paint): Deprecated, (fillPaint): Likewise, (outlinePaint): Likewise, (stroke): Likewise, (outlineStroke): Likewise, (shape): Likewise, (getItemPaint): Call new lookupSeriesPaint() method, (lookupSeriesPaint): New method, (setPaint(Paint)): Deprecated, (setPaint(Paint, boolean)): Likewise, (getSeriesPaint(int)): Reimplemented to return series paint only, not a lookup, (getItemFillPaint): Call new lookupSeriesFillPaint() method, (lookupSeriesFillPaint): New method, (getSeriesFillPaint(int)): Reimplemented to return series fill paint only, not a lookup, (setFillPaint(Paint)): Deprecated, (setFillPaint(Paint, boolean)): Likewise, (getItemOutlinePaint): Call new lookupSeriesOutlinePaint() method, (lookupSeriesOutlinePaint): New method, (getSeriesOutlinePaint(int)): Reimplemented to return series outline paint only, not a lookup, (setOutlinePaint(Paint)): Deprecated, (setOutlinePaint(Paint, boolean)): Likewise, (getItemStroke): Call new lookupSeriesOutlineStroke() method, (lookupSeriesStroke): New method, (setStroke(Stroke)): Deprecated, (setStroke(Stroke, boolean)): Deprecated, (getSeriesStroke(int)): Reimplemented to return series stroke only, not a lookup, (getItemOutlineStroke): Call new lookupSeriesOutlineStroke() method, (lookupSeriesOutlineStroke): New method, (setOutlineStroke(Stroke)): Deprecated, (setOutlineStroke(Stroke, boolean)): Deprecated, (getSeriesOutlineStroke(int)): Reimplemented to return series outline stroke, not a lookup, (getItemShape): Call new lookupSeriesShape() method, (lookupSeriesShape): New method, (setShape(Shape)): Deprecated, (setShape(Shape, notify)): Deprecated, (getSeriesShape(int)): Reimplemented to return series shape, not a lookup, * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (getLegendItem): Updated for renderer changes, * source/org/jfree/chart/renderer/category/AreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/CategoryItemRenderer.java (setPaint): Deprecated, (setOutlinePaint): Deprecated, (setStroke): Deprecated, (setOutlineStroke): Deprecated, (setShape): Deprecated, * source/org/jfree/chart/renderer/category/CategoryStepRenderer.java (getLegendItem): Updated for renderer changes, * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (getLegendItem): Likewise, (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (getLegendItem): Likewise, (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (setPaint): Deprecated, (setOutlinePaint): Deprecated, (setStroke): Deprecated, (setOutlineStroke): Deprecated, (setShape): Deprecated, * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (getLegendItem): Likewise. 2007-04-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (sectionPaint): Deprecated, (sectionOutlinePaint): Likewise, (sectionOutlineStroke): Likewise, (getSectionPaint): Likewise, (setSectionPaint(Paint)): Likewise, (getSectionOutlinePaint): Likewise, (setSectionOutlinePaint(Paint)): Likewise, (getSectionOutlineStroke): Likewise, (setSectionOutlineStroke(Stroke)): Likewise, (zoom): Removed. 2007-04-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (seriesVisibleInLegend): Deprecated, (getSeriesVisibleInLegend): Likewise, (setSeriesVisibleInLegend(Boolean)): Likewise, (setSeriesVisibleInLegend(Boolean, boolean)): Likewise, * source/org/jfree/chart/renderer/category/CategoryItemRenderer.java (getSeriesVisibleInLegend): Likewise, (setSeriesVisibleInLegend(Boolean)): Likewise, (setSeriesVisibleInLegend(Boolean, boolean)): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (getSeriesVisibleInLegend): Likewise, (setSeriesVisibleInLegend(Boolean)): Likewise, (setSeriesVisibleInLegend(Boolean, boolean)): Likewise. 2007-04-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (seriesVisible): Deprecated, (getSeriesVisible): Likewise, (setSeriesVisible(Boolean)): Likewise, (setSeriesVisible(Boolean, boolean)): Likewise, * source/org/jfree/chart/renderer/category/CategoryItemRenderer.java (getSeriesVisible): Likewise, (setSeriesVisible(Boolean)): Likewise, (setSeriesVisible(Boolean, boolean)): Likewise, * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (getSeriesVisible): Likewise, (setSeriesVisible(Boolean)): Likewise, (setSeriesVisible(Boolean, boolean)): Likewise. 2007-04-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (setMinimumDate): Handle case where new minimum date is on or after the existing maximum date, (setMaximumDate): Handle case where new maximum date is on or before the existing minimum date, * tests/org/jfree/chart/axis/junit/DateAxisTests.java (testSetMaximumDate): Added new check, (testSetMinimumDate): Likewise. 2007-04-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/urls/StandardCategoryURLGenerator.java (generateURL): Use new URLUtilities class for encoding, * source/org/jfree/chart/urls/StandardPieURLGenerator.java (generateURL): Likewise, * source/org/jfree/chart/urls/TimeSeriesURLGenerator.java (generateURL): Likewise, * source/org/jfree/chart/urls/URLUtilities.java: New file, * tests/org/jfree/chart/urls/junit/StandardPieURLGeneratorTests.java (testURL): Added new check, * tests/org/jfree/chart/urls/junit/TimeSeriesURLGeneratorTests.java (testGenerateURL): New test method. 2007-04-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/urls/TimeSeriesURLGenerator.java (TimeSeriesURLGenerator(DateFormat, String, String, String)): Added null argument checks, (getDateFormat): New method, (getPrefix): New method, (getSeriesParameterName): New method, (getItemParameterName): New method, (equals): New method, * tests/org/jfree/chart/urls/junit/TimeSeriesURLGeneratorTests.java: New file, * tests/org/jfree/chart/urls/junit/UrlsPackageTests.java (suite): Added TimeSeriesURLGeneratorTests. 2007-04-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultBoxAndWhiskerCategoryDataset.java (add): Check for null values, * tests/org/jfree/data/statistics/junit/DefaultBoxAndWhiskerCategoryDatasetTests.java (testCloning): New test method, (test1701822): Likewise. 2007-04-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (actionPerformed): Check for null zoomPoint, (restoreAutoDomainBounds): Likewise, (restoreAutoRangeBounds): Likewise, * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java (findSubplot): Added null argument checks, (zoomRangeAxes(double, PlotRenderingInfo, Point2D)): If not in subplot, zoom for all subplots, (zoomRangeAxes(double, double, PlotRenderingInfo, Point2D)): Likewise, * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (findSubplot): Added null argument checks, (zoomRangeAxes(double, PlotRenderingInfo, Point2D)): If not in subplot, zoom for all subplots, (zoomRangeAxes(double, double, PlotRenderingInfo, Point2D)): Likewise, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (findSubplot): Added null argument checks, (zoomDomainAxes(double, PlotRenderingInfo, Point2D)): If not in subplot, zoom for all subplots, (zoomDomainAxes(double, double, PlotRenderingInfo, Point2D)): Likewise, * source/org/jfree/chart/plot/PlotRenderingInfo.java (getSubplotIndex): Added null argument check. 2007-04-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (getLegendItems): Check for null legend item label, * tests/org/jfree/chart/plot/junit/PiePlotTests.java (NullLegendLabelGenerator): New support class, (testDrawWithNullLegendLabels): New test method. 2007-04-07 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java: Fixed redraw problem (no need to call forceRedraw() anymore). * swt/org/jfree/experimental/swt/SWTGraphics2D.java: Fixed some issues with disposing SWT ressources. Thanks to silent for pointing this out. 2007-04-04 Chris Boek <chris.boek@gmail.com> * source/org/jfree/chart/axis/DateAxis.java (previousStandardDate): Use time zone for Month, (refreshTicksHorizontal): Use time zone, (refreshTicksVertical): Likewise, * source/org/jfree/chart/axis/DateTickUnit.java (addToDate(Date, TimeZone)): New method, (rollDate(Date, TimeZone)): New method, * source/org/jfree/data/time/Hour.java (Hour(Date, TimeZone)): Peg to zone, * source/org/jfree/data/time/Millisecond.java (Millisecond(Date, TimeZone)): Peg to zone, * source/org/jfree/data/time/Month.java (Month(Date, TimeZone)): Peg to zone. 2007-04-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Plot.java (drawBackgroundImage): Changed from protected to public. 2007-04-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer3D.java (drawBackground): Use background alpha, and delegate background image drawing to the plot, * source/org/jfree/chart/renderer/category/LineRenderer3D.java (drawBackground): Likewise. 2007-03-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues2D.java (removeValue): Remove column values by key not index, * tests/org/jfree/data/junit/DefaultKeyedValues2DTests.java (testRemoveValueBug1690654): New test method. ---------- JFREECHART 1.0.5 RELEASED ------------------------ 2007-03-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (draw): Draw shared axis last, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (draw): Likewise. 2007-03-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYErrorRenderer.java (drawItem): Check item visibility. 2007-03-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (drawDomainLine): New method, * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (getItemShapeFilled): Do full lookup, (getShapesFilled): New method, (setShapesFilled): Fire change event, (getSeriesShapesFilled): Only look up per-series settings, (setSeriesShapesFilled): Fire change event, (getLegendItem): Call getItemShapeFilled for shape fill status. 2007-03-23 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Updated library version numbers, * source/org/jfree/chart/plot/XYPlot.java (domainZeroBaselineVisible): New field, (domainZeroBaselineStroke): Likewise, (domainZeroBaselinePaint): Likewise, (XYPlot): Initialise new field, (isDomainZeroBaselineVisible): New method, (setDomainZeroBaselineVisible): Likewise, (getDomainZeroBaselineStroke): Likewise, (setDomainZeroBaselineStroke): Likewise, (getDomainZeroBaselinePaint): Likewise, (setDomainZeroBaselinePaint): Likewise, (draw): Added drawing code for domain zero baseline, (render): Added check for null renderer, (drawZeroDomainBaseline): New method, (equals): Test new fields, (writeObject): Handle new fields, (readObject): Likewise. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (setShapePaint): Fire change event, (setShapeStroke): Likewise. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (getItemLabelGenerator(int, int)): Do lookup, (getSeriesItemLabelGenerator(int)): Lookup only the series generator, (getItemLabelGenerator): New method, (getToolTipGenerator(int, int)): Do lookup, (getToolTipGenerator): New method, (getSeriesToolTipGenerator): Lookup only the series generator. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (fireChangeEvent): Fire new event every time. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot3D.java (setDepthFactor): Fire PlotChangeEvent, (equals): New method override, * tests/org/jfree/chart/plot/junit/PiePlot3DTests.java (testEquals): New test. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/LogarithmicAxis.java (autoAdjustRange): Use new defaultAutoRange attribute, * source/org/jfree/chart/axis/NumberAxis.java (autoAdjustRange): Likewise, * source/org/jfree/chart/axis/PeriodAxis.java (autoAdjustRange): Likewise, * source/org/jfree/chart/axis/ValueAxis.java (DEFAULT_LOWER_BOUND): Deprecated, (DEFAULT_UPPER_BOUND): Likewise, (defaultAutoRange): New field, (ValueAxis(String, TickUnitSource)): Initialise new field, (getDefaultAutoRange): New method, (setDefaultAutoRange): New method, (equals): Check new defaultAutoRange field. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/AxisLocation.java (getOpposite): New method. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (getAntiAlias): Simplified, (getTextAntiAlias): New method, (setTextAntiAlias(boolean)): New method, (setTextAntiAlias(Object)): New method. 2007-03-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java (getDataItem(RegularTimePeriod)): Simplified. 2007-03-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/ExtendedCategoryAxis.java (sublabelPaint): Marked as transient, (setSubLabelFont): Check for null argument, fire change event, (setSubLabelPaint): Likewise, (equals): New method override, (clone): Likewise, (writeObject): New method, (readObject): New method, * tests/org/jfree/chart/axis/junit/AxisPackageTests.java (suite): Added ExtendedCategoryAxisTests, * tests/org/jfree/chart/axis/junit/ExtendedCategoryAxisTests.java: New file. 2007-03-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PolarPlot.java (angleLabelPaint): Marked as transient, (writeObject): Handle angleLabelPaint field, (readObject): Likewise, * tests/org/jfree/chart/plot/junit/PolarPlotTests.java (testSerialization): Added checks for paint fields. 2007-03-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MeterPlot.java (tickPaint): Marked as transient, (tickLabelPaint): Likewise, (writeObject): Handle new transient fields, (readObject): Likewise, * tests/org/jfree/chart/plot/junit/MeterPlotTests.java (testSerialization): Added checks for paint fields. 2007-03-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateTickUnit.java (units): New private field, (toString): New method override. 2007-03-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CompassPlot.java (roseHighlightPaint): Marked transient, (rosePaint): Likewise, (roseCenterPaint): Likewise, (setDrawBorder): Notify listeners, (writeObject): New method, (readObject): New method, * tests/org/jfree/chart/plot/junit/CompassPlotTests.java (testSerialization): Check paint fields with GradientPaint. 2007-03-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/GanttRenderer.java (completePaint): Marked transient, (incompletePaint): Likewise, (equals): Implemented, (writeObject): New method, (readObject): Likewise, * tests/org/jfree/chart/renderer/category/junit/GanttRendererTests.java (testEquals): Extended, (testSerialization): Updated to check gradient paint. 2007-03-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (JFreeChart(String, Font, Plot, boolean)): Update for renamed method, * source/org/jfree/chart/block/AbstractBlock.java (border): Renamed frame, (AbstractBlock): Updated for renamed field, (getBorder): Likewise, (setBorder(BlockBorder)): Updated for renamed method, (setBorder(double, double, double, double)): Likewise, (getBlockFrame): Renamed getFrame(), (setBlockFrame): Renamed setFrame(), (getContentXOffset): Updated for renamed field, (getContentYOffset): Likewise, (trimToContentWidth): Likewise, (trimToContentHeight): Likewise, (calculateTotalWidth): Likewise, (calculateTotalHeight): Likewise, (trimBorder): Likewise, (drawBorder): Likewise, (equals): Likewise, (clone): Likewise, * source/org/jfree/chart/title/LegendTitle.java (draw): Updated for renamed method. 2007-03-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartUtilities.java (saveChartAsPNG(File, JFreeChart, int, int, ChartRenderingInfo)): Wrap writeChartAsPNG in try-finally, (saveChartAsPNG(File, JFreeChart, int, int, ChartRenderingInfo, boolean, int)): Likewise, (saveChartAsJPEG(File, JFreeChart, int, int, ChartRenderingInfo)): Likewise, (saveChartAsJPEG(File, float, JFreeChart, int, int, ChartRenderingInfo)): Likewise. 2007-03-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (JFreeChart(String, Plot, Font, boolean)): Changed initial legend border, * source/org/jfree/chart/block/AbstractBlock.java: implemented Cloneable, (border): Changed type to BlockFrame, (getBorder): Deprecated, (setBorder): Deprecated, (getBlockFrame): New method, (setBlockFrame): New method, (equals): Check id field, (clone): Implemented, * source/org/jfree/chart/block/BlockBorder.java: Implemented BlockFrame interface, * source/org/jfree/chart/block/BlockFrame.java: New file, * source/org/jfree/chart/block/ColorBlock.java (paint): Marked transient, (ColorBlock): Added null argument check, (getPaint): New method, (equals): New method, (writeObject): New method, (readObject): New method, * source/org/jfree/chart/block/LineBorder.java: New file, * source/org/jfree/chart/title/LegendTitle.java (draw): Updated for changes to AbstractBlock border, * tests/org/jfree/chart/block/junit/AbstractBlockTests.java: New file, * tests/org/jfree/chart/block/junit/BlockBorderTests.java: Reformatted, * tests/org/jfree/chart/block/junit/BlockPackageTests.java: Added new tests, * tests/org/jfree/chart/block/junit/ColorBlockTests.java: New file, * tests/org/jfree/chart/block/junit/EmptyBlockTests.java: Reformatted, * tests/org/jfree/chart/block/junit/LineBorderTests.java: New file. 2007-03-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/block/LabelBlock.java (paint): Mark as transient, (equals): Minor simplification, (readObject): New method, (writeObject): Likewise, * tests/org/jfree/chart/block/junit/LabelBlockTests.java (testSerialization): Test with GradientPaint. 2007-03-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYBarRenderer.java (renderAsPercentages): New field, (StackedXYBarRenderer()): Delegate to another constructor, (StackedXYBarRenderer(double)): Initialise item label settings, (getRenderAsPercentages): New method, (setRenderAsPercetanges): Likewise, (getPassCount): New method override, (findRangeBounds): Handle renderAsPercentages, (drawItem): Divide into two passes, handle renderAsPercentages and item label drawing, (equals): Check renderAsPercentages, (hashCode): New method override, * source/org/jfree/data/general/DatasetUtilities.java (calculateStackTotal): New method, * tests/org/jfree/chart/renderer/xy/junit/StackedXYBarRendererTests.java (testEquals): Check new field, (testHashCode): Likewise. 2007-03-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/DeviationRenderer.java (drawItem): Removed calls to Java 1.6 methods. 2007-03-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/DefaultPolarItemRenderer.java (clone): Reimplemented, * tests/org/jfree/chart/renderer/junit/DefaultPolarItemRendererTests.java (testCloning): Added independence check. 2007-03-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (setPlotDiscontinuous): New method, (equals): Check additional fields, (clone): Reimplemented, * tests/org/jfree/chart/renderer/xy/junit/StandardXYItemRendererTests.java (testEquals): Check additional fields, (testCloning): Check independence. 2007-03-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (draw): Moved annotation drawing up to point where clipping still applies. 2007-03-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (DEFAULT_CROSSHAIR_VISIBLE): New field, (DEFAULT_CROSSHAIR_STROKE): Likewise, (DEFAULT_CROSSHAIR_PAINT): Likewise, (CategoryPlot(CategoryDataset, CategoryAxis, ValueAxis, CategoryItemRenderer)): Initialise crosshair fields, (setRangeCrosshairStroke): Check for null stroke, (setRangeCrosshairPaint): Check for null paint, (draw): Call new drawRangeCrosshair() method, (drawRangeCrosshair): New method, * source/org/jfree/chart/plot/XYPlot.java (setRangeCrosshairStroke): Added null argument check, (setRangeCrosshairPaint): Likewise. 2007-03-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java (drawItem): Handle horizontal plot orientation. 2007-03-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/LookupPaintScale.java (clone): Clone the lookup table, * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java (clone): Clone the paint scale, * tests/org/jfree/chart/renderer/junit/LookupPaintScaleTests.java (testCloning): Check independence, * tests/org/jfree/chart/renderer/xy/junit/XYBlockRendererTests.java (testCloning): Check independence. 2007-03-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/DefaultIntervalCategoryDataset.java (getSeriesIndex): Reimplemented, (getColumnIndex): Reimplemented, (getRowIndex): Delegate to getSeriesIndex(), (getColumnCount): Reimplemented, (getRowCount): Likewise, (getSeries): Deprecated, (getCategories): Deprecated, (getItemCount): Deprecated. 2007-03-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (drawItemPass1): Fix entity generation. 2007-03-08 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java (hashCode): Fixed, * experimental/org/jfree/experimental/chart/plot/dial/DialTextAnnotation.java (hashCode): Fixed, * experimental/org/jfree/experimental/chart/plot/dial/SimpleDialFrame.java (hashCode): Fixed, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java (hashCode): Fixed, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialRange.java (hashCode): Fixed. 2007-03-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/gantt/TaskSeriesCollection.java (remove): Fix argument check, * source/org/jfree/data/time/TimePeriodValuesCollection.java (getSeries): Likewise, * source/org/jfree/data/xy/DefaultTableXYDataset.java (getSeries): Likewise, * source/org/jfree/data/xy/XYSeriesCollection.java (removeSeries): Likewise, * tests/org/jfree/data/gantt/junit/TaskSeriesCollectionTests.java (testRemove): New test method, * tests/org/jfree/data/time/junit/TimePeriodValuesCollectionTests.java (testGetSeries): Likewise, * tests/org/jfree/data/xy/junit/DefaultTableXYDatasetTests.java (testGetSeries): Likewise, * tests/org/jfree/data/xy/junit/XYSeriesCollectionTests.java (testGetSeries): Likewise, (testRemoveSeries): Likewise. 2007-03-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/DefaultIntervalCategoryDataset.java (getValue(Comparable, Comparable)): Check keys, (getStartValue(Comparable, Comparable)): Likewise, (getEndValue(Comparable, Comparable)): Likewise, (setStartValue): Correct index range check, (setEndValue): Likewise, (equals): New method override, (clone): Likewise, (equal): New private method, (clone(Number[][])): Likewise, * tests/org/jfree/data/category/junit/DefaultIntervalCategoryDatasetTests.java: New file, * tests/org/jfree/data/category/junit/DataCategoryPackageTests.java: (suite): Added DefaultIntervalCategoryDatasetTests. 2007-03-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/DefaultCategoryDataset.java (clone): New method override, * tests/org/jfree/data/category/junit/DefaultCategoryDatasetTests.java (testCloning): New method. 2007-03-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/LookupPaintScale.java (PaintItem): Implements Comparable, (PaintItem.compareTo): New method, (LookupPaintScale(double, double, Paint)): Initialise bounds, (add): Reimplemented to ensure ordered list, (getPaint): Check bounds and return default paint if value is outside, * tests/org/jfree/chart/renderer/junit/LookupPaintScaleTests.java (EPSILON): New field, (testConstructor1): New method, (testConstructor2): Likewise, (testGeneral): Likewise. 2007-03-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (drawCategoryLabels): Fix offset. 2007-03-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/AbstractXYAnnotation.java (hashCode): Implemented, * source/org/jfree/chart/annotations/CategoryLineAnnotation.java (hashCode): Reimplemented, * source/org/jfree/chart/annotations/CategoryPointerAnnotation.java (hashCode): Likewise, * source/org/jfree/chart/annotations/CategoryTextAnnotation.java (hashCode): Implemented, * source/org/jfree/chart/annotations/XYPointerAnnotation.java (hashCode): Likewise, * source/org/jfree/chart/annotations/XYShapeAnnotation.java (hashCode): Likewise. 2007-03-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/HashUtilities.java (hashCodeForDoubleArray): Accumulate result, * tests/org/jfree/chart/junit/ChartPackageTests.java (suite): Add HashUtilitiesTests, * tests/org/jfree/chart/junit/HashUtilitiesTests.java: New file. 2007-03-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYTextAnnotation.java (setText): Added null argument check, (setFont): Likewise, (setPaint): Likewise, (setTextAnchor): Likewise, (setRotationAnchor): Likewise, (hashCode): Reimplemented. 2007-03-05 Sergei Ivanov <sergei_ivanov@users.sourceforge.net> * source/org/jfree/chart/ChartPanel.java (paintComponent): Redraw the zoom rectangle and dispose the Graphics2D instance, (mouseDragged): Factor out zoom rectangle drawing, (mouseReleased): Likewise, (mouseMoved): Pass Graphics2D to drawAxisTrace methods, (drawZoomRectangle): New method, (drawHorizontalAxisTrace): Added Graphics2D parameter, (drawVerticalAxisTrace): Likewise, (displayPopupMenu): Fixed logical AND typo. 2007-03-05 Sergei Ivanov <sergei_ivanov@users.sourceforge.net> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItem): Reworked bar calculation to fix bug when rendering against LogarithmicAxis. 2007-03-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (useOutlinePaint): New field, (CandlestickRenderer(double, boolean, XYToolTipGenerator)): Initialise new field, (drawVolume): Deprecated, (getDrawVolume): New method, (getUseOutlinePaint): Likewise, (setUseOutlinePaint): Likewise, (drawItem): Use outline paint if flag is set, (equals): Test useOutlinePaint flag, * tests/org/jfree/chart/renderer/xy/junit/CandlestickRendererTests.java (testEquals): Added check for useOutlinePaint flag. 2007-03-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MeterPlot.java (draw): Restore clip correctly, * source/org/jfree/chart/plot/SpiderWebPlot.java (draw): Likewise. 2007-03-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (drawRangeGridlines): Check for null renderer, * tests/org/jfree/chart/plot/junit/XYPlotTests.java (testDrawRangeGridlines): New test method. 2007-03-02 Sergei Ivanov <sergei_ivanov@users.sourceforge.net> * source/org/jfree/chart/axis/LogarithmicAxis.java (switchedPow10): New method, (adjustedLog10): Modified for clarity, (adjustedPow10): New method, (autoAdjustRange): Reformatting only, (valueToJava2D): Likewise, (java2dToValue): Use new methods, (zoomRange): New method override, * tests/org/jfree/chart/axis/junit/LogarithmicAxisTests.java (MyLogarithmicAxis): New inner class, (EPSILON): New constant, (axis): New field, (setUp): New method, (testAdjustedLog10): Likewise, (checkLogPowRoundTrip): Likewise, (testSwitchedLog10): Likewise, (checkSwitchedLogPowRoundTrip): Likewise, (testJava2DToValue): Likewise, (testValueToJava2D): Likewise, (checkPointsToJava2D): Likewise, (checkPointsToValue): Likewise, (main): Likewise. 2007-03-02 Sergei Ivanov <sergei_ivanov@users.sourceforge.net> * source/org/jfree/chart/plot/XYPlot.java (draw): Updated crosshair drawing to take account of orientation correctly (see bug 1671645). 2007-03-01 Sergei Ivanov <sergei_ivanov@users.sourceforge.net> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (drawRangeMarker): Fixed drawing of interval markers, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (drawDomainMarker): Likewise, (drawRangeMarker): Likewise. 2007-02-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (event): New field, (setSeriesVisible(Boolean, boolean)): Call fireChangeEvent() to notify, (setSeriesVisible(int, Boolean, boolean)): Likewise, (setBaseSeriesVisible(boolean, boolean)): Likewise, (setSeriesVisibleInLegend(Boolean, boolean)): Likewise, (setSeriesVisibleInLegend(int, Boolean, boolean)): Likewise, (setBaseSeriesVisibleInLegend(boolean, boolean)): Likewise, (setPaint(Paint, boolean)): Likewise, (setSeriesPaint(int, Paint, boolean)): Likewise, (setBasePaint(Paint, boolean)): Likewise, (setFillPaint(Paint, boolean)): Likewise, (setSeriesFillPaint(int, Paint, boolean)): Likewise, (setBaseFillPaint(Paint, boolean)): Likewise, (setOutlinePaint(Paint, boolean)): Likewise, (setSeriesOutlinePaint(int, Paint, boolean)): Likewise, (setBaseOutlinePaint(Paint, boolean)): Likewise, (setStroke(Stroke, boolean)): Likewise, (setSeriesStroke(int, Stroke, boolean)): Likewise, (setBaseStroke(Stroke, boolean)): Likewise, (setOutlineStroke(Stroke, boolean)): Likewise, (setSeriesOutlineStroke(int, Stroke, boolean)): Likewise, (setBaseOutlineStroke(Stroke, boolean)): Likewise, (setShape(Shape, boolean)): Likewise, (setSeriesShape(int, Shape, boolean)): Likewise, (setBaseShape(Shape, boolean)): Likewise, (setItemLabelsVisible(Boolean, boolean)): Likewise, (setSeriesItemLabelsVisible(int, Boolean, boolean)): Likewise, (setBaseItemLabelsVisible(Boolean, boolean)): Likewise, (setItemLabelFont(Font, boolean)): Likewise, (setSeriesItemLabelFont(int, Font, boolean)): Likewise, (setBaseItemLabelFont(Font, boolean)): Likewise, (setItemLabelPaint(Paint, boolean)): Likewise, (setSeriesItemLabelPaint(int, Paint, boolean)): Likewise, (setBaseItemLabelPaint(Paint, boolean)): Likewise, (setPositiveItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (setSeriesPositiveItemLabelPosition(int, ItemLabelPosition, boolean)): Likewise, (setBasePositiveItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (setNegativeItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (setSeriesNegativeItemLabelPosition(int, ItemLabelPosition, boolean)): Likewise, (setBaseNegativeItemLabelPosition(ItemLabelPosition, boolean)): Likewise, (setItemLabelAnchorOffset): Likewise, (setCreateEntities(Boolean, boolean)): Likewise, (setSeriesCreateEntities(int, Boolean, boolean)): Likewise, (setBaseSeriesCreateEntities(Boolean, boolean)): Likewise, (fireChangeEvent): New method, (clone): Initialise event listener list and set event to null. 2007-02-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/SymbolAxis.java (refreshTicksVertical): Pull check for tickLabelsOverlapping outside first check. 2007-02-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (setRangeAxisLocation(int, AxisLocation, boolean)): Fixed copy-and-paste error. 2007-02-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/DeviationRenderer.java: New file, * tests/org/jfree/chart/renderer/xy/junit/DeviationRendererTests.java: New file, * tests/org/jfree/chart/renderer/xy/junit/RendererXYPackageTests.java (suite): Add new tests. 2007-02-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (setDomainAxisLocation(AxisLocation)): Delegate, (setDomainAxisLocation(AxisLocation, boolean)): Likewise, (setDomainAxisLocation(int, AxisLocation)): Likewise, (setDomainAxisLocation(int, AxisLocation, boolean)): New method, (setRangeAxisLocation(AxisLocation)): Delegate, (setRangeAxisLocation(AxisLocation, boolean)): Likewise, (setRangeAxisLocation(int, AxisLocation)): Likewise, (setRangeAxisLocation(int, AxisLocation, boolean)): New method. 2007-02-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (setDomainAxisLocation(AxisLocation, boolean)): Delegate argument check, (setDomainAxisLocation(int, AxisLocation)): Delegate to new method, (setDomainAxisLocation(int, AxisLocation, boolean)): New method, (setRangeAxisLocation(int, AxisLocation, boolean)): Added argument check, (draw): Removed redundant code. 2007-02-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues2D.java: Updated API docs, * source/org/jfree/data/category/DefaultCategoryDataset.java: Likewise, * tests/org/jfree/data/category/junit/DefaultCategoryDatasetTests.java: (testGetValue2): New method, (testAddValue): Likewise, (testRemoveValue): Likewise, * tests/org/jfree/data/junit/DefaultKeyedValues2DTests.java (testRowCount): New method, (testColumnCount): Likewise, (testGetValue2): Likewise, (testGetRowKey): Likewise, (testGetColumnKey): Likewise, (testRemoveValue): Likewise, (testRemoveRow): Likewise. 2007-02-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (createState): New method, (initialise): Call createState(), * source/org/jfree/chart/renderer/category/CategoryStepRenderer.java (State): New class, (line): Removed field, (getLegendItem): New method override, (createState): Likewise, (drawLine): Added State parameter, (drawItem): Updated calls to drawLine(), added entities, (equals): Minor rearrangement, * tests/org/jfree/chart/renderer/category/junit/CategoryStepRendererTests.java (testCloning): Minor updates, (testSerialization): Likewise. 2007-02-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (clone): Reimplemented, (equals): Added checks for useFillPaint and drawSeriesLineAsPath, * tests/org/jfree/chart/renderer/xy/junit/XYLineAndShapeRendererTests.java (testEquals): Check additional fields, (testCloning): Check for independence. 2007-02-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/YIntervalSeries.java (getYHighValue): New method, (getYLowValue): Likewise, * source/org/jfree/data/xy/YIntervalSeriesCollection.java (getX): Call method in YIntervalSeries to get result, (getYValue): New method override, (getStartYValue): Likewise, (getEndYValue): Likewise, (getY): Call method in YIntervalSeries to get result, (getStartY): Likewise, (getEndY): Likewise. 2007-02-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (clone): Fix cloning of a number of fields, (equals): Check additional fields, * tests/org/jfree/chart/renderer/xy/junit/YIntervalRendererTests.java (testEquals): Extended, (testCloning): Check independence of clone. 2007-02-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/MultipleXYSeriesLabelGenerator.java (clone): Reimplemented, (equals): Likewise, * tests/org/jfree/chart/labels/junit/LabelsPackageTests.java (suite): Added MultipleXYSeriesLabelGeneratorTests, * tests/org/jfree/chart/labels/junit/MultipleXYSeriesLabelGeneratorTests.java: New file. 2007-02-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractRenderer.java (clone): handle some more fields correctly, * tests/org/jfree/chart/renderer/junit/AbstractRendererTests.java (testCloning): New method. 2007-02-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (clone): Make a copy of legendArea; * tests/org/jfree/chart/renderer/xy/junit/XYAreaRendererTests.java (testCloning): Check independence. 2007-02-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/RingPlot.java (setSectionDepth): Added event notification. 2007-02-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java (equals): New method override, * tests/org/jfree/chart/renderer/xy/junit/XYStepAreaRendererTests.java (testEquals): Added more checks. 2007-02-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYIntervalSeriesCollection.java (clone): Implemented, * tests/org/jfree/data/xy/junit/XYIntervalSeriesCollectionTests.java (testCloning): Check independence, (testSerializable): Likewise, * tests/org/jfree/data/xy/junit/XYIntervalSeriesTests.java (testValues): New test. 2007-02-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYIntervalSeries.java (getXLowValue): New method, (getXHighValue): Likewise, (getYLowValue): Likewise, (getYHighValue): Likewise, * source/org/jfree/data/xy/XYIntervalSeriesCollection.java (getX): Simplified, (getStartXValue): New method override, (getEndXValue): Likewise, (getYValue): Likewise, (getStartYValue): Likewise, (getEndYValue): Likewise, (getY): Simplified, (getStartX): Likewise, (getEndX): Likewise, (getStartY): Likewise, (getEndY): Likewise. ---------- JFREECHART 1.0.4 RELEASED ------------------------ 2007-02-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (getLegendItem): Check drawBarOutline flag, (clone): Make a copy of the legendBar shape, * tests/org/jfree/chart/renderer/xy/junit/XYBarRendererTests.java (testCloning): Added independence check. 2007-02-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (draw): Check renderer index against dataset count, (drawDomainMarkers): Likewise, (drawRangeMarkers): Likewise, * tests/org/jfree/chart/plot/junit/CategoryPlotTests.java (test1654215): New test, * tests/org/jfree/chart/plot/junit/XYPlotTests.java: (test1654215): New test. 2007-02-07 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/chart/swt/demo/SWTBarChartDemo1.java (main): Set offscreen buffer flag to true. 2007-02-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PolarPlot.java (setAngleLabelPaint): Check for null argument, (equals): Check cornerTextItems list, (clone): Clone the cornerTextItems list, (translateValueThetaRadiusToJava2D): Don't let value go below axis minimum, * tests/org/jfree/chart/plot/junit/PolarPlotTests.java (testEquals): Added check for corner text items, (testCloning): Added independence checks. 2007-02-07 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/chart/swt/editor/SWTAxisEditor.java (SWTAxisEditor(Composite, Axis, int)): Check for null axis label. 2007-02-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (draw): Draw shared axis after subplots, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java (draw): Likewise. 2007-02-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CrosshairState.java (domainAxisIndex): New field, (rangeAxisIndex): New fields, (updateCrosshairPoint(double, double, double, double, PlotOrientation)): Deprecated, (updateCrosshairPoint(double, double, int, int, double, double, PlotOrientation)): New method, (updateCrosshairX(double)): Deprecated, (updateCrosshairX(double, int)): New method, (updateCrosshairY(double)): Deprecated, (updateCrosshairY(double, int)): New method, (getDomainAxisIndex): New method, (getRangeAxisIndex): New method, * source/org/jfree/chart/plot/XYPlot.java (draw): Updated to store axis indices in CrosshairState, then draw crosshairs using new methods, (drawDomainCrosshair): New method, (drawRangeCrosshair): New method, (getDomainAxisIndex): Changed from protected to public, (getRangeAxisIndex): Likewise, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (updateCrosshairValues(CrosshairState, double, double, double, double, PlotOrientation): Deprecated, (updateCrosshairValues(CrosshairState, double, double, int, int, double, double, PlotOrientation): New method, * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (drawItem): Call revised updateCrosshairValues() method, * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYDotRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYStepRenderer.java (drawItem): Likewise. 2007-02-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartUtilities.java: API doc updates, * source/org/jfree/chart/entity/ChartEntity.java: Likewise, * source/org/jfree/chart/imagemap/ImageMapUtilities.java: Likewise. 2007-02-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (getPlotValue): Changed to protected. 2007-02-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (drawItemPass1): Added extra call to updateCrosshairValues(). 2007-02-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (addRangeMarker): Register plot as a listener with the marker, * tests/org/jfree/chart/plot/junit/CategoryPlotTests.java (testAddDomainMarker): New test, (testAddRangeMarker): Likewise, * tests/org/jfree/chart/plot/junit/XYPlotTests.java (testAddDomainMarker): New test, (testAddRangeMarker): Likewise. 2007-02-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (draw): Draw axes before first polygon, (drawRadarPoly): Remove axis drawing code. 2007-02-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (axisLinePaint): New field, (axisLineStroke): New field, (SpiderWebPlot(CategoryDataset, TableOrder)): Initialise new fields, (getAxisLinePaint): New method, (setAxisLinePaint): Likewise, (getAxisLineStroke): Likewise, (setAxisLineStroke): Likewise, (drawRadarPoly): Fixed problems with paint and stroke on axis lines, (equals): Updated for new fields, (clone): New method override, (writeObject): Updated for new fields, (readObject): Likewise, * tests/org/jfree/chart/plot/junit/SpiderWebPlotTests.java (testEquals): Added checks for new fields, (testCloning): Added independence checks. 2007-02-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (setArtifactPaint): Check for null, generate event, (setItemMargin): Generate event, * source/org/jfree/chart/renderer/xy/XYBoxAndWhiskerRenderer.java (setArtifactPaint): Check for null, generate event, (drawHorizontalItem): Partially implemented (no outliers yet). 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (drawItem): Fixed crosshair y-value. 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * experiments/org/jfree/experimental/chart/renderer/xy/VectorRenderer.java (drawItem): Fixed calls to JDK 1.6-only methods; (equals): Check additional fields. 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/annotations/XYTitleAnnotation.java: New file, * experimental/org/jfree/experimental/chart/demo/XYTitleAnnotationDemo1.java: New file, * experimental/org/jfree/experimental/chart/util/XYCoordinateType.java: New file. 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Updated version numbers, * ant/build-swt.xml: Likewise. 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * NEWS: updated, * source/org/jfree/chart/resources/JFreeChartResources.java (CONTENTS): Updated version number and date. 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/StandardXYItemLabelGenerator.java: (StandardXYItemLabelGenerator(String, NumberFormat, DateFormat)): Made public, * source/org/jfree/chart/labels/StandardXYToolTipGenerator.java: (StandardXYToolTIpGenerator(String, NumberFormat, DateFormat)): Likewise. 2007-02-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (setUseYInterval): Only notify if flag changes, * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java (getPaintScale): New method. 2007-01-31 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo1.java: Removed and added to JFreeChart demo collection, * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo2.java: Likewise, * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo3.java: Likewise. 2007-01-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ClipPath.java: Deprecated, * source/org/jfree/chart/axis/ColorBar.java: Likewise, * source/org/jfree/chart/editor/PaletteChooserPanel.java: Likewise, * source/org/jfree/chart/editor/PaletteSample.java: Likewise, * source/org/jfree/chart/plot/ColorPalette.java: Likewise, * source/org/jfree/chart/plot/ContourPlot.java: Likewise, * source/org/jfree/chart/plot/ContourPlotUtilities.java: Likewise, * source/org/jfree/chart/plot/ContourValuePlot.java: Likewise, * source/org/jfree/chart/plot/GreyPalette.java: Likewise, * source/org/jfree/chart/plot/RainbowPalette.java: Likewise, * source/org/jfree/data/contour/ContourDataset.java: Likewise, * source/org/jfree/data/contour/DefaultContourDataset.java: Likewise, * source/org/jfree/data/contour/NonGridContourDataset.java: Likewise, * source/org/jfree/data/contour/package.html: Updated. 2007-01-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBlockRenderer.java: Moved from experimental, * experimental/org/jfree/experimental/chart/renderer/xy/XYBlockRenderer.java: Moved to main API, * experimental/org/jfree/experimental/chart/renderer/xy/junit/XYBlockRendererTests.java: Likewise, * tests/org/jfree/chart/renderer/junit/RendererPackageTests.java (suite): Added new tests, * tests/org/jfree/chart/renderer/xy/junit/RendererXYPackageTests.java (suite): Added XYBlockRendererTests, * tests/org/jfree/chart/renderer/xy/junit/XYBlockRendererTests.java: New file, * tests/org/jfree/chart/title/junit/TitlePackageTests.java (suite): Added new tests. 2007-01-31 David Gilbert <david.gilbert@object-refinery.com> * org/jfree/chart/renderer/GrayPaintScale.java: Moved from experimental, * org/jfree/chart/renderer/LookupPaintScale.java: Likewise, * org/jfree/chart/renderer/PaintScale.java: Likewise, * org/jfree/chart/title/PaintScaleLegend.java: Likewise, * experimental/org/jfree/experimental/chart/renderer/GrayPaintScale.java: Moved to main API, * experimental/org/jfree/experimental/chart/renderer/LookupPaintScale.java: Likewise, * experimental/org/jfree/experimental/chart/renderer/PaintScale.java: Likewise, * experimental/org/jfree/experimental/chart/title/PaintScaleLegend.java: Likewise, * experimental/org/jfree/experimental/chart/renderer/junit/GrayPaintScaleTests.java: Likewise, * experimental/org/jfree/experimental/chart/renderer/junit/LookupPaintScaleTests.java: Likewise, * experimental/org/jfree/experimental/chart/title/junit/PaintScaleLegendTests.java: Likewise, * tests/org/jfree/chart/renderer/junit/GrayPaintScaleTests.java: Moved from experimental, * tests/org/jfree/chart/renderer/junit/LookupPaintScaleTests.java: Moved from experimental, * tests/org/jfree/chart/title/junit/PaintScaleLegendTests.java: Moved from experimental. 2007-01-31 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/renderer/GrayPaintScale.java: (min): Renamed lowerBound; (max): Renamed upperBound; (GrayPaintScale): Updated for renamed fields, (getLowerBound): New method, (getUpperBound): New method, (getPaint): Updated for renamed fields, (equals): Likewise, * experimental/org/jfree/experimental/chart/renderer/LookupPaintScale.java: (PaintItem): Implemented Serializable, (PaintItem.paint): Marked transient, (PaintItem.equals): New method, (PaintItem.writeObject): Likewise, (PaintItem.readObject): Likewise, (lowerBound): New field, (upperBound): New field, (defaultPaint): Marked transient, (LookupPaintScale()): Delegate to other constructor, (LookupPaintScale(double, double, Paint): New constructor, (getDefaultPaint): New method, (getLowerBound): New method, (getUpperBound): New method, (equals): Check new fields, (writeObject): New method, (readObject): New method, * experimental/org/jfree/experimental/chart/renderer/PaintScale.java: (getLowerBound): New method, (getUpperBound): Likewise, * experimental/org/jfree/experimental/chart/renderer/junit/LookupPaintScaleTests.java (testEquals): Check more fields, (testCloning): Added new check, (testSerialization): Likewise. 2007-01-31 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/title/PaintScaleLegend.java (arrange): Implemented arrangement for no constraints. 2007-01-31 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java: Fixed some issues with the trace lines, fixed cross hair not being drawn, added getter and setter methods for the trace lines. * swt/org/jfree/experimental/chart/swt/demo/SWTTimeSeries.java: New class to test the cross hair. * swt/org/jfree/experimental/swt/SWTGraphics2D.java: Moved the dummy JPanel to SWTUtils.java, implemented the drawLine method. * swt/org/jfree/experimental/swt/SWTUtils.java: Moved the dummy JPanel from SWTGraphics2D.java, added a new convert method for mouse events. 2007-01-30 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/demo/VectorPlotDemo1.java: New file, * experimental/org/jfree/experimental/chart/renderer/xy/VectorRenderer.java: New file, * experimental/org/jfree/experimental/chart/renderer/xy/junit/VectorRendererTests.java: New file. 2007-01-30 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/data/xy/Vector.java: New file, * experimental/org/jfree/experimental/data/xy/VectorDataItem.java: New file, * experimental/org/jfree/experimental/data/xy/VectorSeries.java: New file, * experimental/org/jfree/experimental/data/xy/VectorSeriesCollection.java: New file, * experimental/org/jfree/experimental/data/xy/VectorXYDataset.java: New file, * experimental/org/jfree/experimental/data/xy/XYCoordinate.java: New file, * experimental/org/jfree/experimental/data/xy/junit/VectorDataItemTests.java: New file, * experimental/org/jfree/experimental/data/xy/junit/VectorSeriesCollectionTests.java: New file, * experimental/org/jfree/experimental/data/xy/junit/VectorSeriesTests.java: New file, * experimental/org/jfree/experimental/data/xy/junit/VectorTests.java: New file, * experimental/org/jfree/experimental/data/xy/junit/XYCoordinateTests.java: New file. 2007-01-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DefaultValueDataset.java (DefaultValueDataset(Number)): Call super() explicitly, (equals): Tidied up. 2007-01-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYBarDataset.java (getXValue): New method override, (getYValue): Likewise, (getStartXValue): Likewise, (getEndXValue): Likewise, (getStartYValue): Likewise, (getEndYValue): Likewise. 2007-01-30 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/xy/junit/XYSeriesTests.java (testToArray): Fixed code that won't compile with Java 1.4, (testToArrayExample): Likewise. 2007-01-29 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/org/jfree/experimental/swt/SWTGraphics2D.java (fillRect): switch between foregroung and background colors to correct bug in FastScatterPlotDemo. 2007-01-26 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/chart/JFreeChartTestSuite.java (suite): Added OHLCPackageTests. 2007-01-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultXYDataset.java: Implemented PublicCloneable, * source/org/jfree/data/xy/XYBarDataset.java (getUnderlyingDataset): New method, (getBarWidth): Likewise, (setBarWidth): Likewise, (equals): New method override, (clone): Likewise, * tests/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): Added new XYBarDatasetTests, * tests/org/jfree/data/xy/junit/XYBarDatasetTests.java: New class. 2007-01-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/AbstractXYItemLabelGenerator.java (AbstractXYItemLabelGenerator(String, NumberFormat, DateFormat)): New constructor, (clone): Clone date formatters, * source/org/jfree/chart/labels/StandardXYItemLabelGenerator.java (StandardXYItemLabelGenerator(String, NumberFormat, DateFormat)): New constructor, * source/org/jfree/chart/labels/StandardXYToolTipGenerator.java (StandardXYToolTipGenerator(String, NumberFormat, DateFormat)): New constructor, * tests/org/jfree/chart/labels/junit/StandardXYItemLabelGeneratorTests.java: (testCloning): Added independence checks. 2007-01-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (equals): New method override, * tests/org/jfree/chart/renderer/xy/junit/XYBubbleRendererTests.java (testEquals): Strengthened test. 2007-01-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (roundXCoordinates): New field, (XYDifferenceRenderer()): Initialise roundXCoordinates, (getRoundXCoordinates): New method, (setRoundXCoordinates): Likewise, (drawItemPass0): Perform optional rounding of x-coordinates in Java2D space, (equals): Check roundXCoordinates field, (clone): Clone the legendLine shape, * tests/org/jfree/chart/renderer/xy/junit/XYDifferenceRendererTests.java (testEquals): Added check for roundXCoordinates field, (testCloning): Check for clone independence. 2007-01-23 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo1.java: (createChart): Tweak settings on chart, * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo2.java: (createChart): Likewise, * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo3.java: (createChart): Likewise, * experimental/org/jfree/experimental/chart/title/PaintScaleLegend.java: (stripOutlineVisible): New field, (backgroundPaint): Don't initialise here, (PaintScaleLegend): Update initialisation, (isStripOutlineVisible): New method, (setStripOutlineVisible): Likewise, (getBackgroundPaint): Likewise, (setBackgroundPaint): Likewise, (SUBDIVISIONS): New private field, (draw): Use SUBDIVISIONS, (equals): Updated for new fields, * experimental/org/jfree/experimental/chart/title/junit/PaintScaleLegendTests.java: (testEquals): Test new fields. 2007-01-22 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo1.java: (createChart): Added PaintScaleLegend, * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo2.java: (createChart): Likewise, * experimental/org/jfree/experimental/chart/demo/XYBlockChartDemo3.java: (createChart): Likewise, * experimental/org/jfree/experimental/chart/title/PaintScaleLegend.java: New class, * experimental/org/jfree/experimental/chart/title/junit/PaintScaleLegendTests.java: New test class. 2007-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (nextStandardDate): Use time zone for calendar. 2007-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StackedBarRenderer3D.java (drawStackHorizontal): Handle inverted axis, (createHorizontalBlock): New method, (drawStackVertical): Handle inverted axis, (createVerticalBlock): New method. 2007-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StackedBarRenderer3D.java (createStackedValueList): On null value, continue don't break, * tests/org/jfree/chart/renderer/category/junit/StackedBarRenderer3DTests.java: Added new test methods. 2007-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues2D.java (getValue(Comparable, Comparable)): Handle case where row doesn't explicitly define a value for a valid column key, * tests/org/jfree/data/junit/DefaultKeyedValues2DTests.java (testSparsePopulation): New test method. 2007-01-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createBoxAndWhiskerChart(String, String, String, BoxAndWhiskerCategoryDataset, boolean): New method, * source/org/jfree/chart/JFreeChart.java (JFreeChartInfo()): Added new contributor. 2007-01-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/DefaultIntervalCategoryDataset.java: Removed @author tag and reformatted source code, * source/org/jfree/data/category/IntervalCategoryDataset.java: Likewise, * source/org/jfree/data/contour/ContourDataset.java: Likewise, * source/org/jfree/data/contour/DefaultContourDataset.java: Likewise. 2007-01-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer3D.java (drawDomainGridline): Use correct value for x2, * source/org/jfree/chart/renderer/category/LineRenderer3D.java (setWallPaint): Check for null argument, (drawDomainGridline): Use correct value for x2. 2007-01-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/ColorPalette.java: Removed @author tag and reformatted source code, * source/org/jfree/chart/plot/CompassPlot.java: Likewise, * source/org/jfree/chart/plot/ContourPlot.java: Likewise, * source/org/jfree/chart/plot/ContourPlotUtilities.java: Likewise, * source/org/jfree/chart/plot/ContourValuePlot.java: Likewise, * source/org/jfree/chart/plot/GreyPalette.java: Likewise, * source/org/jfree/chart/plot/JThermometer.java: Likewise, * source/org/jfree/chart/plot/PolarPlot.java: Likewise, * source/org/jfree/chart/plot/RainbowPalette.java: Likewise, * source/org/jfree/chart/plot/ThermometerPlot.java: Likewise. 2007-01-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MultiplePiePlot.java (prefetchSectionPaints): Check for paint settings in underlying PiePlot. 2007-01-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/PaintMap.java (PaintMap()): Use HashMap instead of TreeMap, (readObject): Likewise, * tests/org/jfree/chart/junit/PaintMapTests.java (testKeysOfDifferentClasses): New test method. 2007-01-16 David Gilbert <david.gilbert@object-refinery.com> * swt/org/jfree/experimental/swt/SWTUtils.java (toAwtFont): Call getHeight() rather than accessing height field directly. 2007-01-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CompassPlot.java: Updated API docs. 2007-01-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StackedBarRenderer3D.java (createStackedValueList): New method, (drawItem): Reimplemented, (drawStackHorizontal): New method, (drawStackVertical): New method. 2007-01-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/imagemap/DynamicDriveToolTipTagFragmentGenerator.java: Removed @author tag from API docs, * source/org/jfree/chart/imagemap/ImageMapUtilities: Likewise, * source/org/jfree/chart/imagemap/OverLIBToolTipTagFragmentGenerator.java: Likewise, * source/org/jfree/chart/imagemap/StandardToolTipTagFragmentGenerator.java: Likewise, * source/org/jfree/chart/imagemap/StandardURLTagFragmentGenerator.java: Likewise, * source/org/jfree/chart/imagemap/ToolTipTagFragmentGenerator.java: Likewise. 2007-01-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/TextAnnotation.java (setText): Added argument check, (setFont): Likewise, (setPaint): Likewise, (setTextAnchor): Likewise, (hashCode): Reimplemented. 2007-01-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (getTimeZone): New method, (setTimeZone): Likewise. 2007-01-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (setWeight): Notify listeners, (setRangeZeroBaselinePaint): Check for null argument, (drawRangeMarkers): Use axis for dataset/renderer. 2007-01-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYSeries.java (toArray): New method, * tests/org/jfree/data/xy/junit/XYSeriesTests.java (testToArray): New test, (testToArrayExample): Likewise. 2007-01-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Plot.java (setNoDataMessage): Notify listeners, (setNoDataMessageFont): Check for null, and notify listeners, (setNoDataMessagePaint): Likewise, plus lots of small API doc updates. 2007-01-10 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml (compile-tests): New target, (test): Likewise, * source/org/jfree/chart/labels/StandardPieSectionLabelGenerator.java (equals): Include attributedLabels in the test, * tests/org/jfree/chart/axis/junit/NumberAxisTests.java (testSetRangeType): Comment out temporarily. 2007-01-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Week.java (next): Don't go past maximum week in year. 2007-01-10 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/chart/annotations/junit/XYImageAnnotationTests.java (testSerialization): Commented out failing test, * tests/org/jfree/chart/axis/junit/NumberAxisTests.java (testCloning): Print stack trace, (testSerialization): Likewise, (testSetRangeType): New test, (testSetLowerBound): New test, * tests/org/jfree/chart/plot/junit/XYPlotTests.java (testGetDatasetCount): Commented out failing test. 2006-12-27 Thomas Morgner <taqua@users.sourceforge.net> * source/org/jfree/chart/servlet/ChartDeleter.java: Implemented Serializable. 2006-12-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartUtilities.java: API doc updates and source reformatting. 2006-12-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java (fillPaintTransformer): New field, (LegendItem): Initialise fillPaintTransformer field, (getFillPaintTransformer): New method, (setFillPaintTransformer): Likewise, (equals): Check fillPaintTransformer attribute, * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Use gradientPaintTransformer if available, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/title/LegendGraphic.java (fillPaintTransformer): New field, (LegendGraphic): Initialise fillPaintTransformer, (getFillPaintTransformer): New method, (setFillPaintTransformer): Likewise, (draw): Added support for GradientPaint, (equals): Check fillPaintTransformer field, (hashCode): Implemented, (clone): Clone mutable fields, * source/org/jfree/chart/title/LegendTitle.java (createLegendItemBlock): Set gradientPaintTransformer, * tests/org/jfree/chart/junit/LegendItemTests.java (testEquals): Extended for new field, * tests/org/jfree/chart/title/junit/LegendGraphicTests.java (testEquals): Extended for new field, (testCloning): Added check for independence, (testCloning2): New method. 2006-12-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/ClusteredXYBarRenderer.java (drawItem): Add support for GradientPaint. 2006-12-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/NumberAxis.java (estimateMaximumTickLabelWidth): Use format override if set. 2006-12-11 Henry Proudhon <henry.proudhon AT insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (MouseUp event) fix popup menu location, patch sent by Fabrizio Giustina. 2006-12-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Minute.java (previous): Fix bug for first minute in hour, * tests/org/jfree/data/time/junit/MinuteTests.java (test1611872): New method. 2006-12-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (equals): Check additional fields, * tests/org/jfree/chart/renderer/category/junit/AbstractCategoryItemRendererTests.java (testEquals): New test. 2006-12-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer3D.java (equals): New method override, * tests/org/jfree/chart/renderer/category/junit/BarRenderer3DTests.java (testEquals): Check all fields. 2006-12-06 Henry Proudhon <henry.proudhon AT insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (displayToolTips): New field, (ChartComposite): modified event listener accordingly, (setDisplayToolTips): New method, (getToolTipText): New method (more or less copied from ChartPanel). 2006-12-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYBarRenderer.java (drawItem): Handle GradientPaint, * tests/org/jfree/chart/renderer/xy/junit/StackedXYBarRendererTests.java (testSerialization): Check handling of GradientPaint. 2006-12-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (initialise): Calculate clip bounds from correct axis. 2006-12-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/ohlc/OHLC.java: New file, * source/org/jfree/data/time/ohlc/OHLCItem.java: New file, * source/org/jfree/data/time/ohlc/OHLCSeries.java: New file, * source/org/jfree/data/time/ohlc/OHLCSeriesCollection.java: New file, * source/org/jfree/data/time/ohlc/package.html: New file, * tests/org/jfree/data/time/ohlc/junit/OHLCItemTests.java: New file, * tests/org/jfree/data/time/ohlc/junit/OHLCPackageTests.java: New file, * tests/org/jfree/data/time/ohlc/junit/OHLCSeriesCollectionTests.java: New tests, * tests/org/jfree/data/time/ohlc/junit/OHLCSeriesTests.java: New file, * tests/org/jfree/data/time/ohlc/junit/OHLCTests.java: New file. 2006-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LineRenderer3D.java (equals): New method override, (writeObject): New method, (readObject): New method, * tests/org/jfree/chart/renderer/category/junit/LineRenderer3DTests.java (suite): Use correct class name, (testEquals): Extended. 2006-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotation/XYImageAnnotation.java (anchor): New field, (XYImageAnnotation(double, double, Image)): Delegated, (XYImageAnnotation(double, double, Image, RectangleAnchor)): New constructor, (getX): New method, (getY): New method, (getImage): New method, (getImageAnchor): New method, (draw): Adjust image position, (equals): Check anchor field, * tests/org/jfree/chart/annotation/junit/XYImageAnnotationTests.java (testEquals): Extended, (testHashCode): Simplified, (testCloning): Reformatted, (testSerialization): Likewise. 2006-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java: (getLegendItem): Check that series is visible, * source/org/jfree/chart/renderer/category/AreaRenderer.java (getLegendItem): Check that series is visible, (drawItem): Return early if the item is not visible, * source/org/jfree/chart/renderer/category/CategoryStepRenderer.java (drawItem): Return early if the item is not visible. 2006-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PlotRenderingInfo.java (clone): Implemented properly, * tests/org/jfree/chart/plot/junit/PlotRenderingInfoTests.java (testEquals): Extended, (testCloning): Likewise. 2006-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartRenderingInfo.java (equals): Test entities, (clone): Implemented properly, * tests/org/jfree/chart/junit/ChartRenderingInfoTests.java (testEquals): Extended, (testClone): Check for independence. 2006-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/entity/StandardEntityCollection.java (clone): Implemented properly, * tests/org/jfree/chart/entity/junit/StandardEntityCollectionTests.java (testEquals): Extended, (testCloning): Likewise. 2006-11-30 Henry Proudhon <henry.proudhon AT insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (ChartComposite): Modified mouse and paint listener to improve zoom handling, (getPointInRectangle, zoom, scale, getScreenDataArea): Signature methods have been modified (Rectangle2D -> Rectangle). 2006-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer2.java (getRoundXCoordinates): New method, (setRoundXCoordinates): New method, (equals): New method override, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (plotLines): Removed field, (setOutline): Notify listeners, (getPlotLines): Deprecated redundant method, (equals): New method override, (clone): Clone the legend shape, * tests/org/jfree/chart/renderer/xy/junit/StackedXYAreaRenderer2Tests.java (testEquals): Extended, * tests/org/jfree/chart/renderer/xy/junit/XYAreaRenderer2Tests.java (testEquals): Extended, (testCloning): Likewise. 2006-11-29 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (draw): Set clip earlier to stop markers exceeding plot bounds. 2006-11-29 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createXYBarChart): Use time based tool tips if DateAxis is requested. 2006-11-28 Henry Proudhon <henry.proudhon AT insa-lyon.fr> * swt/org/jfree/experimental/chart/swt/ChartComposite.java (horizontalAxisTrace): New field, (verticalAxisTrace): New field, (verticalTraceLineX): New field, (horizontalTraceLineY): New field, (ChartComposite): Implemented trace line painting. 2006-11-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultIntervalXYDataset.java (hashCode): New method override, (clone): Likewise, * source/org/jfree/data/xy/DefaultXYDataset.java (hashCode): Likewise, * source/org/jfree/data/xy/DefaultXYZDataset.java (hashCode): Likewise, * tests/org/jfree/data/xy/junit/DefaultIntervalXYDatasetTests.java (testCloning2): New method, * tests/org/jfree/data/xy/junit/DefaultOHLCDatasetTests.java (testEquals): Added more checks. 2006-11-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultHighLowDataset.java (DefaultHighLowDataset): Added argument checks, (equals): New method override, * tests/org/jfree/data/xy/junit/DefaultHighLowDatasetTests.java: New file, * tests/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): Added DefaultHighLowDatasetTests. 2006-11-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/MatrixSeriesCollection.java (clone): New method override, * source/org/jfree/data/xy/XIntervalSeriesCollection.java (clone): New method override, * source/org/jfree/data/xy/XYSeriesCollection.java (clone): New method override, * source/org/jfree/data/xy/YIntervalSeriesCollection.java (clone): New method override, * tests/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): Added new MatrixSeriesCollectionTests, * tests/org/jfree/data/xy/junit/MatrixSeriesCollectionTests.java: New file, * tests/org/jfree/data/xy/junit/XIntervalSeriesCollectionTests.java (testCloning): Check independence, * tests/org/jfree/data/xy/junit/XYSeriesCollectionTests.java (testCloning): Check independence, * tests/org/jfree/data/xy/junit/YIntervalSeriesCollectionTests.java (testCloning): Check independence. 2006-11-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/MatrixSeries.java (equals): Test values, * tests/org/jfree/data/xy/junit/MatrixSeriesTests.java: (testEquals): Added more checks. 2006-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/StandardXYSeriesLabelGenerator.java (equals): Fixed, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (setLegendItemLabelGenerator): Notify listeners, (setLegendItemToolTipGenerator): Likewise, (setLegendITemURLGenerator): Likewise, (clone): Clone generators, * tests/org/jfree/chart/labels/junit/LabelsPackageTests.java (suite): Added new test, * tests/org/jfree/chart/labels/junit /StandardXYSeriesLabelGeneratorTests.java: New file, * tests/org/jfree/chart/renderer/xy/junit /AbstractXYItemRendererTests.java (testCloning_LegendItemLabelGenerator): New test method, (testCloning_LegendItemToolTipGenerator): New test method, (testCloning_LegendItemURLGenerator): New test method. 2006-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (clone): Clone the legend label generators, (setLegendItemLabelGenerator): Notify listeners, (setLegendItemToolTipGenerator): Notify listeners, (setLegendItemURLGenerator): Notify listeners, * tests/org/jfree/chart/renderer/category/junit/AbstractCategoryITemRendererTests.java (testCloning_LegendItemLabelGenerator): New test method, (testCloning_LegendItemToolTipGenerator): New test method, (testCloning_LegendItemURLGenerator): New test method. 2006-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (clone): Fix URL generator cloning, * source/org/jfree/chart/urls/PieURLGenerator.java: Updated API docs, * source/org/jfree/chart/urls/StandardPieURLGenerator.java (StandardPieURLGenerator()): Delegated, (StandardPieURLGenerator(String)): Likewise, (StandardPieURLGenerator(String, String)): Likewise, (StandardPieURLGenerator(String, String, String)): Added argument checks, (equals): Reimplemented, * tests/org/jfree/chart/plot/junit/PiePlotTests.java (testCloning_URLGenerator): New test method, (testCloning_LegendLabelURLGenerator): Fixed test, * tests/org/jfree/chart/urls/junit/StandardPieURLGeneratorTests.java (testEquals): New test method. 2006-11-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (legendLabelURLGenerator): New field, (PiePlot(PieDataset)): Initialise new field, (getLegendLabelURLGenerator): New method, (setLegendLabelURLGenerator): New method, (getLegendItems): Populate URL if generator is available, (equals): Added tests for new/missing fields, (clone): Added cloning for new/missing fields, * tests/org/jfree/chart/plot/junit/PiePlotTests.java (testEquals): Extended for additional fields, (testCloning_LegendItemShape): New test method, (testCloning_LegendLabelGenerator): New test method, (testCloning_LegendLabelToolTipGenerator): New test method, (testCloning_LegendLabelURLGenerator): New test method. 2006-11-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (setDomainGridlineStroke): Check for null argument, (setDomainGridlinePaint): Likewise, (setRangeGridlinePaint): Likewise. 2006-11-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/util/RelativeDateFormat.java (RelativeDateFormat(long)): Initialise fields needed by equals(), (setDaySuffix): Check for null argument, (setHourSuffix): Likewise, (setMinuteSuffix): Likewise, (setSecondSuffix): Likewise, (equals): Check additional fields, (hashCode): Overridden, * tests/org/jfree/chart/util/junit/RelativeDateFormatTests.java: New file, * tests/org/jfree/chart/util/junit/UtilPackageTests.java: New file. 2006-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (equals): Check quadrant fields, (clone): Clone quadrant field, * tests/org/jfree/chart/plot/junit/XYPlotTests.java (testEquals): Added checks for quadrant fields, (testCloning_QuadrantOrigin): New test method, (testCloning_QuadrantPaint): New test method. 2006-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java: Added API doc cross references. 2006-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (setColumnRenderingOrder): Added argument check, event notification, and updated API docs, (setRowRenderingOrder): Likewise. 2006-11-20 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml (initialise): Updated JFreeChart version, restructured iText definitions, (fill-distribution): Updated iText reference, simplified copy for build.xml and added copy for build-swt.xml file. ---------- JFREECHART 1.0.3 RELEASED ------------------------ 2006-11-17 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/AbstractDialLayer.java (visible): New field, (AbstractDialLayer): Initialise new field, (isVisible): New method, (setVisible): New method, * experimental/org/jfree/experimental/chart/plot/dial/DialLayer.java (isVisible): New method, * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java (draw): Check layer visibility before drawing, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java (getOuterWindow): Adjust margins, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialScale.java (tickLabelsVisible): New field, (firstTickLabelVisible): New field, (StandardDialScale): Initialise new fields, (getTickLabelsVisible): New method, (setTickLabelsVisible): New method, (getFirstTickLabelVisible): New method, (setFirstTickLabelVisible): New method, (draw): Check tick label visibility, * experimental/org/jfree/experimental/chart/demo/DialDemo1.java (DialDemo1): Updated JSlider, * experimental/org/jfree/experimental/chart/demo/DialDemo2.java (DialDemo2): Updated chart title, * experimental/org/jfree/experimental/chart/demo/DialDemo3.java: Reimplemented, * experimental/org/jfree/experimental/chart/demo/DialDemo4.java: Reimplemented, * experimental/org/jfree/experimental/chart/demo/DialDemo5.java: New file. 2006-11-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/util/RelativeDateFormat.java: New file, * source/org/jfree/chart/util/package.html: New file. 2006-11-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer2.java (roundXCoordinates): New field, (drawItem): Add optional rounding of x-coordinates. 2006-11-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/BoxAndWhiskerCalculator.java (calculateBoxAndWhiskerStatistics(List)): Delegate to new method, (calculateBoxAndWhiskerStatistics(List, boolean)): New method, (calculateQ1): Check null argument, (calculateQ3): Likewise, * source/org/jfree/data/statistics/BoxAndWhiskerItem.java (toString): New method override, * source/org/jfree/data/statistics/Statistics.java (calculateMean(Number[])): Delegate to new method, (calculateMean(Number[], boolean)): New method, (calculateMean(Collection): Delegate to new method, (calculateMean(Collection, boolean): New method, (getStdDev): Added null argument checks, (getLinearFit): Likewise, (getSlope): Likewise, * tests/org/jfree/data/statistics/junit/BoxAndWhiskerCalculatorTests.java (testCalculateBoxAndWhiskerStatistics): New test method, (testCalculateQ1): Add check for null argument, (testCalculateQ3): Likewise, (test1593149): New test method, * tests/org/jfree/data/statistics/junit/StatisticsTests.java (testCalculateMean_Array): New test method, (testCalculateMean_Collection): New test method, (EPSILON): New constant, (testCalculateMedian): New test method, (testGetStdDev): New test method. 2006-11-14 Henry Proudhon <henry.proudhon@insa-lyon.fr> * swt/README: New file, * ant/build-swt.xml: New file. 2006-11-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/ThermometerPlot.java (draw): Use margin. 2006-11-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/SegmentedTimeline.java (toTimelineValue): Iterate through exception segments to avoid potential stack overflow. 2006-11-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/FastScatterPlot.java (FastScatterPlot()): Use default axes, (FastScatterPlot(double[][], ValueAxis, ValueAxis)): Throw IllegalArgumentException if domainAxis or rangeAxis is null, (setDomainAxis): New method, (setRangeAxis): New method, (setDomainGridlineStroke): Don't allow null argument, (setDomainGridlinePaint): Likewise, (setRangeGridlineStroke): Likewise, (setRangeGridlinePaint): Likewise, (draw): Removed unnecessary null checks, (drawDomainGridlines): Likewise, (drawRangeGridlines): Likewise, * source/org/jfree/chart/plot/FastScatterPlot.java (testDrawWithNullInfo): New test method. 2006-11-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (StackedXYAreaRendererState): Initialise line attribute, * tests/org/jfree/chart/renderer/xy/junit/StackedXYAreaRendererTests.java (testBug1593156): New test method. 2006-11-07 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/demo/DialDemo1.java (DialDemo1): Updated for API change, * experimental/org/jfree/experimental/chart/demo/DialDemo2.java: New file replaces old one (which is renamed DialDemo3.java), * experimental/org/jfree/experimental/chart/demo/DialDemo3.java: Replaced with former DialDemo2.java, * experimental/org/jfree/experimental/chart/demo/DialDemo4.java: Renamed DialDemo3 --> DialDemo4, * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java (datasetToScaleMap): New field, (DialPlot): Initialise new field, (addScale): Added index parameter, (getScale): New method, (mapDatasetToScale): New method, (getScaleForDataset): Reimplemented, * experimental/org/jfree/experimental/chart/plot/dial/DialPointer.java (DialPointer(int)): New constructor, (getDatasetIndex): New method, (setDatasetIndex): New method, (Pin(int)): New constructor, (Pointer(int)): New constructor, * experimental/org/jfree/experimental/chart/plot/dial/DialValueIndicator.java (datasetIndex): New field, (paint): Made transient to fix serialization, (backgroundPaint): Likewise, (outlineStroke): Likewise, (outlinePaint): Likewise, (DialValueIndicator): Modified constructor arguments, (getDatasetIndex): New method, (setDatasetIndex): Likewise, (getAngle): Likewise, (setAngle): Likewise, (getFrameAnchor): Likewise, (setFrameAnchor): Likewise, (getTemplateValue): Likewise, (setTemplateValue): Likewise, (getNumberFormat): Likewise, (setNumberFormat): Likewise, (getFont): Likewise, (setFont): Likewise, (getPaint): Likewise, (setPaint): Likewise, (getBackgroundPaint): Likewise, (setBackgroundPaint): Likewise, (getOutlineStroke): Likewise, (setOutlineStroke): Likewise, (getOutlinePaint): Likewise, (setOutlinePaint): Likewise, (getInsets): Likewise, (setInsets): Likewise, (getValueAnchor): Likewise, (setValueAnchor): Likewise, (getTextAnchor): Likewise, (setTextAnchor): Likewise, (draw): Fetch value from the appropriate dataset, (equals): Implemented properly, (hashCode): New method, (writeObject): New method, (readObject): New method, * experimental/org/jfree/experimental/chart/plot/dial/junit/DialValueIndicatorTests.java (testEquals): Check all fields, (testHashcode): Updated for new constructor API, (testCloning): Likewise, (testSerialization): Likewise. 2006-11-06 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/AbstractDialLayer.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialBackground.java: Now extends AbstractDialLayer, (setPaint): Notify listeners, (setGradientPaintTransformer): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/DialCap.java: Now extends AbstractDialLayer, (setRadius): Notify listeners, (setFillPaint): Likewise, (setOutlinePaint): Likewise, (setOutlineStroke): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/DialLayer.java: (addChangeListener): New method, (removeChangeListener): New method, (hasListener): New method, * experimental/org/jfree/experimental/chart/plot/dial/DialLayerChangeEvent.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialLayerChangeListener.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java: Implemented DialLayerChangeListener, * experimental/org/jfree/experimental/chart/plot/dial/DialPointer.java: Now extends AbstractDialLayer, (setRadius): Notify listeners, (setPaint): Likewise, (setStroke): Likewise, (setWidthRadius): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/DialTextAnnotation.java: Now extends AbstractDialLayer, (setAngle): Notify listeners, (setRadius): Likewise, (setFont): Likewise, (setPaint): Likewise, (setLabel): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/DialValueIndicator.java: Now extends AbstractDialLayer, (setRadius): Notify listeners, * experimental/org/jfree/experimental/chart/plot/dial/SimpleDialFrame.java: (setRadius): Notify listeners, (setBackgroundPaint): Likewise, (setForegroundPaint): Likewise, (setStroke): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java: (setBackgroundPaint): Notify listeners, (setForegroundPaint): Likewise, (setStroke): Likewise, (setInnerRadius): Likewise, (setOuterRadius): Likewise, (setStartAngle): Likewise, (setExtent): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialRange.java: (setLowerBound): Notify listeners, (setUpperBound): Likewise, (setIncrement): Likewise, (setPaint): Likewise, (setInnerRadius): Likewise, (setOuterRadius): Likewise, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialScale.java: (setStartAngle): Notify listeners, (setExtent): Likewise, (setTickRadius): Likewise, (setMajorTickIncrement): Likewise, (setMajorTickLength): Likewise, (setMajorTickPaint): Likewise, (setMajorTickStroke): Likewise, (setMinorTickCount): Likewise, (setMinorTickLength): Likewise, (setTickLabelOffset): Likewise, (setTickLabelFont): Likewise, (setTickLabelPaint): Likewise. 2006-11-06 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Updated for reorganised source directories. 2006-11-03 David Gilbert <david.gilbert@object-refinery.com> * experimental/org/jfree/experimental/chart/plot/dial/DialBackground.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialCap.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialFrame.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialLayer.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialPlot.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialPointer.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialScale.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialTextAnnotation.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/DialValueIndicator.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/SimpleDialFrame.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialFrame.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialRange.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialScale.java: New file, * experimental/org/jfree/experimental/chart/plot/dial/StandardDialScale.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/DialBackgroundTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/DialCapTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/DialPackageTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/DialPlotTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/DialTextAnnotationTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/DialValueIndicatorTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/SimpleDialFrameTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/StandardDialFrameTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/StandardDialRangeTests.java: New file, * tests/org/jfree/experimental/chart/plot/dial/junit/StandardDialScaleTests.java: New file. 2006-11-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/HashcodeUtilities.java: New file, * source/org/jfree/chart/annotation/XYPolygonAnnotation.java (hashCode): Use new utility class, (hashCodeForPaint): Removed, (hashCodeForDoubleArray): Likewise. 2006-11-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultIntervalXYDataset.java (addSeries): Remove old series if there is one with the same key as the new series, * source/org/jfree/data/xy/DefaultXYDataset.java (addSeries): Likewise, * source/org/jfree/data/xy/DefaultXYZDataset.java (addSeries): Likewise, * tests/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): Added DefaultIntervalXYDatasetTests, * tests/org/jfree/data/xy/junit/DefaultIntervalXYDatasetTests.java (testAddSeries): New test, * tests/org/jfree/data/xy/junit/DefaultXYDatasetTests.java (testAddSeries): Likewise, * tests/org/jfree/data/xy/junit/DefaultXYZDatasetTests.java (testAddSeries): Likewise. 2006-10-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (refreshTicks): Fetch categories for all datasets that map to this axis; * source/org/jfree/chart/plot/CategoryPlot.java (getDomainAxisIndex): New method, (datasetsMappedToDomainIndex): New method, (getCategoriesForAxis): New method, * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java (getCategoriesForAxis): New method. 2006-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYErrorRenderer.java: New file, * tests/org/jfree/chart/renderer/xy/junit/XYErrorRendererTests.java: New file, * tests/org/jfree/chart/renderer/xy/junit/RendererXYPackageTests.java (suite): Added XYErrorRendererTests. 2006-10-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryMarker.java (CategoryMarker(Comparable, Paint, Stroke)): Set default alpha to 1.0f, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (drawDomainMarker): Draw marker outlines, (drawRangeMarker): Likewise. 2006-10-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java: (drawDomainMarker): Use marker alpha setting, (drawRangeMarker): Likewise, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java: (drawDomainMarker): Use marker alpha setting, (drawRangeMarker): Likewise. 2006-10-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYShapeAnnotation.java (draw): Calculate transform on shape bounds. 2006-10-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java: (setDomainCrosshairStroke): Check null argument, (setDomainCrosshairPaint): Likewise, plus various API doc updates. 2006-10-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java: (drawRangeMarker): Added code to draw outlines. 2006-10-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/resources/JFreeChartResources.java (CONTENTS): Updated version number to 1.0.3. 2006-10-23 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Updated version number to 1.0.3, * source/org/jfree/data/xy/DefaultIntervalXYDataset.java: New file, * tests/org/jfree/data/xy/junit/DefaultIntervalXYDatasetTests.java: New file. 2006-10-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XIntervalSeries.java (getX): Added cast; (getYValue): Likewise, (getDataItem): Changed return value, * source/org/jfree/data/xy/XIntervalSeriesCollection.java (getX): Added cast, (getY): Likewise, (getStartX): Likewise, (getEndX): Likewise, * source/org/jfree/data/xy/XYIntervalSeries.java (getX): Added cast; (getYValue): Likewise, (getDataItem): Changed return value, * source/org/jfree/data/xy/XYIntervalSeriesCollection.java (getX): Added cast, (getY): Likewise, (getStartX): Likewise, (getEndX): Likewise, * source/org/jfree/data/xy/YIntervalSeries.java (getX): Added cast; (getYValue): Likewise, (getDataItem): Changed return value, * source/org/jfree/data/xy/YIntervalSeriesCollection.java (getX): Added cast, (getY): Likewise, (getStartX): Likewise, (getEndX): Likewise, * tests/org/jfree/data/DataPackageTests.java (suite): Added new tests, * tests/org/jfree/data/xy/DataXYPackageTests.java (suite): Added new tests. 2006-10-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/ComparableObjectItem.java: New file, * source/org/jfree/data/ComparableObjectSeries.java: Likewise, * source/org/jfree/data/xy/XIntervalDataItem.java: Likewise, * source/org/jfree/data/xy/XIntervalSeries.java: Likewise, * source/org/jfree/data/xy/XIntervalSeriesCollection.java: Likewise, * source/org/jfree/data/xy/XYInterval.java: Likewise, * source/org/jfree/data/xy/XYIntervalDataItem.java: Likewise, * source/org/jfree/data/xy/XYIntervalSeries.java: Likewise, * source/org/jfree/data/xy/XYIntervalSeriesCollection.java: Likewise, * source/org/jfree/data/xy/YInterval.java: Likewise, * source/org/jfree/data/xy/YIntervalDataItem.java: Likewise, * source/org/jfree/data/xy/YIntervalSeries.java: Likewise, * source/org/jfree/data/xy/YIntervalSeriesCollection.java: Likewise, * source/org/jfree/data/xy/YWithXInterval: Likewise, * tests/org/jfree/data/junit/ComparableObjectItemTests.java: New file, * tests/org/jfree/data/junit/ComparableObjectSeriesTests.java: New file, * tests/org/jfree/data/xy/junit/XIntervalDataItemTests.java: New file, * tests/org/jfree/data/xy/junit/XIntervalSeriesCollectionTests.java: New file, * tests/org/jfree/data/xy/junit/XIntervalSeriesTests.java: New file, * tests/org/jfree/data/xy/junit/XYIntervalDataItemTests.java: New file, * tests/org/jfree/data/xy/junit/XYIntervalSeriesCollectionTests.java: New file, * tests/org/jfree/data/xy/junit/XYIntervalSeriesTests.java: New file, * tests/org/jfree/data/xy/junit/XYIntervalTests.java: New file, * tests/org/jfree/data/xy/junit/YIntervalDataItemTests.java: New file, * tests/org/jfree/data/xy/junit/YIntervalSeriesCollectionTests.java: New file, * tests/org/jfree/data/xy/junit/YIntervalSeriesTests.java: New file, * tests/org/jfree/data/xy/junit/YIntervalTests.java: New file, * tests/org/jfree/data/xy/junit/YWithXIntervalTests.java: New file. 2006-10-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/jdbc/JDBCXYDataset.java: (getLegendItemCount): Deprecated, (getLegendItemLabels): Deprecated. 2006-10-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CrosshairState.java (getCrosshairDistance): New method, (getAnchor): New method, (getAnchorX): New method, (setAnchorX): New method, (getAnchorY): New method, (setAnchorY): New method, * source/org/jfree/chart/plot/XYPlot.java (draw): Initialise the anchor coordinates. 2006-10-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java: (drawHorizontalItem): Check for null box, (drawVerticalItem): Likewise, * tests/org/jfree/chart/renderer/category/junit/BoxAndWhiskerRendererTests.java (testBug1572478Vertical): New method, (testBug1572478Horizontal): Likewise. 2006-10-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java: Source reformatting and API doc updates. 2006-10-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/RingPlot.java (sectionDepth): New field, (RingPlot(PieDataset)): Initialise sectionDepth field, (getSectionDepth): New method, (setSectionDepth): Likewise, (initialise): New method override to specify three passes, (drawItem): Use sectionDepth, draw separators in pass 3, (equals): Include sectionDepth in test, * tests/org/jfree/chart/plot/junit/RingPlotTests.java (testEquals): Updated, (testCloning): Likewise, (testSerialization): Likewise. 2006-10-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/experimental/**: Removed, files transferred to a new source directory, * experimental/org/jfree/experimental/**: Added, see previous item. 2006-10-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StackedAreaRenderer.java (renderAsPercentages): New field, (StackedAreaRenderer(boolean)): New constructor, (getRenderAsPercentages): New method, (setRenderAsPercentages): Likewise, (getPassCount): New method override, (findRangeBounds): Handle renderAsPercentages, (drawItem): Add support for renderAsPercentages and item labels, (getPreviousHeight): Handle renderAsPercentages, (equals): New method override, * tests/org/jfree/chart/renderer/category/junit/StackedAreaRendererTests.java (testEquals): Updated for renderAsPercentages flag. 2006-10-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/AreaRenderer.java (equals): New method override, * tests/org/jfree/chart/renderer/category/junit/AreaRendererTests.java (testEquals): Added new checks. 2006-10-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYStepRenderer.java (drawItem): Fixed step for horizontal orientation. 2006-10-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/LegendItemBlockContainer.java (toolTipText): New field, (urlText): Likewise, (getToolTipText): New method, (setToolTipText): Likewise, (getURLText): Likewise, (setURLText): Likewise, (draw): Add tool tip text and URL text to the legend item entity, * source/org/jfree/chart/title/LegendTitle.java (createLegendItemBlock): Set the tool tip and URL text in the block. 2006-10-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/PeriodAxis.java (calendar): New field, (PeriodAxis(String, RegularTimePeriod, RegularTimePeriod, TimeZone)): Initialize calendar, (setTimeZone) Reset calendar, (getRange): Replaced deprecated method calls, (drawTickMarksHorizontal): Likewise, (drawTickLabels): Likewise, (valueToJava2D): Likewise, (java2DToValue): Likewise, * source/org/jfree/data/time/Day.java (firstMillisecond): New field, (lastMillisecond): New field, (Day(int, int, int)): Peg milliseconds to default time zone, (Day(SerialDate)): Likewise, (Day(Date, TimeZone)): Peg milliseconds to specified milliseconds, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, * source/org/jfree/data/time/FixedMillisecond.java (peg): New method, * source/org/jfree/data/time/Hour.java (hour): Changed type, (firstMillisecond): New field, (lastMillisecond): New field, (Hour(int, Day)): Peg milliseconds to default time zone, (Hour(Date, TimeZone)): Peg milliseconds to specified time zone, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, * source/org/jfree/data/time/Millisecond.java (day): New field, (hour): New field, (minute): New field, (second): Changed type, (firstMillisecond): New field, (Millisecond(int, Second)): Reimplemented, (Millisecond(Date, TimeZone)): Likewise, (getSecond): Likewise, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (next): Updated for modified fields, (getSerialIndex): Reimplemented, (equals): Likewise, (hashCode): Updated for new fields, (getFirstMillisecond(Calendar)): Reimplemented, (getLastMillisecond(Calendar)): Likewise, * source/org/jfree/data/time/Minute.java (day): New field, (hour): Changed type, (minute): Likewise, (firstMillisecond): New field, (lastMillisecond): New field, (Minute(int, Hour)): Reimplemented, (Minute(Date, TimeZone)): Likewise, (getDay): New method, (getHour): Reimplemented, (getHourValue): New method, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (previous): Updated for changed field types, (next): Likewise, (getSerialIndex): Reimplemented, (getFirstMillisecond(Calendar)): Updated for changed field types, (getLastMillisecond(Calendar)): Likewise, (equals): Likewise, (hashCode): Likewise, * source/org/jfree/data/time/Month.java (year): Changed type, (firstMillisecond): New field, (lastMillisecond): New field, (Month(int, int)): Reimplemented, (Month(int, Year)): Likewise, (Month(Date, TimeZone)): Likewise, (getYear): Updated for changed field type, (getYearValue): Likewise, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (previous): Updated for changed field types, (next): Likewise, (getSerialIndex): Likewise, (equals): Likewise, (hashCode): Likewise, (compareTo): Likewise, (getFirstMillisecond(Calendar)): Reimplemented, (getLastMillisecond(Calendar)): Likewise, * source/org/jfree/data/time/Quarter.java (year): Changed type, (quarter): Likewise, (firstMillisecond): New field, (lastMillisecond): New field, (Quarter(int, int)): Reimplemented, (Quarter(int, Year)): Likewise, (Quarter(Date, TimeZone)): Likewise, (getYear): Reimplemented, (getYearValue): New method, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (previous): Updated for changed field types, (next): Likewise, (getSerialIndex): Likewise, (equals): Likewise, (hashCode): Likewise, (compareTo): Likewise, (getFirstMillisecond(Calendar)): Reimplemented, (getLastMillisecond(Calendar)): Likewise, * source/org/jfree/data/time/RegularTimePeriod.java (WORKING_CALENDAR): Deprecated, (peg): New method, (getFirstMillisecond()): Made abstract, (getFirstMillisecond(TimeZone)): Deprecated, (getLastMillisecond()): Made abstract, (getLastMillisecond(TimeZone)): Deprecated, (getMiddleMillisecond(TimeZone)): Likewise, * source/org/jfree/data/time/Second.java (day): New field, (hour): New field, (minute): Changed type, (second): Changed type, (firstMillisecond): New field, (Second(int, Minute)): Reimplemented, (Second(Date, TimeZone)): Reimplemented, (getMinute): Updated for field type changes, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (previous): Updated for changed field types, (next): Likewise, (getSerialIndex): Likewise, (getFirstMillisecond(Calendar)): Reimplemented, (getLastMillisecond(Calendar)): Likewise, (equals): Likewise, (hashCode): Likewise, (compareTo): Updated for field type changes, * source/org/jfree/data/time/Week.java (year): Changed type, (week): Likewise, (firstMillisecond): New field, (lastMillisecond): New field, (Week(int, int)): Reimplemented, (Week(int, Year)): Likewise, (Week(Date, TimeZone)): Likewise, (getYear): Updated for field type changes, (getYearValue): Likewise, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (previous): Updated for changed field types, (next): Likewise, (getSerialIndex): Likewise, (getFirstMillisecond(Calendar)): Reimplemented, (getLastMillisecond(Calendar)): Likewise, (equals): Likewise, (hashCode): Likewise, (compareTo): Updated for field type changes, * source/org/jfree/data/time/Year.java (year): Changed field type, (firstMillisecond): New field, (lastMillisecond): New field, (Year(int)): Peg to default time zone, (Year(Date, TimeZone)): Peg to specified time zone, (getFirstMillisecond): New method override, (getLastMillisecond): Likewise, (peg): New method, (getFirstMillisecond(Calendar)): Reimplemented, (getLastMillisecond(Calendar)): Likewise. 2006-10-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultXYZDataset.java: Fixed API doc warnings. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Day.java: API doc updates, * source/org/jfree/data/time/Hour.java: Likewise, * source/org/jfree/data/time/Millisecond.java: Likewise, * source/org/jfree/data/time/Minute.java: Likewise, * source/org/jfree/data/time/Month.java: Likewise, * source/org/jfree/data/time/Quarter.java: Likewise, * source/org/jfree/data/time/Second.java: Likewise, * source/org/jfree/data/time/Week.java: Likewise, * source/org/jfree/data/time/Year.java: Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/MillisecondTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/SecondTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/MinuteTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/HourTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/DayTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/WeekTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/MonthTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/QuarterTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * tests/org/jfree/data/time/junit/YearTests.java (testGetFirstMillisecond): New test, (testGetFirstMillisecondWithTimeZone): Likewise, (testGetFirstMillisecondWithCalendar): Likewise, (testGetLastMillisecond): Likewise, (testGetLastMillisecondWithTimeZone): Likewise, (testGetLastMillisecondWithCalendar): Likewise, (testGetSerialIndex): Likewise, (testNext): Likewise, (testGetStart): Likewise, (testGetEnd): Likewise. 2006-10-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultXYDataset.java: Fixed API doc warnings. 2006-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/CategoryPointerAnnotation.java: Fixed Javadoc warnings, * source/org/jfree/chart/entity/CategoryLabelEntity.java: Likewise, * source/org/jfree/chart/event/MarkerChangeListener.java: Likewise, * source/org/jfree/chart/plot/PiePlot.java: Likewise. 2006-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (getSectionKey): Replace call to JRE 1.5 method. 2006-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/DayTests.java (testGetSerialIndex): New method. 2006-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimePeriodValue.java (TimePeriodValue(TimePeriod, Number)): Added null argument check, (clone): Print stack trace in event of exception, * source/org/jfree/data/time/TimePeriodValues.java (add(TimePeriodValue)): Fire series change event, (equals): Guard against null pointer exceptions, * source/org/jfree/data/time/TimePeriodValuesCollection.java (getDomainIsPointsInTime): Deprecated, (setDomainIsPointsInTime): Likewise, * source/org/jfree/data/time/junit/TimePeriodValuesCollectionTests.java: (testEquals): Check for domain and range description fields, (testAdd): New method, (MySeriesChangeListener): New test support class. 2006-10-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/CategoryPointerAnnotation.java: New file, * source/org/jfree/chart/annotations/XYPointerAnnotation.java (setArrowPaint): Check for null argument, * source/org/jfree/chart/annotations/junit/AnnotationsPackageTests.java (suite): Added CategoryPointerAnnotationTests, * source/org/jfree/chart/annotations/junit/CategoryPointerAnnotationTests.java: New file. 2006-10-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (drawCategoryLabels): Updated label entity generation, * source/org/jfree/chart/entity/CategoryLabelEntity.java: New class. 2006-09-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (draw): Replaced call to deprecated method. 2006-09-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/DefaultPieDataset.java (sortByKeys): New method, (sortByValues): New method. 2006-09-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createPieChart): Updated for deprecated code, * source/org/jfree/chart/PaintMap.java: New class, * source/org/jfree/chart/StrokeMap.java: Likewise, * source/org/jfree/chart/junit/PaintMapTests.java: Likewise, * source/org/jfree/chart/junit/StrokeMapTests.java: Likewise, * source/org/jfree/chart/plot/MultiplePiePlot.java (draw): Updated for deprecated code, * source/org/jfree/chart/plot/PiePlot.java (sectionPaintMap): Changed name and type from PaintList to PaintMap, (sectionOutlinePaintMap): Likewise, (sectionOutlineStrokeMap): Likewise, (explodePercentages): Changed type from ObjectList to Map, (PiePlot(PieDataset)): Update initialisation for field name changes, (lookupSectionPaint): Changed argument type, (getSectionKey): New method, (getSectionPaint(Comparable)): Likewise, (setSectionPaint(Comparable, Paint)): Likewise, (getSectionPaint(int)): Deprecated, (setSectionPaint(int, Paint)): Likewise, (lookupSectionOutlinePaint): Changed argument type, (getSectionOutlinePaint(Comparable)): Likewise, (setSectionOutlinePaint(Comparable, Paint)): Likewise, (getSectionOutlinePaint(int)): Deprecated, (setSectionOutlinePaint(int, Paint)): Likewise, (lookupSectionOutlineStroke): Changed argument type, (getSectionOutlineStroke(Comparable)): Likewise, (setSectionOutlineStroke(Comparable, Stroke)): Likewise, (getSectionOutlineStroke(int)): Deprecated, (setSectionOutlineStroke(int, Stroke)): Likewise, (getExplodePercent(Comparable)): New method, (setExplodePercent(Comparable, double)): Likewise, (getExplodePercent(int)): Deprecated, (setExplodePercent(int, double)): Deprecated, (getMaximumExplodePercent): Modified to only check visible sections, (drawItem): Updated for deprecated code, (getLegendItems): Likewise, (equals): Updated for renamed fields, * source/org/jfree/chart/plot/PiePlot3D.java (draw): Updated for deprecated code, * source/org/jfree/chart/plot/RingPlot.java (drawItem): Likewise. 2006-09-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (PiePlot(PieDataset)): Initialise baseSectionPaint to a non-null value, (lookupSectionPaint(int)): New method, (lookupSectionPaint(int, boolean)): Likewise, (getSectionPaint(int)): Reimplemented without lookup, (lookupSectionOutlinePaint(int)): New method, (lookupSectionOutlinePaint(int, boolean)): Likewise, (getSectionOutlinePaint(int)): Reimplemented without lookup, (lookupSectionOutlineStroke(int)): New method, (lookupSectionOutlineStroke(int, boolean)): Likewise, (getSectionOutlineStroke(int)): Reimplemented without lookup, (drawItem): Use new lookup methods, (getLegendItems): Likewise, * source/org/jfree/chart/plot/PiePlot3D.java (draw): Use new lookup methods, * source/org/jfree/chart/plot/RingPlot.java (drawItem): Use new lookup methods, * source/org/jfree/chart/plot/junit/PiePlotTests.java (testGetBaseSectionPaint): New method. 2006-09-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (previousStandardDate): Handle tick mark position properly, * source/org/jfree/chart/axis/junit/DateAxisTests.java (MyDateAxis): New class, (testPreviousStandardDateYear): New method, (testPreviousStandardDateMonth): New method, (testPreviousStandardDateDay): New method, (testPreviousStandardDateHour): New method, (testPreviousStandardDateMinute): New method. 2006-09-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java: (StatisticalLineAndShapeRenderer(boolean, boolean)): Use arguments, * source/org/jfree/chart/renderer/category/junit/StatisticalLineAndShapeRendererTests.java: (test1562759): New method. 2006-09-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (drawItem): Don't use hard-coded outline paint and stroke. 2006-09-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/servlet/ServletUtilities.java (sendTempFile(File, HttpServletResponse, String)): Specify English locale for response header date format. 2006-09-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (mouseClicked): Return early if chart is null, (mouseMoved): Check for null chart. 2006-09-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainCategoryPlot.java: Updated API docs and reformatted some source code, * source/org/jfree/chart/plot/CombinedDomainXYPlot.java: Likewise, * source/org/jfree/chart/plot/CombinedRangeCategoryPlot.java: Likewise, * source/org/jfree/chart/plot/CombinedRangeXYPlot.java: Likewise, * source/org/jfree/chart/plot/XYPlot.java: Likewise. 2006-09-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/HistogramDataset.java (addSeries): Check for binIndex that is too large, * source/org/jfree/data/statistics/junit/HistogramDatasetTests.java (test1553088): New method. 2006-09-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/event/MarkerChangeEvent.java: New file, * source/org/jfree/chart/event/MarkerChangeListener.java: New file, * source/org/jfree/chart/plot/CategoryMarker.java (setKey): New method, (setDrawAsLine): Notify listeners, * source/org/jfree/chart/plot/CategoryPlot.java (addDomainMarker): Register plot as a listener with the new marker, (clearDomainMarkers()): Deregister plot as a listener with each marker, (clearDomainMarkers(int)): Likewise, (addRangeMarker): Register plot as a listener with the new marker, (clearRangeMarkers()): Deregister plot as a listener with each marker, (clearRangeMarkers(int)): Likewise, * source/org/jfree/chart/plot/IntervalMarker.java (setStartValue): New method, (setEndValue): New method, (setGradientPaintTransformer): Notify listeners, * source/org/jfree/chart/plot/Marker.java (listeners): New field, (Marker): Initialise listeners field, (setPaint): Notify listeners, (setStroke): Likewise, (setOutlinePaint): Likewise, (setOutlineStroke): Likewise, (setAlpha): Likewise, (setLabel): Likewise, (setLabelFont): Likewise, (setLabelPaint): Likewise, (setLabelAnchor): Likewise, (setLabelOffset): Likewise, (setLabelOffsetType): Likewise, (setLabelTextAnchor): Likewise, (addChangeListener): New method, (removeChangeListener): New method, (notifyListeners): New method, (getListeners): New method, * source/org/jfree/chart/plot/Plot.java (markerChanged): New method, * source/org/jfree/chart/plot/ValueMarker.java (setValue): New method, * source/org/jfree/chart/plot/XYPlot.java (addDomainMarker): Register plot as a listener with the new marker, (clearDomainMarkers()): Deregister plot as a listener with each marker, (clearDomainMarkers(int)): Likewise, (addRangeMarker): Register plot as a listener with the new marker, (clearRangeMarkers()): Deregister plot as a listener with each marker, (clearRangeMarkers(int)): Likewise, * source/org/jfree/chart/plot/junit/CategoryMarkerTests.java: (lastEvent): New field, (markerChanged): New method, (testGetSetKey): Likewise, (testGetSetDrawAsLine): Likewise, * source/org/jfree/chart/plot/junit/IntervalMarkerTests.java: (lastEvent): New field, (markerChanged): New method, (testGetSetStartValue): New method, (testGetSetEndValue): New method, * source/org/jfree/chart/plot/junit/MarkerTests.java: New file, * source/org/jfree/chart/plot/junit/PlotPackageTests.java (suite): Added MarkerTests.class, * source/org/jfree/chart/plot/junit/ValueMarkerTests.java: (lastEvent): New field, (markerChanged): New method, (testGetSetValue): Likewise. 2006-09-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (actionPerformed): Updated for method name change, (attemptEditChartProperties): Renamed doEditChartProperties() and made public. 2006-09-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/NumberAxis.java (autoAdjustRange): Check for lower == upper after applying auto range minimum size and adjust if necessary. 2006-09-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java (removeAgedItems(boolean)): Check for greater than maxItemAge, (removeAgedItems(long, boolean): Reimplemented, * source/org/jfree/data/time/junit/TimeSeriesTests.java (testRemoveAgedItems): New method, (testRemoveAgedItems2): New method. 2006-08-29 Henry Proudhon <henry.proudhon AT insa-lyon.fr> * source/org/jfree/experiment/swt/SWTUtils.java (Az): New field, (toSwtFontData): Refined font size calculation, (toAwtFont): Likewise. ---------- JFREECHART 1.0.2 RELEASED ------------------------ 2006-08-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (JFreeChartInfo.getLogo): Load image from jar file in a way that works for Java Web Start also. 2006-08-25 David Gilbert <david.gilbert@object-refinery.com> * README.txt: Provide link to iText, * ant/build.xml: Restore 'compile-experimental' to 'all', but exclude SWT classes. 2006-08-25 David Gilbert <david.gilbert@object-refinery.com> * NEWS: Updated for release, * README.txt: Likewise, * ant/build.xml: Removed 'compile-experimental' from 'all'. 2006-08-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/experimental/chart/axis/LogAxis.java: New file, * source/org/jfree/experimental/chart/demo/LogAxisDemo1.java: New file. 2006-08-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/experimental/chart/swt/editor/SWTAxisEditor.java: Made package private, * source/org/jfree/experimental/chart/swt/editor/SWTNumberAxisEditor.java: Likewise, * source/org/jfree/experimental/chart/swt/editor/SWTOtherEditor.java: Likewise, * source/org/jfree/experimental/chart/swt/editor/SWTPlotAppearanceEditor.java: Likewise, * source/org/jfree/experimental/chart/swt/editor/SWTPlotEditor.java: Likewise, * source/org/jfree/experimental/chart/swt/editor/SWTStrokeCanvas.java: Likewise, * source/org/jfree/experimental/chart/swt/editor/SWTTitleEditor.java: Likewise. 2006-08-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/experimental/chart/swt/ChartComposite.java (attemptEditChartProperties): Implemented, * source/org/jfree/experimental/chart/swt/editor/SWTAxisEditor.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTChartEditor.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTNumberAxisEditor.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTOtherEditor.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTPlotAppearanceEditor.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTPlotEditor.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTStrokeCanvas.java: New file, * source/org/jfree/experimental/chart/swt/editor/SWTTitleEditor.java: New file, * source/org/jfree/experimental/swt/SWTPaintCanvas.java: New file. 2006-08-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItem): Added crosshair support, and modified dataset calls to use only double primitives. 2006-08-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/experimental/chart/demo/XYBlockChartDemo2.java (createDataset): Rewritten to fix compile errors, * source/org/jfree/experimental/chart/demo/XYBlockChartDemo3.java (setValue): New method, (createDataset): Rewritten to fix compile errors. 2006-08-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/experimental/chart/swt/ChartComposite.java: New file, * source/org/jfree/experimental/chart/swt/demo/SWTBarChartDemo1.java: New file, * source/org/jfree/experimental/chart/swt/demo/SWTMultipleAxisDemo1.java: New file, * source/org/jfree/experimental/chart/swt/demo/SWTPieChartDemo1.java: New file, * source/org/jfree/experimental/swt/SWTGraphics2D.java: New file, * source/org/jfree/experimental/swt/SWTUtils.java: New file. 2006-08-23 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Added 'compile-experimental' target, * source/org/jfree/experimental/chart/demo/XYBlockChartDemo1.java: New file, * source/org/jfree/experimental/chart/demo/XYBlockChartDemo2.java: New file, * source/org/jfree/experimental/chart/demo/XYBlockChartDemo3.java: New file, * source/org/jfree/experimental/chart/renderer/GrayPaintScale.java: New file, * source/org/jfree/experimental/chart/renderer/LookupPaintScale.java: New file, * source/org/jfree/experimental/chart/renderer/PaintScale.java: New file, * source/org/jfree/experimental/chart/renderer/junit/GrayPaintScaleTests.java: New file, * source/org/jfree/experimental/chart/renderer/junit/LookupPaintScaleTests.java: New file, * source/org/jfree/experimental/chart/renderer/xy/XYBlockRenderer.java: New file, * source/org/jfree/experimental/chart/renderer/xy/junit/XYBlockRendererTests.java: New file. 2006-08-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CombinedDomainXYPlot.java (setFixedRangeAxisSpace): New method override. 2006-08-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createStackedXYAreaChart): Use StackedXYAreaRenderer2 instead of StackedXYAreaRenderer, for better handling of negative values, * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java: Updated API docs. 2006-08-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer2.java (findRangeBounds): Handle null and empty datasets correctly, * source/org/jfree/chart/renderer/xy/junit/StackedXYAreaRenderer2Tests.java: (testDrawWithEmptyDataset): New test, (testFindRangeBounds): Added checks for null and empty datasets. 2006-08-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (drawCategoryLabels(Graphics2D, Rectangle2D, RectangleEdge, AxisState, PlotRenderingInfo)): Deprecated, (drawCategoryLabels(Graphics2D, Rectangle2D, Rectangle2D, RectangleEdge, AxisState, PlotRenderingInfo)): New method, * source/org/jfree/chart/axis/CategoryAxis3D.java (draw): Call new drawCategoryLabels() method, * source/org/jfree/chart/axis/SubCategoryAxis.java (draw): Likewise, * source/org/jfree/chart/plot/CategoryPlot.java (getDatasetCount): New method. 2006-08-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LayeredBarRenderer.java (calculateBarWidth): Respect maximumBarWidth setting. 2006-08-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/junit/CandlestickRendererTests.java (testFindRangeBounds): New method, * source/org/jfree/chart/renderer/xy/junit/HighLowRendererTests.java (testFindRangeBounds): New method. 2006-08-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (equals): Check additional fields, * source/org/jfree/chart/renderer/xy/junit/CandlestickRendererTests.java (testEquals): Extended to check all fields. 2006-08-04 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Added source="1.3" target="1.3" to compile. 2006-08-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (calculateBarL0L1}: Changed clipping slightly. 2006-08-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/DefaultPolarItemRenderer.java (clone): New method, (equals): Likewise, * source/org/jfree/chart/renderer/junit/DefaultPolarItemRendererTests.java: New test class, * source/org/jfree/chart/renderer/junit/RendererPackageTests.java (suite): Added DefaultPolarItemRendererTests. 2006-08-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/block/AbstractBlock.java (getContentXOffset): Added API docs, (getContentYOffset): Likewise. 2006-08-04 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotation/CategoryLineAnnotation.java (CategoryLineAnnotation): Fixed API doc warnings. 2006-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYBarDataset.java: API doc updates, * source/org/jfree/data/xy/XYDataset.java: Likewise, * source/org/jfree/data/xy/XYSeriesCollection.java: Likewise. 2006-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/junit/CategoryToPieDatasetTests.java (testGetIndex): New test method. 2006-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultStatisticalCategoryDataset.java (getRangeBounds): Minor fix to previous patch. 2006-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/DefaultStatisticalCategoryDataset.java (minimumRangeValueIncStdDev): New field, (maximumRangeValueIncStdDev): Likewise, (DefaultStatisticalCategoryDataset): Updated initialization code, (add): Modified code to update ranges, (getRangeBounds): Create the range as required, * source/org/jfree/data/statistics/junit/DefaultStatisticalCategoryDatasetTests.java (testGetRangeBounds): New test method. 2006-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/HistogramDataset.java (addSeries): Improved precision of bin boundary calculation, * source/org/jfree/data/statistics/junit/HistogramDatasetTests.java (testAddSeries): New method, (testBinBoundaries): New method. 2006-08-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/HistogramDataset.java: API doc updates. 2006-08-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYBoxAnnotation.java: API doc correction and source code reformatting. 2006-08-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/needle/ArrowNeedle.java: Minor API doc updates, * source/org/jfree/chart/needle/LineNeedle.java: Likewise, * source/org/jfree/chart/needle/LongNeedle.java: Likewise, * source/org/jfree/chart/needle/MiddlePinNeedle.java: Likewise, * source/org/jfree/chart/needle/PinNeedle.java: Likewise, * source/org/jfree/chart/needle/PlumNeedle.java: Likewise, * source/org/jfree/chart/needle/PointerNeedle.java: Likewise, * source/org/jfree/chart/needle/ShipNeedle.java: Likewise, * source/org/jfree/chart/needle/WindNeedle.java: Likewise. 2006-08-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (equals): Handle null tool tip and URL generators, * source/org/jfree/chart/plot/junit/SpiderWebPlot.java (testEquals): Extended to check tooltip and URL generators. 2006-08-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/DrawableLegendItem.java: Deprecated class. 2006-08-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (restoreAutoRangeBounds): Check for instance of Zoomable rather than ValueAxisPlot. 2006-08-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/DefaultDrawingSupplier.java: Reformatted and updated API docs. 2006-08-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues.java (getIndex): Check for null argument, * source/org/jfree/data/general/DefaultPieDataset.java (getKey(int)): Throw IndexOutOfBounds if key exceeds getItemCount() - 1, * source/org/jfree/data/general/junit/DefaultPieDatasetTests.java (testGetKey): New method, (testGetIndex): New method, * source/org/jfree/data/junit/DefaultKeyedValuesTests.java (testGetIndex): Added check for null argument. 2006-07-31 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/DefaultKeyedValues.java (clear): New method, * source/org/jfree/data/general/DefaultPieDataset.java (clear): Likewise, * source/org/jfree/data/general/junit/DefaultPieDatasetTests.java (lastEvent): New field, (datasetChanged): New method, (testClear): New method, * source/org/jfree/data/junit/DefaultKeyedValuesTests.java (testClear): New method. 2006-07-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYSeries.java (add(Number, Number, boolean)): Removed redundant argument check. 2006-07-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/junit/NumberAxisTests.java (testAutoRange4): New method. 2006-07-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/CategoryToPieDataset.java (serialVersionUID): New field, (CategoryToPieDataset): Handle null source, (getUnderlyingDataset): New method, (getExtractType): New method, (getExtractIndex): New method, (getValue): Check index bounds, (getKey): Check index bounds, (getIndex): Handle null source, (getKeys): Likewise, (getValue): Handle unrecognised key, (equals): New method override, * source/org/jfree/data/category/junit/CategoryToPieDatasetTests.java: New file, * source/org/jfree/data/category/junit/DataCategoryPackageTests.java (suite): Added new test. 2006-07-25 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Use JCommon 1.0.5, * source/org/jfree/chart/axis/DateAxis.java: Fixed API doc warning, * source/org/jfree/chart/labels/StandardCategoryItemLabelGenerator.java: Likewise, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java: Likewise, * source/org/jfree/data/general/Series.java: Likewise, * source/org/jfree/data/time/TimeSeries.java: Likewise. 2006-07-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/resources/JFreeChartResources.java (CONTENTS): Updated version number, * source/overview.html: Updated link, * ant/build.xml: Updated version number. 2006-07-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/demo/TimeSeriesDemo1.java (createDataset): Removed call to deprecated method. 2006-07-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java (datasetIndex): New field, (series): Likewise, (getDatasetIndex): New method, (setDatasetIndex): Likewise, (getSeriesIndex): Likewise, (setSeriesIndex): Likewise, (equals): Updated for new fields, * source/org/jfree/chart/block/BlockContainer.java (draw): Transform drawing area directly, * source/org/jfree/chart/block/CenterArrangement.java (arrangeNN): Set bounds for contained block, * source/org/jfree/chart/block/LabelBlock.java (arrange): Removed unused code, (draw): Correct entity area calculation, * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (getLegendItem): Set dataset and series indices, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/title/LegendItemBlockContainer.java: New file, * source/org/jfree/chart/title/LegendTitle.java (createLegendItemBlock): Use new LegendItemBlockContainer class. 2006-07-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/encoders/SunJPEGEncoderAdapter.java (quality): Changed default to 0.95f, (setQuality): Added argument check, (encode(BufferedImage, OutputStream)): Set quality before writing image to output stream. 2006-07-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYPointerAnnotation.java (draw): Swap coordinates for PlotOrientation.HORIZONTAL. 2006-07-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalBarRenderer.java (drawHorizontalItem): Added item label drawing, (drawVerticalItem): Likewise. 2006-07-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultWindDataset.java (DefaultWindDataset(List, Object[][][]): Added argument checks, (getItemCount): Likewise, (getSeriesKey): Likewise, (equals): New method override, (WindDataItem): Implements Serializable, (WindDateItem.equals): New method override, * source/org/jfree/data/xy/WindDataset.java: API doc updates, * source/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): Added DefaultWindDatasetTests, * source/org/jfree/data/xy/junit/DefaultWindDatasetTests.java: New file. 2006-07-12 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultXYZDataset.java: New file, * source/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): Add new test class, * source/org/jfree/data/xy/junit/DefaultXYZDatasetTests.java: New file. 2006-07-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYDotRenderer.java (dotWidth): New field, (dotHeight): New field, (XYDotRenderer): Initialize new fields, (getDotWidth): New method, (setDotWidth): Likewise, (getDotHeight): New method, (setDotHeight): New method, (drawItem): Use variable dot size, (equals): Check new field values, * source/org/jfree/chart/renderer/xy/junit/XYDotRendererTests.java (testEquals): Extended test to cover new fields, (testHashCode): Likewise. 2006-07-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYPolygonAnnotation.java (XYPolygonAnnotation(double[], Stroke, Paint, Paint)): Added argument checks, and cloned incoming array, (getPolygonCoordinates): New method, (getFillPaint): New method, (getOutlinePaint): New method, (getOutlineStroke): New method, (draw): Return if the polygon has less than two vertices, (equals): Fixed bug with GradientPaint, (hashCode): Implemented, (hashCodeForPaint): New utility method, (hashCodeForDoubleArray): Likewise, * source/org/jfree/chart/annotations/junit/AnnotationsPackageTests.java: (suite): Added XYPolygonAnnotationTests, * source/org/jfree/chart/annotations/junit/XYPolygonAnnotationTest.java: New file. 2006-07-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java: Source reformatting. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/AbstractSeriesDataset.java: API doc updates, * source/org/jfree/data/general/SeriesDataset.java: Likewise. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/DefaultXYDataset.java: New file, * source/org/jfree/data/xy/junit/DataXYPackageTests.java: (suite): Included new class DefaultXYDatasetTests, * source/org/jfree/data/xy/junit/DefaultXYDatasetTests.java: New file. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CyclicXYItemRenderer.java (drawItem): Swapped all calls to dataset methods returning Number instances, to corresponding methods that return doubles. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java (drawItem): Swapped all calls to dataset methods returning Number instances, to corresponding methods that return doubles. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/HighLowRenderer.java (drawItem): Swapped all calls to dataset methods returning Number instances, to corresponding methods that return doubles. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/urls/TimeSeriesURLGenerator.java: (generateURL): Swapped getX() --> getXValue() (DG); 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java: Reformatted. 2006-07-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/CandlestickRenderer.java (drawItem): Swapped all calls to dataset methods returning Number instances, to corresponding methods that return doubles. 2006-07-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Marker.java: Reformatting and API doc updates. 2006-06-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Plot.java (backgroundImageAlpha): New field, (getBackgroundImageAlpha): New method, (setBackgroundImageAlpha): New method, (drawBackgroundImage): Use new alpha field, * source/org/jfree/chart/plot/junit/PlotTests.java (testEquals): Added check for new field. 2006-06-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/ClusteredXYBarRenderer.java (drawItem): Check orientation when adjusting for margin, call new drawItemLabel() method in superclass. 2006-06-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (positiveItemLabelPositionFallback): New field, (negativeItemLabelPositionFallback): Likewise, (getPositiveItemLabelPositionFallback): New method, (setPositiveItemLabelPositionFallback): Likewise, (getNegativeItemLabelPositionFallback): Likewise, (setNegativeItemLabelPositionFallback): Likewise, (drawItem): Call new drawItemLabel() method, (drawItemLabel): New method, (calculateLabelAnchorPoint): New method, (isInternalAnchor): New method, (equals): Updated for new fields, * source/org/jfree/chart/renderer/xy/junit/XYBarRendererTests.java (testEquals): Extended to cover new fields, (testSerialization2): New test. 2006-06-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYStepRenderer.java (drawItem): Handle item labels. 2006-06-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (State.seriesIndex): New field, (State.getSeriesIndex): New method, (State.setSeriesIndex): New method, (initialise): Set seriesIndex field, (drawItem): Don't return until seriesPath has a chance to be updated and/or drawn, if it is being used. 2006-06-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (drawRadarPoly): Check for null info, * source/org/jfree/chart/plot/junit/SpiderWebPlotTests.java (testDrawWithNullInfo): New method. 2006-06-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/junit/WeekTests.java (testBug1498805): New method. 2006-05-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (drawItem): Check for both line and shape not visible, and do nothing in that case (fix for bug 1494936). 2006-05-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java: (delete(RegularTimePeriod)): Do nothing for unknown time period, (delete(int, int)): Added argument check, (createCopy(int, int)): Added argument checks, (createCopy(RegularTimePeriod, RegularTimePeriod)): Added argument checks, and special handling for range containing no observations, * source/org/jfree/data/time/junit/TimeSeriesTests.java: (testDelete2): Added new cases, (testCreateCopy1): Reformatted, (testCreateCopy2): New test, (testGetIndex): Likewise, (testGetDataItem1): Likewise, (testGetDataItem2): Likewise. 2006-05-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/Series.java: Updated API docs. 2006-05-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalBarRenderer.java (drawHorizontalItem): Add entity for bar, (drawVerticalItem): Add entity for bar. 2006-05-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/AbstractCategoryItemLabelGenerator.java (AbstractCategoryItemLabelGenerator(String, NumberFormat, NumberFormat)): New constructor, * source/org/jfree/chart/labels/StandardCategoryItemLabelGenerator.java (StandardCategoryItemLabelGenerator(String, NumberFormat, NumberFormat)): New constructor, (equals): New method, * source/org/jfree/chart/labels/StandardCategorySeriesLabelGenerator.java (equals): Added check for formatPattern, * source/org/jfree/chart/labels/StandardCategoryToolTipGenerator.java (StandardCategoryToolTipGenerator(String, NumberFormat, NumberFormat)): New constructor, (equals): New method, * source/org/jfree/chart/labels/junit/StandardCategoryItemLabelGeneratorTests.java (testEquals1481087): New test, * source/org/jfree/chart/labels/junit/StandardCategorySeriesLabelGeneratorTests.java: New file, * source/org/jfree/chart/labels/junit/StandardCategoryToolTipGeneratorTests.java (testEquals1481087): New test. 2006-05-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/junit/LabelsPackageTests.java (suite): Updated test class name, * source/org/jfree/chart/labels/junit/StandardPieItemLabelGeneratorTests.java: Removed, * source/org/jfree/chart/labels/junit/StandardPieToolTipGeneratorTests.java: Added (renamed file). 2006-05-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/AbstractPieItemLabelGenerator.java (clone): Clone the percentFormat field, fixes bug 1480978, * source/org/jfree/chart/labels/StandardPieSectionLabelGenerator.java (DEFAULT_SECTION_LABEL_FORMAT): Changed to "{0}", (StandardPieSectionLabelGenerator()): Use DEFAULT_SECTION_LABEL_FORMAT, * source/org/jfree/chart/labels/StandardPieToolTipGenerator.java: Reformatted, * source/org/jfree/chart/labels/junit/StandardPieItemLabelGeneratorTests.java (testCloning): Extended test to cover bug 1480978. 2006-04-19 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java (equals): Call super.equals(); * source/org/jfree/chart/axis/junit/DateAxisTests.java (testEquals): Added more checks, (test1472942): New test method. 2006-04-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalLineAndShapeRenderer.java: (drawItem): Handle horizontal orientation correctly. 2006-04-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MultiplePiePlot.java (aggregatedItemsKey): New field, (aggregatedItemsPaint): Likewise, (sectionPaints): Likewise, (MultiplePiePlot(CategoryDataset)): Initialise new fields, (getAggregatedItemsKey): New method, (setAggregatedItemsKey): Likewise, (getAggregatedItemsPaint): Likewise, (setAggregatedItemsPaint): Likewise, (draw): Call prefetchSectionPaints(), use new field for aggregatedItemsKey, and update section colors in pie plot before drawing, (prefetchSectionPaints): New utility method, (getLegendItems): Call prefetchSectionPaints(), and add item for aggregatedItems if these are being used, (equals): Added tests for new fields, (writeObject): Added serialization support for new fields, (readObject): Likewise, * source/org/jfree/chart/plot/junit/MultiplePiePlotTests.java (testEquals): Extended to cover new fields, (testSerialization): Modified to cover a failing case. 2006-04-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Week.java (Week(Date, TimeZone)): Handle the case where the first few days of the year are part of the last week of the preceding year - see bug report 1448828, * source/org/jfree/data/time/junit/WeekTests.java (testBug1448828): New test method. 2006-04-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (toolTipGenerator): New field, (urlGenerator): Likewise, (getToolTipGenerator): New method, (setToolTipGenerator): Likewise, (getURLGenerator): Likewise, (setURLGenerator): Likewise, (drawRadarPoly): Populate entity collection, if not null, (equals): Updated for new fields. 2006-04-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (drawRadarPoly): Check for value >= to zero, not > zero (see patch 1462727). 2006-04-05 David Gilbert <david.gilbert@object-refinery.com> Patch 1459313 by Max Herfort: * source/org/jfree/chart/renderer/category/StackedBarRenderer3D.java (renderAsPercentages): New field, (StackedBarRenderer3D()): Delegate to new constructor, (StackedBarRenderer3D(boolean)): New constructor, (StackedBarRenderer3D(double, double, boolean)): Likewise, (getRenderAsPercentages): New method, (setRenderAsPercentages): Likewise, (findRangeBounds): Check renderAsPercentages flag and return an appropriate range, (drawItem): Check renderAsPercentages flag and draw items accordingly, (equals): Overridden to account for renderAsPercentages flag, * NEWS: Added notes about this patch. 2006-03-08 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/jdbc/JDBCCategoryDataset.java (executeQuery(Connection, String)): Fixed update loop (bug 1445748). 2006-03-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/AbstractCategoryItemRenderer.java (getLegendItems): Check seriesVisibleInLegend flag before creating each legend item. 2006-02-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (drawRightLabels): Fixed distribution of labels, * NEWS: Added bug fix entry for 1440415. 2006-02-28 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml (compile): Remove manifest specification; * NEWS: Added bug fix entry. 2006-02-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYPointerAnnotation.java (equals): Reimplemented, * source/org/jfree/chart/annotations/junit/XYPointerAnnotationTests.java (testEquals): Updated to cover bug report 1415160. 2006-02-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/NumberAxis.java (equals): Added check for rangeType field, * source/org/jfree/chart/axis/junit/NumberAxisTests.java (testEquals()): Extended to check rangeType field, * NEWS: Added note of bug fix for 1435461. 2006-02-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/DateAxis.java: Updated API docs, * source/org/jfree/chart/axis/NumberAxis.java: Likewise. ---------- JFREECHART 1.0.1 RELEASED ------------------------ 2006-01-27 David Gilbert <david.gilbert@object-refinery.com> * NEWS: Updated for 1.0.1 release, * ant/build.xml: Updated version number, * source/org/jfree/chart/JFreeChart.java: Reformatted, * source/org/jfree/chart/resources/JFreeChartResources.java: (CONTENTS): Updated version number. 2006-01-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/AbstractXYItemLabelGenerator.java (createItemArray): Updated API docs, * source/org/jfree/chart/labels/BubbleXYItemLabelGenerator.java: New file, * source/org/jfree/chart/labels/StandardXYZItemLabelGenerator.java: Removed, * source/org/jfree/chart/labels/XYZItemLabelGenerator.java: Likewise, * source/org/jfree/chart/labels/junit/BubbleXYItemLabelGeneratorTests.java: New tests, * source/org/jfree/chart/labels/junit/LabelsPackageTests.java (suite): Renamed test, * source/org/jfree/chart/labels/junit/StandardXYItemLabelGeneratorTests.java: New file, * source/org/jfree/chart/labels/junit/StandardXYLabelGeneratorTests.java: Removed. 2006-01-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/CategoryPlot.java (getDomainGridlinePosition): Updated API docs, (setDomainGridlinePosition): Check for null argument, (getDomainGridlineStroke): Updated API docs, (setDomainGridlineStroke): Check for null argument, (getDomainGridlinePaint): Updated API docs, (setDomainGridlinePaint): Check for null argument, (getRangeGridlineStroke): Updated API docs, (setRangeGridlineStroke): Check for null argument, (getRangeGridlinePaint): Updated API docs, (setRangeGridlinePaint): Check for null argument. 2006-01-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/XYPlot.java (getAnnotations): New method, * source/org/jfree/chart/plot/junit/XYPlotTests.java (testRemoveAnnotation): New test. 2006-01-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/annotations/XYTextAnnotation.java (equals): Check x and y attributes (fixes bug 1415480). 2006-01-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (drawItem): Check item label visible flag. 2006-01-26 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createScatterPlot): Corrected API documentation. 2006-01-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LevelRenderer.java (getMaxItemWidth): Deprecated, (setMaxItemWidth): Likewise, (getMaximumItemWidth): New method, (setMaximumItemWidth): Likewise. 2006-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/GanttRenderer.java (GanttRenderer()): Set includeBaseInRange to false, * source/org/jfree/data/gantt/TaskSeriesCollection.java (getSeries(Comparable)): New method, (getSeries(int)): Likewise, * source/org/jfree/data/gantt/junit/TaskSeriesCollectionTests.java (testGetSeries): New tests. 2006-01-18 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/NumberAxis3D.java (draw): Check plot is a CategoryPlot before casting (fixes bug 1408904). 2006-01-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/CategoryAxis.java (drawCategoryLabels): Fixed null pointer exception (see bug report 1403043). 2006-01-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/xy/XYSeries.java (update(int, Number)): Deprecated (renamed updateByIndex), (updateByIndex): New method, * NEWS: Updated API changes. 2006-01-11 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (includeBaseInRange): New flag, (BarRenderer): Initialise new flag, (getIncludeBaseInRange): New accessor method, (setIncludeBaseInRange): Likewise, (calculateBarL0L1): Simplified code to fix bug 1401856, (findRangeBounds): New override method, * source/org/jfree/chart/plot/CategoryPlot.java (rendererChanged): Call configureRangeAxes(), because the renderer can affect the axis range, * source/org/jfree/data/Range.java (combine): Reformatted, (expandToInclude): New method, (expand): Reformatted, (shift): Likewise, (shiftWithNoZeroCrossing): Added API docs. * source/org/jfree/chart/axis/junit/NumberAxisTests.java (testAutoRange2): Fixed failing test, (testAutoRange3): Likewise, * NEWS: Added recent updates. 2006-01-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/servlet/ServletUtilities.java: Updated API docs and reformatted source code. 2006-01-09 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (drawLabels): Changed code that checks ignoreNullValues and ignoreZeroValues flags, (getLegendItems): Increment section count even when section is ignored. Fixes bug 1400442. 2005-12-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/SpiderWebPlot.java (SpiderWebPlot(CategoryDataset)): Delegate to another constructor, (SpiderWebPlot(CategoryDataset, TableOrder)): Copied code from previous constructor, (getPlotType): Updated description, (setInteriorGap): Reformatted, (draw): Likewise, (drawRadarPoly): Likewise, (drawLabel): Likewise. 2005-12-20 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/RingPlot.java (drawItem): fix entity shape (bug 1386328). 2005-12-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeriesCollection.java (domainIsPointsInTime): Deprecated, no longer required, (getDomainIsPointsInTime): Likewise, (setDomainIsPointsInTime): Likewise, (getSeries): Reformatted, (removeAllSeries): Likewise, (getX): Likewise, (getStartX): Likewise, (getEndX): Likewise, (getDomainBounds): Don't use domainIsPointsInTime. 2005-12-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/StandardXYZItemLabelGenerator.java: New class, * source/org/jfree/chart/labels/XYZItemLabelGenerator.java: New interface, * source/org/jfree/chart/renderer/AbstractRenderer.java: Reformatting, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java: Likewise, * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (XYBubbleRenderer(int)): Check argument, (getScaleType): API docs, (drawItem): Added code to draw item labels, (getLegendItem): Reformatted. 2005-12-13 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/TextTitle.java (TextTitle(String)): Reformatted, (TextTitle(String, Font)): Reformatted, (arrange): Reformatted, (arrangeRR): Account for rotated title in left or right positions, fixes bug 1379331, (hashCode): Reformatted. 2005-12-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java: Reformatted. 2005-12-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java (attributedLabel): Made transient, (writeObject): Write out attributedLabel, (readObject): Read in attributedLabel, * source/org/jfree/chart/junit/LegendItemTests.java (testSerialization2): New test, * NEWS: Noted bug fix. 2005-12-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Quarter.java (Quarter(int, Year)): Fix bug (1377239) in argument checking, * source/org/jfree/data/time/junit/QuarterTests.java (testConstructor): New test, * NEWS: Noted bug fix. 2005-12-06 David Gilbert <david.gilbert@object-refinery.com> * NEWS: New file, * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Changed Color.BLACK to Color.black (fixes bug report 1374222). 2005-12-05 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java: Reformatted. ---------- JFREECHART 1.0.0 RELEASED ------------------------ 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * README.txt: Update for 1.0.0 release, * source/org/jfree/chart/resources/JFreeChartResources.java (CONTENTS): Updated version number. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (chartChanged): Don't update domainZoomable and rangeZoomable. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer.java (drawItem): Access entity collection via convenience method, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYStepAreaRenderer.java (drawItem): Likewise, * source/org/jfree/chart/renderer/xy/XYStepRenderer.java (drawItem): Likewise. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PiePlot.java (drawItem): Access entity collection via convenience method, * source/org/jfree/chart/plot/RingPlot.java (drawItem): Likewise. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/junit/StackedXYAreaRendererTests.java (drawWithNullInfo): New test, * source/org/jfree/chart/renderer/xy/junit/XYAreaRendererTests.java (drawWithNullInfo): New test, * source/org/jfree/chart/renderer/xy/junit/XYAreaRenderer2Tests.java (drawWithNullInfo): New test, * source/org/jfree/chart/renderer/xy/junit/XYStepAreaRendererTests.java (drawWithNullInfo): New test, * source/org/jfree/chart/renderer/xy/junit/XYStepRendererTests.java (drawWithNullInfo): New test. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StatisticalBarRenderer.java: Reformatting, * source/org/jfree/chart/renderer/category/StatisticalLineAndShaperenderer.java (drawItem): Fixed null pointer exception, * source/org/jfree/chart/renderer/category/junit/StatisticalBarRendererTests.java (testDrawWithNullInfo): New test, * source/org/jfree/chart/renderer/category/junit/StatisticalLineAndShapeRenderer.java (testDrawWithNullInfo): New test. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java (drawItem): Fixed null pointer exception. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LevelRenderer.java (drawItem): Fixed null pointer exception, * source/org/jfree/chart/renderer/category/junit/LevelRendererTests.java (testDrawWithNullInfo): New test. 2005-12-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LayeredBarRenderer.java (drawHorizontalItem): Fixed null pointer exception, (drawVerticalItem): Fixed null pointer exception, * source/org/jfree/chart/renderer/category/junit/LayeredBarRendererTests.java (testDrawWithNullInfo): New test. 2005-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java (add(TimeSeriesDataItem)): Delegate to new method, (add(TimeSeriesDataItem, boolean)): New method, (add(RegularTimePeriod, double)): Delegate to new method, (add(RegularTimePeriod, double, boolean)): New method, (add(RegularTimePeriod, Double)): Delegate to new method, (add(RegularTimePeriod, Double, boolean)): New method. 2005-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/IntervalBarRenderer.java (drawItem): Call getEntityCollection directly on 'state', * source/org/jfree/chart/renderer/category/junit/IntervalBarRendererTests.java (testDrawWithNullInfo): New test. 2005-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/GroupedStackedBarRenderer.java (drawItem): Call getEntityCollection directly on 'state', * source/org/jfree/chart/renderer/category/junit/BoxAndWhiskerRendererTests.java (testDrawWithNullInfo): Construct chart properly, * source/org/jfree/chart/renderer/category/junit/GroupedStackedBarRendererTests.java (testDrawWithNullInfo): New test, * source/org/jfree/data/statistics/BoxAndWhiskerItem.java (getOutliers): Check for null list. 2005-12-01 David Gilbert <david.gilbert@object-refinery.com> * gjdoc/run-gjdoc: Updated version number, * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (drawHorizontalItem): Fixed null pointer exception, (drawVerticalItem): Likewise, * source/org/jfree/chart/renderer/category/junit/BoxAndWhiskerRendererTests.java (testDrawWithNullInfo): New test. 2005-12-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Use drawBarOutline flag for legend graphic, * source/org/jfree/chart/renderer/category/GanttRenderer.java (drawTasks): Check drawBarOutline flag, (drawTask): Likewise. 2005-12-01 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml (initialise): Updated version number, * gjdoc/run-gjdoc: Updated package list, * source/org/jfree/chart/junit/GanttChartTests.java (testDrawWithNullInfo): Reformatted, (testDrawWithNullInfo2): New test, * source/org/jfree/chart/renderer/category/GanttRenderer.java (drawTasks): Fix NullPointerException, (drawTask): Likewise. 2005-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYItemRenderer.java (getLegendItemLabelGenerator): Added method to interface, (setLegendItemLabelGenerator): Likewise. 2005-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/labels/StandardPieSectionLabelGenerator.java (getAttributedLabel): Change argument name to 'section', (setAttributedLabel): Likewise. 2005-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createSignalChart): Removed, * source/org/jfree/chart/renderer/xy/SignalRenderer.java: Removed, * source/org/jfree/chart/renderer/xy/junit/SignalRendererTests.java: Removed, * source/org/jfree/data/general/SubSeriesDataset.java (getType): Removed, (getLevel): Removed, * source/org/jfree/data/xy/SignalsDataset.java: Removed. 2005-11-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartRenderingInfo.java (plotArea): Removed, (ChartRenderingInfo(EntityCollection)): Updated for removed field, (getPlotArea): Removed, (setPlotArea): Removed, (clear): Updated for removed field, (equals): Likewise, (writeObject): Likewise, (readObject): Likewise, * source/org/jfree/chart/junit/ChartRenderingInfoTests.java (testEquals): Updated for removed field, (testSerialization): Likewise. 2005-11-28 David Gilbert <david.gilbert@object-refinery.com> * README.txt: Updated for 1.0.0-rc3 release, * ant/build.xml: Copy across Maven file. 2005-11-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/editor/ChartEditorFactory.java: New file, * source/org/jfree/chart/editor/ChartEditorManager.java (factory): New field, (getChartEditorFactory): New method, (setChartEditorFactory): New method, (getChartEditor): Updated to use factory. 2005-11-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java (maximumItemAge): Changed type from int to long, (TimeSeries(String, String, String, Class)): Change initialisation of maximumItemAge field, (getMaximumItemAge): Changed return type to long, (setMaximumItemAge): Changed argument type to long. 2005-11-28 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LegendItem.java: (LegendItem(String, AttributedString, String, String, String, Shape, Paint)): Removed AttributedString argument, (LegendItem(String, AttributedString, String, String, String, Shape, Paint, Stroke, Paint)): Likewise, (LegendItem(String, AttributedString, String, String, String, Shape, Stroke, Paint)): Likewise, (LegendItem(String, AttributedString, String, String, String, boolean, Shape, boolean, Paint, boolean, Paint, Stroke, boolean, Shape, Stroke, Paint)): Likewise, (LegendItem(AttributedString, String, String, String, Shape, Paint)): New constructor, (LegendItem(AttributedString, String, String, String, Shape, Paint, Stroke, Paint)): Likewise, (LegendItem(AttributedString, String, String, String, Shape, Stroke, Paint)): Likewise, (LegendItem(AttributedString, String, String, String, boolean, Shape, boolean, Paint, boolean, Paint, Stroke, boolean, Shape, Stroke, Paint)): Likewise, (characterIteratorToString): New method, * source/org/jfree/chart/junit/LegendItemCollectionTests.java (testEquals): Updated for change to LegendItem constructor, (testSerialization): Likewise, (testCloning): Likewise, * source/org/jfree/chart/junit/LegendItemTests.java (testEquals): Updated for change to LegendItem constructor, (testSerialization): Likewise, (testCloning): Likewise, * source/org/jfree/chart/plot/MeterPlot.java (getLegendItems): Update for change to LegendItem constructor, * source/org/jfree/chart/plot/MultiplePiePlot.java (getLegendItems): Likewise, * source/org/jfree/chart/plot/PiePlot.java (getLegendItems): Likewise, * source/org/jfree/chart/plot/SpiderWebPlot.java (getLegendItems): Likewise, * source/org/jfree/chart/renderer/DefaultPolarItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/WaferMapRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/AreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/BarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/BoxAndWhiskerRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/category/LineAndShapeRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/AbstractXYItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/StandardXYItemRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYAreaRenderer2.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYBubbleRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java (getLegendItem): Likewise, * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (getLegendItem): Likewise. 2005-11-28 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml (initialise): Update JFreeChart version number, (compile): Copy over property files in org.jfree.chart.editor, * source/org/jfree/chart/resources/JFreeChartResources.java (CONTENTS): Updated JFreeChart version number. 2005-11-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartMouseListener.java: Now extends EventListener, * source/org/jfree/chart/ChartPanel.java (chartMouseListeners): Use EventListenerList, (ChartPanel(JFreeChart, int, int, int, int, int, int, boolean, boolean, boolean, boolean, boolean, boolean)): Initialise chartMouseListeners, (mouseClicked): Use EventListenerList, (mouseMoved): Likewise, (addChartMouseListener): Likewise, (removeChartMouseListener): Likewise, (getListeners): New override, * source/org/jfree/chart/junit/ChartPanelTests.java: (testGetListeners): New test, (chartMouseClicked): New method, (chartMouseMoved): New method. 2005-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (attemptEditChartProperties): Use ChartEditorManager to get ChartEditor, * source/org/jfree/chart/axis/ColorBar.java: Update imports for moved classes, * source/org/jfree/chart/axis/junit/ColorBarTests.java: Likewise, * source/org/jfree/chart/editor/ChartEditor.java: New file, * source/org/jfree/chart/editor/ChartEditorManager.java: New file, * source/org/jfree/chart/editor/DefaultAxisEditor.java: New file, * source/org/jfree/chart/editor/DefaultChartEditor.java: New file, * source/org/jfree/chart/editor/DefaultColorBarEditor.java: New file, * source/org/jfree/chart/editor/DefaultNumberAxisEditor.java: New file, * source/org/jfree/chart/editor/DefaultPlotEditor.java: New file, * source/org/jfree/chart/editor/DefaultTitleEditor.java: New file, * source/org/jfree/chart/editor/PaletteChooserPanel.java: New file, * source/org/jfree/chart/editor/PaletteSample.java: New file, * source/org/jfree/chart/editor/LocalizationBundle_de.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_es.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_fr.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_nl.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_pl.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_pt_PT.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_ru.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle_zh_CN.properties: Moved, * source/org/jfree/chart/editor/LocalizationBundle.properties: Moved, * source/org/jfree/chart/editor/package.html: New file, * source/org/jfree/chart/junit/JFreeChartTestSuite.java: (suite): Removed ChartUIPackageTests, * source/org/jfree/chart/plot/ColorPalette.java: Moved, * source/org/jfree/chart/plot/GreyPalette.java: Moved, * source/org/jfree/chart/plot/RainbowPalette.java: Moved, * source/org/jfree/chart/plot/junit/ColorPaletteTests.java: Moved, * source/org/jfree/chart/plot/junit/PlotPackageTests.java (suite): Added ColorPaletteTests, * source/org/jfree/chart/ui/*: Removed package, most classes moved to org.jfree.chart.editor and renamed, * source/org/jfree/chart/ui/junit/*: Removed package. 2005-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/encoders/KeypointPNGEncoderAdapter.java: Updated API docs. 2005-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartFactory.java (createHistogram): Set autoRangeIncludesZero to false on domain axis. 2005-11-24 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: Updated version numbers. 2005-11-24 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/DefaultOldLegend.java: Removed, * source/org/jfree/chart/JFreeChart.java (oldLegend): Removed, (getOldLegend): Removed, (setOldLegend): Removed, (draw(Graphics2D, Rectangle2D, Point2D, ChartRenderingInfo)): Removed old legend drawing code, (legendChanged): Removed, (equals): Removed old legend check, (readObject): Removed code to add listener to old legend, (clone): Removed code to clone old legend, * source/org/jfree/chart/OldLegend.java: Removed, * source/org/jfree/chart/event/LegendChangeEvent.java: Removed, * source/org/jfree/chart/event/LegendChangeListener.java: Removed, * source/org/jfree/chart/junit/JFreeChartTests.java (testEquals): Removed old legend check, * source/org/jfree/chart/ui/ChartPropertyEditPanel.java (legendPropertiesPanel): Removed, (ChartPropertyEditPanel(JFreeChart)): Removed old legend setup, (getLegendPropertyEditPanel): Removed, (updateChartProperties): Removed old legend update, * source/org/jfree/chart/ui/LegendPropertyEditPanel.java: Removed. 2005-11-23 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (JFreeChartInfo): Added Pady Srinivasan to contributors, * source/org/jfree/chart/axis/CategoryAxis.java: Added Pady Srinivasan as Contributor. 2005-11-23 David Gilbert <david.gilbert@object-refinery.com> These changes are based on patch 1217634 by Pady Srinivasan (with significant modifications). * source/org/jfree/chart/axis/CategoryAxis.java (tickLabelFontMap): New field, (tickLabelPaintMap): New field, (CategoryAxis(String)): Initialise new fields, (getTickLabelFont(Comparable)): New method, (setTickLabelFont(Comparable, Font)): New method, (getTickLabelPaint(Comparable)): New method, (setTickLabelPaint(Comparable, Paint)): New method, (getCategoryLabelToolTip): New method, (drawCategoryLabels): Use new methods to get label font and paint, and also tooltip, (refreshTicks): Reformatted, (createLabel): Use new methods to get label font and paint, (clone): Handle new fields, (equals): Likewise, (readObject): Likewise, (writeObject): Likewise, (readPaintMap): New method, (writePaintMap): New method, (equalPaintMaps): New method, * source/org/jfree/chart/axis/junit/CategoryAxisTests.java (testEquals): Add tests for new fields, (testCloning2): New test, (testSerialization): Strengthened test. 2005-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/LocalisationBundle_de.properties: Minor correction (see patch 1315259), * source/org/jfree/chart/ui/LocalisationBundle_de.properties: Corrections and additions (see patch 1315258). 2005-11-22 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/HistogramDataset.java (getSeriesKey): Cast return value to Comparable. 2005-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/LayeredBarRenderer.java (calculateBarWidth): Remove itemMargin from calculation, (drawItem): Reformatted, (drawHorizontalItem): Added support for GradientPaint, (drawVerticalItem): Likewise. 2005-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYLineAndShapeRenderer.java (setDrawSeriesLineAsPath): Send RendererChangeEvent if flag changes. 2005-11-21 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/function/NormalDistributionFunction2D.java (getMean): New method, (getStandardDeviation): New method, (getValue): Reformatted. 2005-11-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/TimeSeries.java (historyCount): Renamed maximumItemAge, (TimeSeries(String, String, String, Class)): Update for renamed field, (getMaximumItemCount): API doc update, (setMaximumItemCount): Added argument check, and remove surplus items in a way that fires a SeriesChangeEvent, (getHistoryCount): Renamed getMaximumItemAge(), (setHistoryCount): Renamed setMaximumItemAge() and reimplemented, (add(TimeSeriesDataItem)): Update for refactored method, (addOrUpdate(RegularTimePeriod, Number)): Likewise, (ageHistoryCountItems): Renamed removeAgedItems and amended to generate change notification if requested, (ageHistoryCountItems(long)): Likewise, (equals): Updates for renamed method, (hashCode): Likewise. * source/org/jfree/data/time/junit/TimeSeriesTests.java (testEquals): Updated for renamed field. 2005-11-17 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java (minValue): Removed, (maxValue): Removed, (isDrawLines): Updated API docs, (setDrawLines): Send RendererChangeEvent, (getGroupPaint): Updated API docs, (setGroupPaint): Check for null argument, send change event, (setGroupStroke): Likewise, (getObjectIcon): Updated API docs, (setObjectIcon): Check for null argument, send change event, (getMaxIcon): Updated API docs, (setMaxIcon): Check for null argument, send change event, (getMinIcon): Updated API docs, (setMinIcon): Check for null argument, send change event, (drawItem): Refactored (for removed fields). 2005-11-16 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/statistics/HistogramDataset.java (addSeries): Handle case where data value is smaller than the lower bound of the bin range. 2005-11-15 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/MinMaxCategoryRenderer.java: Reformatted and reordered methods. 2005-11-10 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/MeterPlot.java (tickSize): New field, (tickPaint): New field, (tickLabelPaint): New field, (MeterPlot(ValueDataset)): Initialise new fields, (getTickSize): New method, (setTickSize): New method, (getTickPaint): New method, (setTickPaint): New method, (getTickLabelPaint): New method, (setTickLabelPaint): New method, (getLegendItems): Use background color for each interval, (draw): Call new drawValueLabel() method, (drawArcForInterval): Updated for refactored methods, (fillArc): Changed from private to protected, (drawTicks): Make use of new tickSize field, (drawTick(Graphics2D, Rectangle2D, double)): Updated for refactored methods, (drawTick(Graphics2D, Rectangle2D, double, boolean, Paint, boolean, String)): Removed special case code for drawing the value label, and the now redundant parameters, replaced with drawValueLabel(), (drawValueLabel): New method, (equals): Updated for new fields. 2005-11-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartColor.java (createDefaultPaintArray): removed orange color, fix for bug 1328408). 2005-11-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/time/Month.java (Month(int, Year)): changed '&&' to '||' in argument check, fixes bug 1345383. 2005-11-02 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartRenderingInfo.java (equals): updated to include plotArea and plotInfo, * source/org/jfree/chart/junit/ChartRenderingInfoTests.java (testEquals): expanded to test all fields, (testSerialization): changed initialisation of object to be serialized, (testSerialization2): new test, * source/org/jfree/chart/plot/PlotRenderingInfo.java (owner): removed transient keyword. 2005-11-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/ImageTitle.java (height): removed field, (width): removed field, (ImageTitle(Image, int, int, RectangleEdge, HorizontalAlignment, VerticalAlignment, RectangleInsets)): set width and height for block, (drawHorizontal): use block width and height, (drawVertical): use block width and height, * source/org/jfree/chart/title/junit/ImageTitleTests.java (testWidthAndHeight): new method. 2005-11-01 David Gilbert <david.gilbert@object-refinery.com> * ant/build.xml: exclude SunJPEGEncoderAdapter.java from the build if ImageIO is not present, * source/org/jfree/chart/encoders/ImageEncoderFactory.java (init): only add 'jpeg' encoder if JFreeChart was compiled, and is being run, with JDK 1.4 or later, * source/org/jfree/chart/encoders/SunJPEGEncoderAdapter.java (encode): use ImageIO, not com.sun.* classes. 2005-11-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/HighLowRenderer.java (openTickPaint): new field, (closeTickPaint): new field, (getOpenTickPaint): new method, (setOpenTickPaint): new method, (getCloseTickPaint): new method, (setCloseTickPaint): new method, (drawItem): use openTickPaint and closeTickPaint if non-null, (equals): implemented, (readObject): new method to support serialization, (writeObject): new method to support serialization, * source/org/jfree/chart/renderer/xy/junit/HighLowRendererTests.java (testEquals): add checks for all fields, (testCloning): updated for new fields, (testSerialization): updated for new fields. 2005-11-01 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/HighLow.java: Removed unused class. 2005-10-27 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/general/junit/DatasetUtilities.java (testIterateXYRangeBounds2): added API doc comment. 2005-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/category/DefaultIntervalCategoryDataset.java (getCategory): removed, (getItem): removed, (getSeries(Object)): changed signature to accept Comparable, (getSeries(int): removed, (getValue(Comparable, Comparable)): call getColumnIndex() instead of getItem(), (getStartValue(Comparable, Comparable)): likewise, (getEndValue(Comparable, Comparable)): likewise, (setStartValue(int, Object, Number)): changed signature to (int, Comparable, Number), (setEndValue(int, Object, Number)): likewise, (getCategoryIndex(Object)): changed signature to (Comparable), (getColumnKey(int)): changed argument name, (getRowKey(int)): likewise. 2005-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/resources/JFreeChartResources.java (CONTENTS): updated 'project.version'. 2005-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/Marker.java (Marker(Paint, Stroke, Paint, Stroke, float)): changed from public to protected. 2005-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/plot/PolarPlot.java: now implements Zoomable interface, (PolarPlot(XYDataset, ValueAxis, PolarItemRenderer)): reformatted, (addCornerTextItem): check for null argument, generate PlotChangeEvent, (removeCornerTextItem): generate PlotChangeEvent if necessary, (clearCornerTextItem): renamed clearCornerTextItems(), and generates PlotChangeEvent if necessary, (setAngleLabelsVisible): only send PlotChangeEvent if flag changes, (drawCornerTextItems): changed from public to protected, (render): likewise, (zoomDomainAxes(double, double, double)): changed signature and now implementation does nothing, (zoomDomainAxes(double, double, double, double)): likewise, (zoomRangeAxes(double, double, double)): changed signature to match Zoomable interface, (zoomRangeAxes(double, double, double, double)): likewise, (isDomainZoomable): now returns false, (getOrientation): new method, * source/org/jfree/chart/renderer/PolarItemRenderer.java (drawRadialGridLines): removed commented out code. 2005-10-25 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/axis/TickUnits.java (getCeilingTickUnit): don't pass null to other method. 2005-10-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBarRenderer.java (drawItem): fixed bar coordinates to work with inverted axes. 2005-10-14 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/ChartPanel.java (chartChanged): update plot orientation, it may have changed. 2005-10-07 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/title/TextTitle.java (textAlignment): new field, (TextTitle): initialise new field, (getTextAlignment): new method, (setTextAlignment): new method, (equals): include textAlignment in test, * source/org/jfree/chart/title/junit/TextTitleTests.java (testEquals): updated to include textAlignment. 2005-10-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/XYBoxAndWhiskerRenderer.java (drawItem): removed setPaint() call. 2005-10-06 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/data/junit/DefaultKeyedValues2DTests.java (testEquals): New method, * source/org/jfree/data/xy/CategoryTableXYDataset.java (CategoryTableXYDataset): register interval delegate as a listener, (add(Number, Number, String, boolean)): remove call to itemAdded, (remove(Number, String, boolean)): remove call to itemRemoved, (getDomainBounds): only pass to delegate if the interval is included, (setIntervalWidth): update for renamed method, (equals): implemented, * source/org/jfree/data/xy/DefaultTableXYDataset.java (DefaultTableXYDataset(boolean)): register interval delegate as a listener, (removeAllSeries): remove class to seriesRemoved, (removeSeries(XYSeries)): likewise, (removeSeries(int)): likewise, (removeAllValuesForX): likewise, (getDomainBounds): only pass to delegate if the interval is included, (setIntervalWidth): update for renamed method, * source/org/jfree/data/xy/IntervalXYDelegate.java: now implements DatasetChangeListener, (intervalWidth): renamed fixedIntervalWidth, (lowerBound): removed, (upperBound): removed, (IntervalXYDelegate(XYDataset, boolean)): added check for null dataset, updated for renamed field, (setAutoWidth): if true, recalculate interval width, (getFixedIntervalWidth): new method, (setIntervalWidth): renamed setFixedIntervalWidth(), now sets autoWidth to false, (getIntervalWidth): updated for renamed field, (getEndXValue): new method, (getDomainBounds): reimplemented, (datasetChanged): new method, recalculates auto interval width, (itemAdded): removed, (itemRemoved): removed, (recalculateIntervalWidth): new implementation, renamed recalculateInterval(), (calculateSeries): renamed calculateIntervalForSeries(), new implementation, (seriesAdded): removed, (seriesRemoved): removed, (equals): updated for renamed field, * source/org/jfree/data/xy/XYSeriesCollection.java (XYSeriesCollection(XYSeries)): register interval delegate as a listener, (addSeries): removed call to seriesAdded(), (removeSeries(int)): removed call to seriesRemoved(), (removeSeries(XYSeries)): likewise, (removeAllSeries): likewise, (getDomainBounds): only pass to delegate if the interval is included, (setIntervalWidth): updated for renamed method, * source/org/jfree/data/xy/junit/CategoryTableXYDatasetTests.java: new tests, * source/org/jfree/data/xy/junit/DataXYPackageTests.java (suite): added CategoryTableXYDatsaetTests.class), * source/org/jfree/data/xy/junit/DefaultTableXYDatasetTests.java (testAddSeries): new test method, * source/org/jfree/data/xy/junit/IntervalXYDelegateTests.java (testEquals): updated for method name change. 2005-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/xy/StackedXYAreaRenderer2.java (drawItem): add an entity to the collection if supplied. 2005-10-03 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/JFreeChart.java (drawTitle): check for positive area width and height, otherwise return null (fixes bug 1306022). 2005-09-30 David Gilbert <david.gilbert@object-refinery.com> * source/org/jfree/chart/renderer/category/StackedBarRenderer.java (drawItem): use item outline stroke, not regular stroke. For changes prior to 30-Sep-2005, please refer to the file CHANGELOG.txt.