33#include <NDEVR/QTModelManager.h>
35#include <NDEVR/Model.h>
36#include <QAbstractItemModel>
53 bool is_visible =
true;
54 bool is_visible_recursive =
true;
55 bool is_selected =
false;
61 UUID getID(
const QModelIndex& model_index)
const;
62 Model model(
const QModelIndex& model_index)
const;
63 Model model(
uint04 row,
const QModelIndex& parent)
const;
64 bool hasCached(
const UUID&
id)
const;
65 QModelIndex getIndex(
const Model& model)
const;
66 QModelIndex getIndex(
const UUID&
id)
const;
67 QIcon::Mode iconMode(
const QModelIndex& index)
const;
68 ModelCache createCache(
const Model& model,
bool recursive,
bool parent_visible)
const;
69 void updateModel3DVisible(
const UUID&
id,
bool visible);
71 void recursiveCacheRemove(
const UUID&
id);
72 virtual int rowCount(
const QModelIndex &parent = QModelIndex())
const override;
73 int columnCount(
const QModelIndex& parent = QModelIndex())
const override;
74 bool setData(
const QModelIndex &index,
const QVariant &value,
int role = Qt::EditRole)
override;
75 QVariant data(
const QModelIndex &index,
int role = Qt::DisplayRole)
const override;
76 Qt::ItemFlags flags(
const QModelIndex &index)
const override;
78 QVariant headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const override;
79 QModelIndex index(
int row,
int column,
const QModelIndex &parent = QModelIndex())
const override;
80 QModelIndex parent(
const QModelIndex& index)
const override;
87 void addModel(
UUID id);
88 QVariant data(
const UUID&
id,
int role)
const;
93 void modelUpdated(
UUID id);
95 void modelFocussed(
UUID id,
bool selected);
98 void projectChanged(
UUID id);
The equivelent of std::vector but with a bit more control. The basic array unit of the library.
Definition Buffer.hpp:59
A hash-based key-value store, useful for quick associative lookups.
Definition Dictionary.h:59
Definition QTModelManager.h:94
Definition QTModelManagerView.h:41
Buffer< UUID > m_index_ids
Definition QTModelManagerView.h:107
Dictionary< UUID, ModelCache > m_cached_indices
Definition QTModelManagerView.h:108
UUID m_project_id
Definition QTModelManagerView.h:106
Buffer< UUID > m_root_models
Definition QTModelManagerView.h:105
virtual ~QTModelManagerView()=default
std::function< bool(const Model &)> m_root_filter
Definition QTModelManagerView.h:109
QTModelManager * m_manager
Definition QTModelManagerView.h:104
UUID m_tree_capture_id
Definition QTModelManagerView.h:103
void setIsRootFilter(const std::function< bool(const Model &)> &filter)
Definition QTModelManagerView.h:86
const Buffer< UUID > & rootModels() const
Definition QTModelManagerView.h:84
Represents a color in the RGB space with optional alpha transparency.
Definition RGBColor.h:53
The core String class for the software.
Definition String.h:47
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
Definition UUID.h:62
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:115
Definition BaseValues.hpp:267
Definition QTModelManagerView.h:45
String icon
Definition QTModelManagerView.h:50
Buffer< UUID > children
Definition QTModelManagerView.h:47
QString tooltip
Definition QTModelManagerView.h:51
uint04 cache_index
Definition QTModelManagerView.h:46
QString name
Definition QTModelManagerView.h:49