🛰️航天仿真算法库 SpaceAST 0.3.1
载入中...
搜索中...
未找到
UiModerator.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/StringView.hpp"
25#include <QObject>
26
27AST_NAMESPACE_BEGIN
28
36class AST_UICORE_API UiModerator : public QObject
37{
38 Q_OBJECT
39public:
40 explicit UiModerator(QObject* parent = nullptr);
41 ~UiModerator() override;
42
43 UiModerator(const UiModerator&) = delete;
44 UiModerator& operator=(const UiModerator&) = delete;
45
48 static UiModerator& Instance();
49
50signals:
52 void objectAdded(Object& obj);
58 void beforeObjectRename(Object& obj, StringView oldName, StringView newName);
60 void objectRenamed(Object& obj, StringView oldName, StringView newName);
61
62private:
64 class Observer;
65 Observer* observer_{};
66};
67
70AST_NAMESPACE_END
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:95
定义 UiModerator.cpp:30
引擎总控(QObject 单例)
定义 UiModerator.hpp:37
void beforeObjectRename(Object &obj, StringView oldName, StringView newName)
对象将被重命名前通知
void objectAdded(Object &obj)
对象已被添加后通知
void beforeObjectRemove(Object &obj)
对象将被移除前通知
void objectRenamed(Object &obj, StringView oldName, StringView newName)
对象已被重命名后通知
void objectRemoved(Object &obj)
对象已被移除后通知