🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
UiObjectTree.hpp
浏览该文件的文档.
1
19
20#pragma once
21
22#include "AstGlobal.h"
23#include "AstUtil/Object.hpp"
24#include "UiObjectTreeItem.hpp"
25#include <QTreeWidget>
26
27AST_NAMESPACE_BEGIN
28
30class AST_GUI_API UiObjectTree : public QTreeWidget
31{
32 Q_OBJECT
33
34public:
36 explicit UiObjectTree(QWidget* parent = nullptr);
37
38 ~UiObjectTree() override;
39
40 UiObjectTree(const UiObjectTree&) = delete;
41 UiObjectTree& operator=(const UiObjectTree&) = delete;
42
44 void refresh();
45
47 Object* selectedObject() const;
48
50 void setRootItem(UiObjectTreeItem* item);
51
53 void setRootObject(Object* object);
54
56 UiObjectTreeItem* rootItem() const;
57
59 Object* rootObject() const;
60
62 void setRootVisible(bool visible);
63
65 bool isRootVisible() const;
66
68 void setShowComponents(bool show);
69
71 bool isShowComponents() const{return buildOptions_.showComponents;}
72
73signals:
75 void objectSelected(Object* object);
76
79
80protected:
81 TreeBuildOptions buildOptions_{};
82
83private:
84 UiObjectTreeItem* rootItem_ = nullptr;
85 bool rootVisible_ = true;
86};
87
88AST_NAMESPACE_END
对象树控件项,关联一个 Object 并可递归构建子节点
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:95
定义 UiObjectTreeItem.hpp:36
通用对象树控件,支持显示全部对象或以指定节点为根的子树
定义 UiObjectTree.hpp:31
void objectSelected(Object *object)
当用户在树中选中对象时发出,参数仅在槽函数执行期间有效
bool isShowComponents() const
查询是否显示组件节点
定义 UiObjectTree.hpp:71
void objectDoubleClicked(Object *object)
当用户双击树中对象时发出,参数仅在槽函数执行期间有效
对象树构建选项
定义 UiObjectTreeItem.hpp:31