From 55f3c4b7b83cd7bbf2fd48c49751eaaaff39ca07 Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Tue, 30 Dec 2025 10:49:58 +0100 Subject: [PATCH] Less Entry nullable --- .../appdev/chartexample/DynamicalAddingActivity.kt | 11 ++++++----- .../kotlin/info/appdev/charting/data/ChartData.kt | 11 +++-------- .../kotlin/info/appdev/charting/data/CombinedData.kt | 2 +- 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/app/src/main/kotlin/info/appdev/chartexample/DynamicalAddingActivity.kt b/app/src/main/kotlin/info/appdev/chartexample/DynamicalAddingActivity.kt index c9f6f74e3..de50b8555 100644 --- a/app/src/main/kotlin/info/appdev/chartexample/DynamicalAddingActivity.kt +++ b/app/src/main/kotlin/info/appdev/chartexample/DynamicalAddingActivity.kt @@ -87,12 +87,13 @@ class DynamicalAddingActivity : DemoBase(), OnChartValueSelectedListener { val set = data.getDataSetByIndex(0) if (set != null) { - val e = set.getEntryForXValue((set.entryCount - 1).toFloat(), Float.NaN) + set.getEntryForXValue((set.entryCount - 1).toFloat(), Float.NaN)?.let { entry -> + data.removeEntry(entry, 0) + // or remove by index + // mData.removeEntryByXValue(xIndex, dataSetIndex); + data.notifyDataChanged() + } - data.removeEntry(e, 0) - // or remove by index - // mData.removeEntryByXValue(xIndex, dataSetIndex); - data.notifyDataChanged() binding.chart1.notifyDataSetChanged() binding.chart1.invalidate() } diff --git a/chartLib/src/main/kotlin/info/appdev/charting/data/ChartData.kt b/chartLib/src/main/kotlin/info/appdev/charting/data/ChartData.kt index a88d284f9..276a57966 100644 --- a/chartLib/src/main/kotlin/info/appdev/charting/data/ChartData.kt +++ b/chartLib/src/main/kotlin/info/appdev/charting/data/ChartData.kt @@ -423,10 +423,9 @@ abstract class ChartData> : Serializable { * Removes the given Entry object from the DataSet at the specified index. */ @Suppress("UNCHECKED_CAST") - open fun removeEntry(entry: Entry?, dataSetIndex: Int): Boolean { + open fun removeEntry(entry: Entry, dataSetIndex: Int): Boolean { // entry null, out of bounds - - if (entry == null || dataSetIndex >= dataSets!!.size) { + if (dataSetIndex >= dataSets!!.size) { return false } @@ -464,11 +463,7 @@ abstract class ChartData> : Serializable { * Returns the DataSet that contains the provided Entry, or null, if no * DataSet contains this Entry. */ - fun getDataSetForEntry(e: Entry?): T? { - if (e == null) { - return null - } - + fun getDataSetForEntry(e: Entry): T? { for (i in dataSets!!.indices) { val set = dataSets!![i] diff --git a/chartLib/src/main/kotlin/info/appdev/charting/data/CombinedData.kt b/chartLib/src/main/kotlin/info/appdev/charting/data/CombinedData.kt index 73673dd64..8f437861e 100644 --- a/chartLib/src/main/kotlin/info/appdev/charting/data/CombinedData.kt +++ b/chartLib/src/main/kotlin/info/appdev/charting/data/CombinedData.kt @@ -201,7 +201,7 @@ class CombinedData : BarLineScatterCandleBubbleData