void EditBookmarksDialog::onSortingStateChange(int AColumn) { QHeaderView *header = qobject_cast<QHeaderView *>(sender()); QTableWidget *table = header!=NULL ? qobject_cast<QTableWidget *>(header->parentWidget()) : NULL; if (table) { if (FLastSortSection!=AColumn || header->sortIndicatorOrder()!=Qt::AscendingOrder) { // first or double click FLastSortSection = AColumn; table->sortItems(AColumn, header->sortIndicatorOrder()); } else { // triple click FLastSortSection = -1; table->sortItems(COL_SORT, Qt::AscendingOrder); } } }