Commit Graph

232 Commits

Author SHA1 Message Date
ask
932b2a5392 TAChart: Improve color handling for individual data points.
git-svn-id: trunk@20153 -
2009-05-24 02:35:11 +00:00
ask
e93779cdaa TAChart: Move clTAColor to TAChartUtils. Fix error message.
git-svn-id: trunk@20151 -
2009-05-24 01:38:30 +00:00
ask
1421f1836b TAChart: Fix bugs in processing of empty extents.
git-svn-id: trunk@20137 -
2009-05-23 04:13:01 +00:00
ask
d8bc38d03f TAChart: Improve Extent processing for series.
* Move Extent calculation and caching to TListChartSource class.
* Replace TChartSeries.{X/Y}Graph{Min/Max} by Extent property.
* Various fixes related to extent cache coherence.

git-svn-id: trunk@20136 -
2009-05-23 04:01:13 +00:00
ask
5210783530 TAChart: Make TListChartSource a component.
* Move TChart and TListChartSource to a separate component page
* Initial crude implementation of design-time data point editing

git-svn-id: trunk@20135 -
2009-05-22 23:36:57 +00:00
ask
1b34be4add TAChart: Simplify and fix TLineSeries.Set{X/Y}Value
git-svn-id: trunk@20117 -
2009-05-22 05:29:02 +00:00
ask
8a09a8257c TAChart: Move ValuesTotal logic from TChartSeries to TListChartSource
git-svn-id: trunk@20114 -
2009-05-22 03:52:53 +00:00
ask
b7c121c677 TAChart: Extract former CoordList into TCustomChartSource class in TASource unit.
git-svn-id: trunk@20112 -
2009-05-22 01:46:43 +00:00
ask
69156f088b TAChart: Set correct brushes for TLine and TAreaSeries.
git-svn-id: trunk@20097 -
2009-05-21 08:51:31 +00:00
ask
ff15f8408c TAChart: Add TLine.UseBounds property. Minor refactoring.
git-svn-id: trunk@20090 -
2009-05-21 07:48:50 +00:00
ask
2ca478248b TAChart: Fix TLine bounds. Part of issue #13681
git-svn-id: trunk@19923 -
2009-05-11 09:04:23 +00:00
ask
5f1f1c8897 TAChart: Extract UpdateMinMax procedure.
git-svn-id: trunk@19922 -
2009-05-11 08:54:27 +00:00
ask
c9bf967a8d TAChart: Implement 3D look for line series. Update demo.
git-svn-id: trunk@19755 -
2009-05-02 02:34:36 +00:00
ask
7277e0b12c TAChart: 3D look for bar series.
* Add Series.Depth property
* Publish and impement it in TBarSeries
* Update demo

git-svn-id: trunk@19628 -
2009-04-26 07:11:58 +00:00
ask
4b83c209c8 TAChart: Add TBarSeries.AdjustBarWidth property.
git-svn-id: trunk@19611 -
2009-04-24 14:36:16 +00:00
ask
3db771a856 TAChart: Starting 3-D look implementation.
* Introduce TChartZPosition type.
* Add Depth property.
* Fix ZPosition for function series.

git-svn-id: trunk@19609 -
2009-04-24 14:04:12 +00:00
ask
622ce0f331 TAChart: Fix calculation of right boundary while drawing function series.
git-svn-id: trunk@19608 -
2009-04-24 12:21:52 +00:00
ask
6941ef0833 TAChart: More extent improvements.
* Use FCurrentExtent instead of F{X/Y}Graph{Min/Max}.
* Carefully check for various combinations of Chart.Extent and series bounds.

git-svn-id: trunk@19606 -
2009-04-24 11:45:32 +00:00
ask
56cc734a27 TAChart: Add DoubleRect utility function, EChartError base exception class.
git-svn-id: trunk@19603 -
2009-04-24 11:32:33 +00:00
ask
23f9d1f9c4 TAChart: Improve extent processing.
* Replace {X/Y}Graph{Max/Min} and AutoUpdate{X/Y}{Max/Min} properties with Extent class.
 * Use +/-Infinity instead of custom MinDouble/MaxDouble constants
 * Simplify UpdateExtent procedure

