1 #ifndef AbstractTreeModel_H
2 #define AbstractTreeModel_H
11 template<
typename A,
typename B >
struct QPair;
20 class AbstractTreeItem;
59 InterestingItemsFlag =
AllItems,
bool = false);
61 AbstractTreeItem *, InterestingItemsFlag = AllItems,
bool = false);
63 InterestingItemsFlag = AllItems,
bool = false);
107 int topLevelItemCount);
121 InterestingItemsFlag flags,
bool ignoreExpansion)
const;
123 InterestingItemsFlag flags);
124 static bool itemIsInteresting(
130 void applyFilterDone();
131 void rebuildItemsDone();
162 bool m_filterRunning;
163 bool m_rebuildRunning;
165 bool m_rebuildPending;
175 :
public std::unary_function< AbstractTreeItem *const &, bool > {
178 FilterFunctor(FilterFunctor
const &other);
181 FilterFunctor &operator=(FilterFunctor
const &);
184 static void updateTopLevelLinks(
194 Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractTreeModel::InterestingItemsFlag)
void queueRebuild()
Definition: AbstractTreeModel.cpp:343
ControlNet * getControlNetwork() const
Definition: AbstractTreeModel.cpp:377
bool isFiltering() const
Definition: AbstractTreeModel.cpp:348
A leaf item that is not ready for user interaction.
Definition: BusyLeafItem.h:25
int indexOfVisibleItem(AbstractTreeItem const *item, InterestingItemsFlag=AllItems, bool=false) const
Definition: AbstractTreeModel.cpp:301
void applyFilter()
Definition: AbstractTreeModel.cpp:434
void cancelSort()
Definition: moc_AbstractTreeModel.cpp:239
Definition: TreeView.h:23
void rebuildProgressRangeChanged(int, int)
Definition: moc_AbstractTreeModel.cpp:272
void setFilter(FilterWidget *newFilter)
Definition: AbstractTreeModel.cpp:358
Definition: AbstractTreeModel.h:48
Definition: AbstractTreeModel.h:47
void filterProgressChanged(int)
Definition: moc_AbstractTreeModel.cpp:251
void filterProgressRangeChanged(int, int)
Definition: moc_AbstractTreeModel.cpp:258
The root of a tree.
Definition: RootItem.h:31
RootItem * rootItem
Definition: AbstractTreeModel.h:146
int getVisibleTopLevelItemCount() const
Definition: AbstractTreeModel.cpp:284
void clear()
Definition: AbstractTreeModel.cpp:368
void setFrozen(bool)
Definition: AbstractTreeModel.cpp:324
Definition: ConcurrentControlNetReader.h:35
RootItem * getRootItem() const
Definition: AbstractTreeModel.cpp:388
int getTopLevelItemCount() const
Definition: AbstractTreeModel.cpp:259
void modelModified()
Definition: moc_AbstractTreeModel.cpp:245
void treeSelectionChanged(QList< AbstractTreeItem * >)
Definition: moc_AbstractTreeModel.cpp:279
QList< AbstractTreeItem * > getSelectedItems(InterestingItemsFlag=AllItems, bool=false)
Definition: AbstractTreeModel.cpp:225
void setGlobalSelection(bool selected, InterestingItemsFlag=AllItems)
Definition: AbstractTreeModel.cpp:476
Base class for an item in the tree.
Definition: AbstractTreeItem.h:31
TreeView * getView() const
Definition: AbstractTreeModel.cpp:393
a control network
Definition: ControlNet.h:207
InterestingItems
Definition: AbstractTreeModel.h:44
void setRebuilding(bool running)
Definition: AbstractTreeModel.h:74
virtual void rebuildItems()=0
Definition: AbstractTableModel.h:16
Definition: AbstractTreeModel.h:45
Base class for tree models.
Definition: AbstractTreeModel.h:40
FilterWidget * getFilterWidget() const
void tableSelectionChanged(QList< AbstractTreeItem * >)
Definition: moc_AbstractTreeModel.cpp:286
void stopWorking()
Definition: AbstractTreeModel.cpp:398
void setDrivable(bool drivableStatus)
bool isRebuilding() const
Definition: AbstractTreeModel.cpp:353
int getItemCount(InterestingItemsFlag) const
Definition: AbstractTreeModel.cpp:254
QMutex * getMutex() const
Definition: AbstractTreeModel.cpp:249
void filterCountsChanged(int visibleTopLevelItemCount, int topLevelItemCount)
This signal is emitted after filtering to provide the number of visible top-level items remaining aft...
Definition: moc_AbstractTreeModel.cpp:293
AbstractTreeModel(ControlNet *controlNet, TreeView *v, QObject *parent=0)
Definition: AbstractTreeModel.cpp:37
Definition: BoxcarCachingAlgorithm.h:29
QFutureWatcher< QAtomicPointer< RootItem > > * getRebuildWatcher() const
Definition: AbstractTreeModel.cpp:383
bool isFrozen() const
Definition: AbstractTreeModel.cpp:338
void rebuildProgressChanged(int)
Definition: moc_AbstractTreeModel.cpp:265
Definition: CubeIoHandler.h:39
QList< AbstractTreeItem * > getItems(int, int, InterestingItemsFlag=AllItems, bool=false)
Definition: AbstractTreeModel.cpp:114
Definition: AbstractTreeModel.h:46
QSize getVisibleSize(int indentation) const
indentation is in pixels
Definition: AbstractTreeModel.cpp:407
int getVisibleItemCount(InterestingItemsFlag, bool) const
Definition: AbstractTreeModel.cpp:263