-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSortFilterProxyModel.nimpl
More file actions
76 lines (66 loc) · 3.39 KB
/
SortFilterProxyModel.nimpl
File metadata and controls
76 lines (66 loc) · 3.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
module SortFilterProxyModel;
import Object;
import Enums;
import AbstractItemModel;
import AbstractProxyModel;
import RegularExpression;
import ModelIndex;
import PersistentModelIndex;
namedbits SignalMask extends AbstractProxyModel.SignalMask {
AutoAcceptChildRowsChanged,
FilterCaseSensitivityChanged,
FilterRoleChanged,
RecursiveFilteringEnabledChanged,
SortCaseSensitivityChanged,
SortLocaleAwareChanged,
SortRoleChanged
}
interface SignalHandler {
// Object:
void destroyed(Object.Handle obj);
void objectNameChanged(string objectName);
// AbstractItemModel:
void columnsAboutToBeInserted(ModelIndex.Handle parent, int first, int last);
void columnsAboutToBeMoved(ModelIndex.Handle sourceParent, int sourceStart, int sourceEnd, ModelIndex.Handle destinationParent, int destinationColumn);
void columnsAboutToBeRemoved(ModelIndex.Handle parent, int first, int last);
void columnsInserted(ModelIndex.Handle parent, int first, int last);
void columnsMoved(ModelIndex.Handle sourceParent, int sourceStart, int sourceEnd, ModelIndex.Handle destinationParent, int destinationColumn);
void columnsRemoved(ModelIndex.Handle parent, int first, int last);
void dataChanged(ModelIndex.Handle topLeft, ModelIndex.Handle bottomRight, Array<ItemDataRole> roles);
void headerDataChanged(Orientation orientation, int first, int last);
void layoutAboutToBeChanged(Array<PersistentModelIndex.Handle> parents, LayoutChangeHint hint);
void layoutChanged(Array<PersistentModelIndex.Handle> parents, LayoutChangeHint hint);
void modelAboutToBeReset();
void modelReset();
void rowsAboutToBeInserted(ModelIndex.Handle parent, int start, int end);
void rowsAboutToBeMoved(ModelIndex.Handle sourceParent, int sourceStart, int sourceEnd, ModelIndex.Handle destinationParent, int destinationRow);
void rowsAboutToBeRemoved(ModelIndex.Handle parent, int first, int last);
void rowsInserted(ModelIndex.Handle parent, int first, int last);
void rowsMoved(ModelIndex.Handle sourceParent, int sourceStart, int sourceEnd, ModelIndex.Handle destinationParent, int destinationRow);
void rowsRemoved(ModelIndex.Handle parent, int first, int last);
// AbstractProxyModel:
void sourceModelChanged();
// SortFilterProxyModel:
void autoAcceptChildRowsChanged(bool autoAcceptChildRows);
void filterCaseSensitivityChanged(CaseSensitivity filterCaseSensitivity);
void filterRoleChanged(ItemDataRole filterRole);
void recursiveFilteringEnabledChanged(bool recursiveFilteringEnabled);
void sortCaseSensitivityChanged(CaseSensitivity sortCaseSensitivity);
void sortLocaleAwareChanged(bool sortLocaleAware);
void sortRoleChanged(ItemDataRole sortRole);
}
opaque Handle extends AbstractProxyModel.Handle {
void setAutoAcceptChildRows(bool state);
void setDynamicSortFilter(bool state);
void setFilterCaseSensitivity(CaseSensitivity sensitivity);
void setFilterKeyColumn(int filterKeyColumn); // -1 = all columns
void setFilterRegularExpression(RegularExpression.Deferred regex);
void setFilterRole(ItemDataRole filterRole);
void setSortLocaleAware(bool state);
void setRecursiveFilteringEnabled(bool enabled);
void setSortCaseSensitivity(CaseSensitivity sensitivity);
void setSortRole(ItemDataRole sortRole);
void setSignalMask(SignalMask mask);
}
Handle create(SignalHandler handler);
// no subclassing yet