git-svn-id: trunk@19597 -
2009-04-24 07:24:04 +00:00
ask
1f8f8a9909 TAChart: Convert [X/Y]ImageToGraph to functions
git-svn-id: trunk@19543 -
2009-04-21 08:39:29 +00:00
ask
64c6432237 TAChart: Convert {X/Y}GraphToImage to functions
git-svn-id: trunk@19542 -
2009-04-21 08:27:50 +00:00
ask
45d428b6e3 TAChart: Add Series.ZPosition property
git-svn-id: trunk@19541 -
2009-04-21 08:15:21 +00:00
ask
2117d39cf8 TAChart: add default values to published properties, minor cleanups.
git-svn-id: trunk@19540 -
2009-04-21 05:49:44 +00:00
ask
1184f95530 TAChart: Silence 'parameter is unused' hint. Fix unitialized variable.
git-svn-id: trunk@19324 -
2009-04-10 21:25:57 +00:00
ask
51f0ad8fc8 TAChart: Introduce TFuncSeries.Step to control drawing granularity.
git-svn-id: trunk@19298 -
2009-04-10 09:33:06 +00:00
ask
5c796207d7 TAChart: Rename Auto{X/Y}{Max/Min} to Use{X/Y}{Max/Min} and make it work.
git-svn-id: trunk@19297 -
2009-04-10 08:42:18 +00:00
ask
129b0cefb5 TAChart: Remove TChartSeries.InitBounds method. Various cleanups.
git-svn-id: trunk@19190 -
2009-04-01 20:01:33 +00:00
ask
6902bc22e9 TAChart: Rewrite calculation of title, axis and chart positions.
* Replace (X/Y)Image(Min/Max) variables with a single ClipRect property
* Simplify code by calculating positions directly before drawing chart elements
* Fix various minor bugs and inconsistencies, like the one in issue #13433
* Move DrawAxis, DrawTitleFoot and Refresh methods to protected,
  since they are useless directly
* Add DrawLineHoriz and DrawLineVert helpers

git-svn-id: trunk@19189 -
2009-04-01 19:03:20 +00:00
ask
53478c37f8 TAChart: Initial implementation of function series
git-svn-id: trunk@19169 -
2009-03-31 06:48:48 +00:00
ask
834c9f9146 TAChart: Move ShowInLegend property into TBasicChartSeries class.
Rearrange some declarations alphabetically.

git-svn-id: trunk@19166 -
2009-03-31 05:31:25 +00:00
ask
9d35d8873d TAChart: Add few more pointer styles. Fix warning.
git-svn-id: trunk@19163 -
2009-03-31 03:43:52 +00:00
ask
fea9d0eef9 TAChart: Simplified variant of TSeries.AddXY
git-svn-id: trunk@19137 -
2009-03-27 23:06:04 +00:00
ask
ce8f80bc53 TAChart: Move Active property to TBasicChartSeries class
git-svn-id: trunk@19090 -
2009-03-24 11:19:03 +00:00
ask
fc32749416 TAChart: Renamed TSerie -> TLineSeries because latter is both more logical and Delphi-compatible.
Old name retained as an alias for backwards compatibility.

git-svn-id: trunk@19059 -
2009-03-22 10:17:43 +00:00
ask
c6c378afb6 TAChart: Introduce OnDrawPointer event for line series
git-svn-id: trunk@19022 -
2009-03-18 10:26:01 +00:00
ask
e349453a72 TAChart: refactor TSeriesPointer.Draw
git-svn-id: trunk@18981 -
2009-03-13 12:51:17 +00:00
ask
ff8f6f5edd TAChart: Moved TSeriesPointer class to TATypes unit and inherited it from TChartElement.
git-svn-id: trunk@18980 -
2009-03-13 11:49:02 +00:00
ask
ba49804ad6 TAChart: Extracted ColorOrDefault function
git-svn-id: trunk@18975 -
2009-03-13 04:28:36 +00:00
ask
49c1f81e65 TAChart: Extracted TBasicPointSeries.DrawLabels method
git-svn-id: trunk@18893 -
2009-03-04 12:58:01 +00:00
ask
3667b3ea5e TAChart: Refactoring: use points instead of separate x and y coordinates
git-svn-id: trunk@18890 -
2009-03-04 08:35:59 +00:00
ask
76e2cc9985 TAChart: Labels drawing for line and area series.
git-svn-id: trunk@18886 -
2009-03-03 19:16:49 +00:00
ask
a99d32c9be TAChart: Add Frame, LabelBrush, LabelFont, LinkPen properties to TChartMarks, use them for drawing. Update demo.
git-svn-id: trunk@18884 -
2009-03-03 18:28:44 +00:00
ask
ddda8edc89 TAChart: add TChartMarks.Distance property.
git-svn-id: trunk@18883 -
2009-03-03 16:42:27 +00:00
ask
6e5def3ad7 TAChart: Group series mark parameters into TChartMarks class. Update demo.
git-svn-id: trunk@18882 -
2009-03-03 16:32:50 +00:00
ask
bc49d5bfb4 TAChart: extracted auxiliary chart elements into a TATypes unit. Fixed style.
git-svn-id: trunk@18880 -
2009-03-03 15:42:24 +00:00
ask
17114c5ab7 TAChart: use margins in bar series. Default scale for bar series now adujsts to display labels.
git-svn-id: trunk@18872 -
2009-03-02 15:23:13 +00:00
ask
0aa059ecff TAChart: display labels on bar series. Initial crude implementation.
git-svn-id: trunk@18859 -
2009-03-01 12:04:40 +00:00
ask
7385883003 TAChart: refactor bar series drawing
git-svn-id: trunk@18851 -
2009-03-01 09:04:48 +00:00
ask
a3580b1459 TAChart: Make marks optional. Allow custom marks formatting.
git-svn-id: trunk@18795 -
2009-02-22 16:06:23 +00:00
ask
4bd8cdc586 TAChart: implement all MarksStyle values for TPieSeries.
Add mark style selection to the demo application.

