@@ -41,35 +41,34 @@ class _MyHomePageState extends State<_MyHomePage> {
41
41
@override
42
42
Widget build (BuildContext context) {
43
43
return Scaffold (
44
- appBar: AppBar (),
45
- body: SfCartesianChart (
46
- primaryXAxis: CategoryAxis (),
47
- series: < ChartSeries <_ChartData , String >> [
48
- ColumnSeries <_ChartData , String >(
49
- dataSource: _chartData,
50
- onCreateRenderer: (ChartSeries <_ChartData , String > series) {
51
- return _CustomColumnSeriesRenderer ();
52
- },
53
- xValueMapper: (_ChartData data, _) => data.year,
54
- yValueMapper: (_ChartData data, _) => data.sales,
55
- )
56
- ]));
44
+ appBar: AppBar (),
45
+ body: SfCartesianChart (
46
+ primaryXAxis: const CategoryAxis (),
47
+ series: < CartesianSeries <_ChartData , String >> [
48
+ ColumnSeries <_ChartData , String >(
49
+ dataSource: _chartData,
50
+ onCreateRenderer: (ChartSeries <_ChartData , String > series) {
51
+ return _CustomColumnSeriesRenderer ();
52
+ },
53
+ xValueMapper: (_ChartData data, _) => data.year,
54
+ yValueMapper: (_ChartData data, _) => data.sales,
55
+ ),
56
+ ],
57
+ ),
58
+ );
57
59
}
58
60
}
59
61
60
- class _CustomColumnSeriesRenderer extends ColumnSeriesRenderer {
62
+ class _CustomColumnSeriesRenderer < T , D > extends ColumnSeriesRenderer < T , D > {
61
63
_CustomColumnSeriesRenderer ();
62
64
63
65
@override
64
- ChartSegment createSegment () {
65
- return _ColumnCustomPainter ();
66
+ ColumnSegment < T , D > createSegment () {
67
+ return _ColumnCustomPainter < T , D > ();
66
68
}
67
69
}
68
70
69
- class _ColumnCustomPainter extends ColumnSegment {
70
- @override
71
- int get currentSegmentIndex => super .currentSegmentIndex! ;
72
-
71
+ class _ColumnCustomPainter <T , D > extends ColumnSegment <T , D > {
73
72
@override
74
73
void onPaint (Canvas canvas) {
75
74
// List to hold the number of column data point's gradient
@@ -88,17 +87,20 @@ class _ColumnCustomPainter extends ColumnSegment {
88
87
stops: < double > [0.2 , 0.9 ]),
89
88
const LinearGradient (
90
89
colors: < Color > [Colors .blue, Colors .cyanAccent],
91
- stops: < double > [0.2 , 0.9 ])
90
+ stops: < double > [0.2 , 0.9 ]),
92
91
];
93
92
// Set the gradient to the fillPaint using createShader method of the gradient.
94
- fillPaint! .shader =
95
- gradientList[currentSegmentIndex].createShader (segmentRect.outerRect);
93
+ fillPaint.shader =
94
+ gradientList[currentSegmentIndex].createShader (segmentRect! .outerRect);
96
95
super .onPaint (canvas);
97
96
}
98
97
}
99
98
100
99
class _ChartData {
101
- _ChartData (this .year, this .sales);
100
+ _ChartData (
101
+ this .year,
102
+ this .sales,
103
+ );
102
104
103
105
final String year;
104
106
final double sales;
0 commit comments