15#include <QApplication>
19#include <QGraphicsPixmapItem>
20#include <QGraphicsScene>
21#include <QGraphicsSceneMouseEvent>
49 for (
auto& i : DataList) {
62 if (role == Qt::DisplayRole) {
63 return Data.value(Column);
72 Data[0] = QVariant(name);
78 throw daq::dbe::cannot_handle_invalid_qmodelindex(
ERS_HERE);
204 case Qt::DisplayRole:
205 return Data.value(Column);
207 case Qt::ToolTipRole:
212 case Qt::DecorationRole:
215 return QIcon(
":/Images/Folder.png");
235 std::vector<dunedaq::conffwk::attribute_t> Attributes = ClassInfo.
p_attributes;
236 std::vector<dunedaq::conffwk::relationship_t> Relationships = ClassInfo.
p_relationships;
238 if ((Relationships.size() > 0)) {
261 case Qt::DisplayRole:
262 return Data.value(Column);
264 case Qt::DecorationRole:
267 return QIcon(
":/Images/TextGeneric.png");
285 Data.append(QVariant(QString::fromStdString(AttributeData.
p_name)));
291 for (QString& ObjectData : DataList) {
292 if (!ObjectData.isEmpty()) {
298 if (DataList.size() > 0 && !DataList.at(0).isNull()) {
299 SetHasStructure(true);
312 case Qt::DisplayRole:
313 return Data.value(Column);
315 case Qt::DecorationRole:
318 return QIcon(
":/Images/SLink.png");
335 Data.append(QVariant(QString::fromStdString(relation.p_name)));
337 std::vector<tref> DataList;
343 tref Data = dbe::config::api::graph::linked::through::relation<tref>(ObjectParent, relation);
344 DataList.push_back(Data);
345 } catch (daq::dbe::config_object_retrieval_result_is_null
const& e) {
352 for (
tref const& Object : DataList) {
353 new ObjectNode(Object,
true,
static_cast<treenode*
>(
this));
356 if (DataList.size() > 0) {
357 SetHasStructure(true);
370 case Qt::DisplayRole:
371 return Data.value(Column);
373 case Qt::DecorationRole:
376 return QIcon(
":/Images/SLink.png");
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
dunedaq::conffwk::attribute_t attribute_t() const
AttributeNode(const dunedaq::conffwk::attribute_t &AttributeData, treenode *ParentNode)
dunedaq::conffwk::attribute_t attribute_t_definition
void AddChild(treenode *Child) override
dunedaq::conffwk::class_t GetClassInfo() const
void updateData(bool addition)
virtual QVariant GetData(int Column, int role=Qt::DisplayRole) const
void RemoveChild(treenode *Child) override
dunedaq::conffwk::class_t ClassInfo
ClassNode(const dunedaq::conffwk::class_t &Info, treenode *ParentNode)
ObjectNode(dref ObjectData, bool IsCopy, treenode *ParentNode)
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
dunedaq::conffwk::relationship_t relation_t_definition
dunedaq::conffwk::relationship_t relation_t() const
RelationshipNode(const dunedaq::conffwk::relationship_t &RelationshipData, treenode *ParentNode)
static void increase_total_objects(int const i)
static T list(dbe::inner::configobject::tref obj, dunedaq::conffwk::attribute_t const &attr)
static dunedaq::conffwk::class_t definition(std::string const &cn, bool direct_only)
dunedaq::conffwk::ConfigObject & ref(bool check_null=true) const
QList< treenode * > Children
treenode * GetParent() const
virtual void RemoveChild(treenode *Child)
void rename(QString const &)
void SetHasStructure(bool Structure)
bool GetHasStructure() const
virtual tref GetObject() const
treenode(treenode *ParentNode=nullptr)
Including QT Headers.
QList< treenode * > GetChildren() const
treenode * GetChild(const int Row) const
virtual void AddChild(treenode *Child)
bool GetWasFetched() const
virtual QVariant GetData(const int Column, int role=Qt::DisplayRole) const
void SetWasFetched(bool Fetched)
T relation(tref item, dunedaq::conffwk::relationship_t const &relation)
inner::configobject::tref tref
config_object_description dref
const std::vector< attribute_t > p_attributes
const std::vector< relationship_t > p_relationships
std::string p_description
cardinality_t p_cardinality