git-svn-id: trunk@18794 -
2009-02-22 15:10:53 +00:00
ask
61219c304d TAChart: Renamed ChartCoord -> TChartCoord
git-svn-id: trunk@18792 -
2009-02-22 14:41:55 +00:00
paul
f8e23f2d0d tachart: correct asterisks positions
git-svn-id: trunk@18780 -
2009-02-20 15:34:27 +00:00
ask
facc55f1a3 TAChart: Add Alexander Klenin to authors
issue #13214 part 6

git-svn-id: trunk@18778 -
2009-02-20 14:30:06 +00:00
ask
604c32679f TAChart: Refactor TLine series. Add static TLine series to the demo
issue #13214 part 5

git-svn-id: trunk@18777 -
2009-02-20 14:28:08 +00:00
ask
f6a27a57d4 TAChart: clean up, fix and expand published properties, since they are now useful
issue #13214 part 4

git-svn-id: trunk@18776 -
2009-02-20 14:25:24 +00:00
ask
ee315fb844 TAChart series editor: adding, deleting and selection of series
issue #13214 part 3

git-svn-id: trunk@18775 -
2009-02-20 14:22:48 +00:00
ask
7ab4967ab9 TAChart: Prepare series code for design-time editing. Publish Series property.
issue #13214 part 2

git-svn-id: trunk@18774 -
2009-02-20 14:19:05 +00:00
vincents
a945bd4085 TAChart: Remove {$MODE DELPHI} and {$IFDEF fpc}
patch by: Alexander Klenin
part 3 of issue #13201

git-svn-id: trunk@18748 -
2009-02-18 12:20:30 +00:00
vincents
161a59bc94 TAChart: Make TChart.Series an indexed property of proper type
patch by: Alexander Klenin
part 1 of issue #13201

git-svn-id: trunk@18746 -
2009-02-18 12:14:45 +00:00
vincents
4f120b8014 TAChart: Replace some hard-coded colors by user-changeable properties.
patch by: Alexander Klenin
part 2 of issue #13196

git-svn-id: trunk@18730 -
2009-02-17 13:12:59 +00:00
vincents
c42b11a253 TAChart: Rewrite PieSeries.Draw method. Greatly simplify code. Fix multiple issues with scaling.
patch by: Alexander Klenin
part 1 of issue #13196

git-svn-id: trunk@18729 -
2009-02-17 13:07:11 +00:00
vincents
06cd260566 TAChart: fix SeriesColor to work uniformly for all kinds of series
patch by: Alexander Klenin
fixes issue #13184

git-svn-id: trunk@18709 -
2009-02-16 15:43:42 +00:00
vincents
648cca752a TAChart: Extract StyleChanged into parent class
patch by: Alexander Klenin
part 4 of issue #13163

git-svn-id: trunk@18673 -
2009-02-13 20:56:05 +00:00
vincents
0d8393edf7 TAChart: Refactor Reticules. Remove circular dependency TAGraph -> TASeries
patch by: Alexander Klenin
part 2 of issue #13163

git-svn-id: trunk@18671 -
2009-02-13 20:51:16 +00:00
vincents
eb20e8d8cd TAChart: Extract DrawIfActive and AfterAdd procedures. Minor style fixes.
patch by: Alexander Klenin
part 1 of issue #13163

