onUpdate method

  1. @override
void onUpdate(
  1. int leftEpoch,
  2. int rightEpoch
)
override

Updates visible entries for this Series.

Implementation

@override
void onUpdate(int leftEpoch, int rightEpoch) {
  if (entries == null) {
    initialize();
    _initLastTickIndicator();
  }

  _lastTickIndicator?.onUpdate(leftEpoch, rightEpoch);

  if (entries!.isEmpty) {
    _visibleEntries = VisibleEntries<T>.empty();
    return;
  }

  final int startIndex = _searchLowerIndex(leftEpoch, entries!);
  final int endIndex = _searchUpperIndex(rightEpoch, entries!);

  final VisibleEntries<T> newVisibleEntries = getVisibleEntries(
    startIndex,
    endIndex,
  );

  // Only recalculate min/max if visible entries have changed.
  _needsMinMaxUpdate =
      newVisibleEntries.isEmpty ||
      _visibleEntries.isEmpty ||
      newVisibleEntries.first != _visibleEntries.first ||
      newVisibleEntries.last != _visibleEntries.last;

  _visibleEntries = newVisibleEntries;
}