Skip to content

Commit b389ef4

Browse files
committed
DataSet generic
1 parent 7d81e54 commit b389ef4

23 files changed

+123
-175
lines changed

app/src/main/kotlin/info/appdev/chartexample/CubicLineChartActivity.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,10 +91,10 @@ class CubicLineChartActivity : DemoBase(), OnSeekBarChangeListener {
9191
values.add(EntryFloat(i.toFloat(), `val`))
9292
}
9393

94-
val set1: LineDataSet
94+
val set1: LineDataSet<EntryFloat>
9595

9696
if (binding.chart1.lineData.dataSetCount > 0) {
97-
set1 = binding.chart1.lineData.getDataSetByIndex(0) as LineDataSet
97+
set1 = binding.chart1.lineData.getDataSetByIndex(0) as LineDataSet<EntryFloat>
9898
set1.entries = values
9999
binding.chart1.lineData.notifyDataChanged()
100100
binding.chart1.notifyDataSetChanged()
@@ -115,7 +115,7 @@ class CubicLineChartActivity : DemoBase(), OnSeekBarChangeListener {
115115
set1.fillAlpha = 100
116116
set1.isHorizontalHighlightIndicator = false
117117
set1.fillFormatter = object : IFillFormatter {
118-
override fun getFillLinePosition(dataSet: ILineDataSet?, dataProvider: LineDataProvider): Float {
118+
override fun getFillLinePosition(dataSet: ILineDataSet<*>?, dataProvider: LineDataProvider): Float {
119119
return binding.chart1.axisLeft.axisMinimum
120120
}
121121
}

app/src/main/kotlin/info/appdev/chartexample/DataTools.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ class DataTools {
226226
// set the filled area
227227
lineDataSet01.isDrawFilled = true
228228
lineDataSet01.fillFormatter = object : IFillFormatter {
229-
override fun getFillLinePosition(dataSet: ILineDataSet?, dataProvider: LineDataProvider): Float {
229+
override fun getFillLinePosition(dataSet: ILineDataSet<*>?, dataProvider: LineDataProvider): Float {
230230
return lineChart.axisLeft.axisMinimum
231231
}
232232
}
@@ -239,7 +239,7 @@ class DataTools {
239239
} else {
240240
lineDataSet01.fillColor = Color.BLACK
241241
}
242-
val dataSets = ArrayList<ILineDataSet>()
242+
val dataSets = ArrayList<ILineDataSet<EntryFloat>>()
243243
dataSets.add(lineDataSet01) // add the data sets
244244

245245
// create a data object with the data sets

app/src/main/kotlin/info/appdev/chartexample/DynamicalAddingActivity.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,8 +147,8 @@ class DynamicalAddingActivity : DemoBase(), OnChartValueSelectedListener {
147147
}
148148
}
149149

150-
private fun createSet(): LineDataSet {
151-
val set = LineDataSet(label = "DataSet 1")
150+
private fun createSet(): LineDataSet<EntryFloat> {
151+
val set = LineDataSet<EntryFloat>(label = "DataSet 1")
152152
set.lineWidth = 2.5f
153153
set.circleRadius = 4.5f
154154
set.color = Color.rgb(240, 99, 99)

app/src/main/kotlin/info/appdev/chartexample/FilledLineActivity.kt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,12 @@ class FilledLineActivity : DemoBase() {
8484
valuesArray2.add(EntryFloat(i.toFloat(), valueY))
8585
}
8686

87-
val set1: LineDataSet
88-
val set2: LineDataSet
87+
val set1: LineDataSet<EntryFloat>
88+
val set2: LineDataSet<EntryFloat>
8989

9090
if (binding.chart1.lineData.dataSetCount > 0) {
91-
set1 = binding.chart1.lineData.getDataSetByIndex(0) as LineDataSet
92-
set2 = binding.chart1.lineData.getDataSetByIndex(1) as LineDataSet
91+
set1 = binding.chart1.lineData.getDataSetByIndex(0) as LineDataSet<EntryFloat>
92+
set2 = binding.chart1.lineData.getDataSetByIndex(1) as LineDataSet<EntryFloat>
9393
set1.entries = valuesArray1
9494
set2.entries = valuesArray2
9595
binding.chart1.lineData.notifyDataChanged()
@@ -109,7 +109,7 @@ class FilledLineActivity : DemoBase() {
109109
set1.highLightColor = Color.rgb(244, 117, 117)
110110
set1.isDrawCircleHoleEnabled = false
111111
set1.fillFormatter = object : IFillFormatter {
112-
override fun getFillLinePosition(dataSet: ILineDataSet?, dataProvider: LineDataProvider): Float {
112+
override fun getFillLinePosition(dataSet: ILineDataSet<*>?, dataProvider: LineDataProvider): Float {
113113
// change the return value here to better understand the effect
114114
// return 0;
115115
return binding.chart1.axisLeft.axisMinimum
@@ -129,14 +129,14 @@ class FilledLineActivity : DemoBase() {
129129
set2.isDrawCircleHoleEnabled = false
130130
set2.highLightColor = Color.rgb(244, 117, 117)
131131
set2.fillFormatter = object : IFillFormatter {
132-
override fun getFillLinePosition(dataSet: ILineDataSet?, dataProvider: LineDataProvider): Float {
132+
override fun getFillLinePosition(dataSet: ILineDataSet<*>?, dataProvider: LineDataProvider): Float {
133133
// change the return value here to better understand the effect
134134
// return 600;
135135
return binding.chart1.axisLeft.axisMaximum
136136
}
137137
}
138138

139-
val dataSets = ArrayList<ILineDataSet>()
139+
val dataSets = ArrayList<ILineDataSet<EntryFloat>>()
140140
dataSets.add(set1) // add the data sets
141141
dataSets.add(set2)
142142

app/src/main/kotlin/info/appdev/chartexample/GradientActivity.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ class GradientActivity : DemoBase() {
6262

6363
fillFormatter = object : IFillFormatter {
6464
override fun getFillLinePosition(
65-
dataSet: ILineDataSet?,
65+
dataSet: ILineDataSet<*>?,
6666
dataProvider: LineDataProvider
6767
): Float = binding.chart1.axisLeft.axisMinimum
6868
}

app/src/main/kotlin/info/appdev/chartexample/LineChartActivity.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -181,14 +181,14 @@ class LineChartActivity : DemoBase(), OnSeekBarChangeListener, OnChartValueSelec
181181
}
182182

183183
R.id.actionToggleCircles -> {
184-
binding.chart1.data?.dataSets?.map { it as LineDataSet }?.forEach { set ->
184+
binding.chart1.data?.dataSets?.map { it as LineDataSet<*> }?.forEach { set ->
185185
set.isDrawCircles = !set.isDrawCircles
186186
}
187187
binding.chart1.invalidate()
188188
}
189189

190190
R.id.actionToggleCubic -> {
191-
binding.chart1.data?.dataSets?.map { it as LineDataSet }?.forEach { set ->
191+
binding.chart1.data?.dataSets?.map { it as LineDataSet<*> }?.forEach { set ->
192192
set.lineMode = if (set.lineMode == LineDataSet.Mode.CUBIC_BEZIER)
193193
LineDataSet.Mode.LINEAR
194194
else
@@ -198,7 +198,7 @@ class LineChartActivity : DemoBase(), OnSeekBarChangeListener, OnChartValueSelec
198198
}
199199

200200
R.id.actionToggleStepped -> {
201-
binding.chart1.data?.dataSets?.map { it as LineDataSet }?.forEach { set ->
201+
binding.chart1.data?.dataSets?.map { it as LineDataSet<*> }?.forEach { set ->
202202
set.lineMode = if (set.lineMode == LineDataSet.Mode.STEPPED)
203203
LineDataSet.Mode.LINEAR
204204
else
@@ -208,7 +208,7 @@ class LineChartActivity : DemoBase(), OnSeekBarChangeListener, OnChartValueSelec
208208
}
209209

210210
R.id.actionToggleHorizontalCubic -> {
211-
binding.chart1.data?.dataSets?.map { it as LineDataSet }?.forEach { set ->
211+
binding.chart1.data?.dataSets?.map { it as LineDataSet<*> }?.forEach { set ->
212212
set.lineMode = if (set.lineMode == LineDataSet.Mode.HORIZONTAL_BEZIER)
213213
LineDataSet.Mode.LINEAR
214214
else

app/src/main/kotlin/info/appdev/chartexample/LineChartDualAxisActivity.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,14 +130,14 @@ class LineChartDualAxisActivity : DemoBase(), OnSeekBarChangeListener, OnChartVa
130130
values3.add(EntryFloat(i.toFloat(), `val`))
131131
}
132132

133-
val set1: LineDataSet
134-
val set2: LineDataSet
135-
val set3: LineDataSet
133+
val set1: LineDataSet<EntryFloat>
134+
val set2: LineDataSet<EntryFloat>
135+
val set3: LineDataSet<EntryFloat>
136136

137137
if (binding.chart1.lineData.dataSetCount > 0) {
138-
set1 = binding.chart1.lineData.getDataSetByIndex(0) as LineDataSet
139-
set2 = binding.chart1.lineData.getDataSetByIndex(1) as LineDataSet
140-
set3 = binding.chart1.lineData.getDataSetByIndex(2) as LineDataSet
138+
set1 = binding.chart1.lineData.getDataSetByIndex(0) as LineDataSet<EntryFloat>
139+
set2 = binding.chart1.lineData.getDataSetByIndex(1) as LineDataSet<EntryFloat>
140+
set3 = binding.chart1.lineData.getDataSetByIndex(2) as LineDataSet<EntryFloat>
141141
set1.entries = values1
142142
set2.entries = values2
143143
set3.entries = values3

app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ class ListViewMultiChartActivity : DemoBase() {
116116
d2.setCircleColor(ColorTemplate.VORDIPLOM_COLORS[0])
117117
d2.isDrawValues = false
118118

119-
val sets = ArrayList<ILineDataSet>()
119+
val sets = ArrayList<ILineDataSet<EntryFloat>>()
120120
sets.add(d1)
121121
sets.add(d2)
122122

app/src/main/kotlin/info/appdev/chartexample/MultiLineChartActivity.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ class MultiLineChartActivity : DemoBase(), OnSeekBarChangeListener, OnChartGestu
8484
binding.tvXMax.text = binding.seekBarX.progress.toString()
8585
binding.tvYMax.text = binding.seekBarY.progress.toString()
8686

87-
val dataSets = ArrayList<ILineDataSet>()
87+
val dataSets = ArrayList<ILineDataSet<EntryFloat>>()
8888

8989
for (datasetNumber in 0..2) {
9090
val values = ArrayList<EntryFloat>()
@@ -111,7 +111,7 @@ class MultiLineChartActivity : DemoBase(), OnSeekBarChangeListener, OnChartGestu
111111
}
112112

113113
// make the first DataSet dashed
114-
(dataSets[0] as LineDataSet).enableDashedLine(10f, 10f, 0f)
114+
(dataSets[0] as LineDataSet<*>).enableDashedLine(10f, 10f, 0f)
115115

116116
val data = LineData(dataSets)
117117
binding.chart1.data = data

app/src/main/kotlin/info/appdev/chartexample/RealtimeLineChartActivity.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ class RealtimeLineChartActivity : DemoBase(), OnChartValueSelectedListener {
9292
data.addDataSet(set)
9393
}
9494

95-
val cycleValue = (set.entryCount % 100.0).toInt()
95+
val cycleValue = (set!!.entryCount % 100.0).toInt()
9696
data.addEntry(EntryFloat(set.entryCount.toFloat(), (sampleValues[cycleValue]!!.toFloat() * 40) + 30f), 0)
9797
data.notifyDataChanged()
9898

@@ -112,8 +112,8 @@ class RealtimeLineChartActivity : DemoBase(), OnChartValueSelectedListener {
112112
// AxisDependency.LEFT);
113113
}
114114

115-
private fun createSet(): LineDataSet {
116-
val set = LineDataSet(label = "Dynamic Data")
115+
private fun createSet(): LineDataSet<EntryFloat> {
116+
val set = LineDataSet<EntryFloat>(label = "Dynamic Data")
117117
set.axisDependency = AxisDependency.LEFT
118118
set.color = ColorTemplate.holoBlue
119119
set.setCircleColor(Color.WHITE)

0 commit comments

Comments
 (0)