git-svn-id: trunk@18670 -
2009-02-13 20:45:43 +00:00
vincents
9335ffdf78 TAChart: fixed diminishing size of bar charts
patch by: Alexander Klenin
fixes issue (13130)

git-svn-id: trunk@18649 -
2009-02-12 14:51:34 +00:00
vincents
a9c58c425c TAChart: Legend refactoring
patch by: Alexander Klenin
fixes issue (13119)

git-svn-id: trunk@18644 -
2009-02-12 09:57:51 +00:00
darius
488a25bd42 1) Created new unit TAChartUtils, moved some support code into it.
2) Heavily refactored code of CalculateIntervals and TAGraph.DrawAxis procedures -- removed lots of duplicated code, simplifed logic, extracted local procedures etc.
3) Introduced TPenBrushFontRecall helper class.
4) Added 'Axis titles' checkbox to the demo program.

Patch by Alexander Klenin
Resolves: http://bugs.freepascal.org/view.php?id=12758

git-svn-id: trunk@17799 -
2008-12-11 18:57:43 +00:00
darius
0d6bfec764 TChartSeries.AddXY inserts new point into a sorted list, which have O(N^2) computational cost.
This speeds up adding really long series.

Patch from Alexander Klenin
http://bugs.freepascal.org/view.php?id=12642

git-svn-id: trunk@17504 -
2008-11-22 09:44:29 +00:00
darius
897938b8e4 Patch by Alexander Klenin
- Extract duplicated code into TAGraph.LineInViewPort function.
- Heavily rearrange code inside TSerie.Draw and TAreaSeries.Draw procedures to enchance readability, remove code duplication and get rid of 'goto' statement.
- Fix a bug in TAreaSeries.Draw: areas higher then current viewport were not drawn.
- Use ACanvas parameter instead of ParentChart.Canvas in Draw procedures.
- Remove unused variables in TAGraph unit.

Fixes: http://bugs.freepascal.org/view.php?id=12618

git-svn-id: trunk@17399 -
2008-11-15 16:07:01 +00:00
darius
cde07c30e6 Remove TAEngine unit and TSeriesList class
Auto-update chart when one of its series is destroyed

patch by Alexander Klenin 
http://bugs.freepascal.org/view.php?id=12589

git-svn-id: trunk@17289 -
2008-11-08 21:08:01 +00:00
darius
f1f3e50cdb refactoring patch by Alexander Klenin
fixes: http://bugs.freepascal.org/view.php?id=12584

git-svn-id: trunk@17270 -
2008-11-07 21:46:59 +00:00
darius
101d1a7688 applied reformatting patch from Alexander Klenin
http://bugs.freepascal.org/view.php?id=12577

git-svn-id: trunk@17252 -
2008-11-06 18:24:10 +00:00
darius
fdbdc5410b Added two more styles to TSeriesPointerStyle type, useful when there is a need to draw value intervals on a chart
path by Alexander Klenin

git-svn-id: trunk@17240 -
2008-11-05 17:58:25 +00:00
mattias
2996a3c332 rename COPYING.modifiedLGPL to COPYING.modifiedLGPL.txt
git-svn-id: trunk@15834 -
2008-07-22 09:48:15 +00:00
vincents
675e3bee30 TAChart: Code cleanups and bugfixes (bugfixes by Uwe Zimmermann and Oled), bug #10699
git-svn-id: trunk@13877 -
2008-01-25 14:45:02 +00:00
vincents
e1e7e14329 TAChart: Implemented ZoomFull, PaintOnCanvas and slight modifications to add TSerie pen style (by oleg), issue #10679
git-svn-id: trunk@13854 -
2008-01-24 12:00:43 +00:00
vincents
1d52ab2160 tachart: Bugfixes and partially implemented multibar in TBarSeries (bug #9802) from Luis Rodrigues
git-svn-id: trunk@12203 -
2007-09-27 19:44:46 +00:00
vincents
9e0cbc1e29 TAChart: Series clipping bugfixes and partially implement TSeriesPointer from Luis Rodrigues (issue #8706)
git-svn-id: trunk@10959 -
2007-04-17 14:43:02 +00:00
vincents
ebefd69526 TAChart: bug fixes and implemented Series.ShowInLegend from Luis Rodrigues
git-svn-id: trunk@10791 -
2007-03-23 19:38:50 +00:00
vincents
3fc4f456a7 tachart: user lowercase unit filenames
git-svn-id: trunk@10663 -
2007-02-20 11:31:09 +00:00