tableSort method

dynamic tableSort(
  1. dynamic tableName,
  2. dynamic columnIndex,
  3. dynamic ascending,
  4. dynamic context,
)

Implementation

tableSort(tableName, columnIndex, ascending, context) {
  myLogAll('tableSort');
  //List data = tableList[tableName][gData];
  clearMFocusNode(context);
  clearTable(tableName);
  dynamic tableInfo = tableList[tableName];
  List data = tableInfo[gData];
  if (data.length < 2) {
    return;
  }
  int dataColumnIndex = 0;
  List columns = tableList[tableName]![gColumns];
  for (int i = 0; i < columns.length; i++) {
    if (isHiddenColumn(columns, i)) {
      continue;
    }
    if (columnIndex == dataColumnIndex) {
      dataColumnIndex = i;
      break;
    }

    dataColumnIndex++;
  }
  data.sort((a, b) =>
      tableSortCompare(a, b, columns, dataColumnIndex, ascending, context));
  tableList[tableName]![gAscending] = !ascending;
  tableList[tableName]![gSortColumnIndex] = columnIndex;
}