updateDataPoints method

  1. @override
void updateDataPoints(
  1. List<int>? removedIndexes,
  2. List<int>? addedIndexes,
  3. List<int>? replacedIndexes, [
  4. List<ChartValueMapper<T, num>>? yPaths,
  5. List<List<num>>? chaoticYLists,
  6. List<List<num>>? yLists,
  7. List<ChartValueMapper<T, Object>>? fPaths,
  8. List<List<Object?>>? chaoticFLists,
  9. List<List<Object?>>? fLists,
])

Implementation

@override
void updateDataPoints(
  List<int>? removedIndexes,
  List<int>? addedIndexes,
  List<int>? replacedIndexes, [
  List<ChartValueMapper<T, num>>? yPaths,
  List<List<num>>? chaoticYLists,
  List<List<num>>? yLists,
  List<ChartValueMapper<T, Object>>? fPaths,
  List<List<Object?>>? chaoticFLists,
  List<List<Object?>>? fLists,
]) {
  if (highValueMapper != null &&
      lowValueMapper != null &&
      openValueMapper != null &&
      closeValueMapper != null) {
    final List<ChartValueMapper<T, num>> mappers = <ChartValueMapper<T, num>>[
      highValueMapper!,
      lowValueMapper!,
      openValueMapper!,
      closeValueMapper!,
      if (volumeValueMapper != null) volumeValueMapper!,
    ];
    final List<List<num>> finalYLists = <List<num>>[
      highValues,
      lowValues,
      openValues,
      closeValues,
      if (volumeValueMapper != null) volumeValues,
    ];

    if (sortingOrder == SortingOrder.none) {
      super.updateDataPoints(removedIndexes, addedIndexes, replacedIndexes,
          mappers, finalYLists, <List<num>>[], fPaths, chaoticFLists, fLists);
    } else {
      _resetYLists();
      super.updateDataPoints(
          removedIndexes,
          addedIndexes,
          replacedIndexes,
          mappers,
          <List<num>>[
            _chaoticHighValues,
            _chaoticLowValues,
            _chaoticOpenValues,
            _chaoticCloseValues,
            if (volumeValueMapper != null) _chaoticVolumeValues,
          ],
          finalYLists,
          fPaths,
          chaoticFLists,
          fLists);
    }
  }

  for (int i = 0; i < dataCount; i++) {
    num high = highValues[i];
    num low = lowValues[i];
    if (low > high) {
      final num temp = high;
      high = low;
      low = temp;
      highValues[i] = high;
      lowValues[i] = low;
    }
  }
}