getNextRecord method

bool getNextRecord()

Implementation

bool getNextRecord() {
  if (_recordCount > 0) setCurrentRecord(_recordCount - 1);
  final result =
      getRecord(_buffers[_bufferCount]!, TGetMode.gmNext, true) ==
          TGetResult.grOK;

  if (result) {
    if (_recordCount == 0) activateBuffers();
    if (_recordCount == _bufferCount) {
      shiftBuffersBackward();
    } else {
      _recordCount++;
      _currentRecord = _recordCount - 1;
      // ExchangeBuffers(FBuffers[FCurrentRecord],FBuffers[FBufferCount])
      final temp = _buffers[_currentRecord];
      _buffers[_currentRecord] = _buffers[_bufferCount];
      _buffers[_bufferCount] = temp;
    }
  } else {
    cursorPosChanged();
  }
  return result;
}