57 SortingTableSizeLimitReached
63 virtual QList< AbstractTreeItem * > getItems(
int,
int) = 0;
66 virtual QList< AbstractTreeItem * > getSelectedItems() = 0;
67 virtual int getVisibleRowCount()
const = 0;
69 TableColumn const *, QString valueToSave)
const = 0;
72 virtual bool isSorting()
const;
73 virtual bool isFiltering()
const;
74 virtual bool sortingIsEnabled()
const;
75 virtual void setSortingEnabled(
bool);
76 virtual int sortLimit()
const;
77 virtual void setSortLimit(
int);
78 virtual bool sortingOn()
const;
84 virtual void setGlobalSelection(
bool selected) = 0;
85 virtual void applyFilter();
88 virtual void updateSort();
89 virtual void rebuildSort();
94 void filterProgressChanged(
int);
95 void rebuildProgressChanged(
int);
96 void sortProgressChanged(
int);
97 void filterProgressRangeChanged(
int,
int);
98 void rebuildProgressRangeChanged(
int,
int);
99 void sortProgressRangeChanged(
int,
int);
100 void filterCountsChanged(
int visibleRows,
int totalRows);
101 void treeSelectionChanged(QList<AbstractTreeItem *>);
102 void tableSelectionChanged(QList<AbstractTreeItem *>);
104 void userWarning(AbstractTableModel::Warning);
110 virtual QList< AbstractTreeItem * > getSortedItems(
int,
int,
111 AbstractTreeModel::InterestingItems);
112 virtual QList< AbstractTreeItem * > getSortedItems(
114 AbstractTreeModel::InterestingItems);
115 void handleTreeSelectionChanged(
116 QList< AbstractTreeItem * > newlySelectedItems,
117 AbstractTreeItem::InternalPointerType);
128 void sortStatusUpdated();
133 QList< AbstractTreeItem * > doSort(QList< AbstractTreeItem * >);
135 void setSorting(
bool sorting);
141 QList< AbstractTreeItem * > * m_sortedItems;
144 QTimer *m_sortStatusPoller;
147 bool m_sortingEnabled;
150 QFutureWatcher< QList< AbstractTreeItem * > > * m_sortingWatcher;
152 static const int SORT_UPDATE_FREQUENCY = 50;
163 class LessThanFunctor :
public std::function <bool(AbstractTreeItem *const &, AbstractTreeItem *const &)> {
169 int getCompareCount()
const;
181 QExplicitlySharedDataPointer<LessThanFunctorData> m_sharedData;
199 int getCompareCount()
const;
200 void incrementCompareCount();
202 void setInterrupted(
bool);
207 QAtomicInt m_compareCount;
208 QAtomicInt m_interruptFlag;
225 void raise()
const {
throw *
this; }