25#include "AstScript/Expr.hpp"
26#include "AstUtil/Object.hpp"
27#include "AstUtil/Attribute.hpp"
28#include "AstUtil/SharedPtr.hpp"
50 static Expr* GetExpression(QWidget* parent =
nullptr);
60 void onObjectSelected(
Object*
object);
61 void onPropertySelected(
const Attribute& attr);
62 void onCalculationSelectionChanged();
63 void onPropertyAccepted();
64 void onCalculationAccepted();
65 void onItemDoubleClicked(QTreeWidgetItem* item,
int column);
69 void refreshCalculationTree();
73 QTreeWidget* calculationTree_ =
nullptr;
74 QPushButton* propertySelectButton_ =
nullptr;
75 QPushButton* calculationSelectButton_ =
nullptr;
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:95
属性树控件,显示一个 AST 对象的所有反射属性(遍历继承链)
定义 UiAttributeTree.hpp:33
定义 UiExpressionBrowser.hpp:41
void propertyExpressionSelected(Expr *expr)
用户选择了对象属性表达式
Expr * selectedExpression() const
获取选中的表达式,无选中时返回 nullptr
定义 UiExpressionBrowser.hpp:47
void calculationExpressionSelected(Expr *expr)
用户选择了对象计算量表达式
通用对象树控件,支持显示全部对象或以指定节点为根的子树
定义 UiObjectTree.hpp:31