AUI Framework
master
Cross-platform module-based framework for developing C++20 desktop applications
|
Tree model. More...
Tree model.
T | itemAt value (typically AString) |
ITreeModel is an interface to a tree data structure used for ATreeView.
Basic implementation of the tree model is available in ATreeModel.
Public Types | |
using | stored_t = T |
Public Member Functions | |
virtual size_t | childrenCount (const ATreeModelIndexOrRoot &vertex)=0 |
Count of children of the vertex. More... | |
virtual T | itemAt (const ATreeModelIndex &index)=0 |
value representation, used by ATreeView. More... | |
virtual ATreeModelIndex | indexOfChild (size_t row, size_t column, const ATreeModelIndexOrRoot &vertex)=0 |
Creates valid ATreeModelIndex of the child. More... | |
virtual ATreeModelIndexOrRoot | parent (const ATreeModelIndex &vertex)=0 |
Creates index of parent vertex of the specified vertex. More... | |
template<aui::predicate< ATreeModelIndex > Predicate> | |
AOptional< ATreeModelIndex > | find (const Predicate &predicate) |
template<aui::invocable< ATreeModelIndex > Callback> | |
void | forEachDirectChildOf (const ATreeModelIndexOrRoot &vertex, Callback callback) |
Public Member Functions inherited from AObject | |
_< AObject > | sharedPtr () |
_weak< AObject > | weakPtr () |
void | clearSignals () noexcept |
template<AAnySignal Signal, ACompatibleSlotFor< Signal > Function> | |
void | connect (Signal &signal, Function &&function) |
void | setSignalsEnabled (bool enabled) |
bool | isSignalsEnabled () const noexcept |
template<ASignalInvokable T> | |
void | operator^ (T &&t) |
_< AAbstractThread > | getThread () const |
bool | isSlotsCallsOnlyOnMyThread () const noexcept |
void | setSlotsCallsOnlyOnMyThread (bool slotsCallsOnlyOnMyThread) |
Public Member Functions inherited from aui::noncopyable | |
noncopyable (const noncopyable &)=delete | |
noncopyable & | operator= (const noncopyable &)=delete |
Signals and public fields | |
emits< ATreeModelIndex > | dataChanged |
Model data was changed. | |
emits< ATreeModelIndex > | dataInserted |
Model data was added. | |
emits< ATreeModelIndex > | dataRemoved |
Model data about to remove. | |
Additional Inherited Members | |
Static Public Member Functions inherited from AObject | |
static void | disconnect () |
template<AAnySignal Signal, aui::derived_from< AObject > Object, ACompatibleSlotFor< Signal > Function> | |
static void | connect (Signal &signal, Object *object, Function &&function) |
template<AAnySignal Signal, aui::derived_from< AObject > Object, ACompatibleSlotFor< Signal > Function> | |
static void | connect (Signal &signal, Object &object, Function &&function) |
template<AAnySignal Signal, aui::derived_from< AObject > Object, ACompatibleSlotFor< Signal > Function> | |
static void | connect (Signal &signal, _< Object > object, Function &&function) |
static void | moveToThread (aui::no_escape< AObject > object, _< AAbstractThread > thread) |
Protected Member Functions inherited from AObject | |
void | setThread (_< AAbstractThread > thread) |
Set thread of the object. | |
|
pure virtual |
Count of children of the vertex.
vertex | the vertex to determine the children count of |
Implemented in ATreeModel< T >, and ViewHierarchyTreeModel.
|
pure virtual |
Creates valid ATreeModelIndex of the child.
row | child row (index) |
column | child column (typically 0) |
parent | vertex. std::nullopt indicates root vertex |
Implemented in ATreeModel< T >, and ViewHierarchyTreeModel.
|
pure virtual |
value representation, used by ATreeView.
Implemented in ATreeModel< T >, and ViewHierarchyTreeModel.
|
pure virtual |
Creates index of parent vertex of the specified vertex.
Implemented in ViewHierarchyTreeModel, and ATreeModel< T >.
#include <AUI/Model/ITreeModel.h>