🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
UiThirdBodyForceList.hpp
浏览该文件的文档.
1
8
9#pragma once
10
11#include "AstGlobal.h"
12#include "AstGUI/UiObject.hpp"
13#include "AstCore/ThirdBodyForce.hpp"
14#include "AstCore/HPOPForceModel.hpp"
15#include "AstGUI/UiThirdBodyForce.hpp"
16#include <QVBoxLayout>
17#include <QHBoxLayout>
18#include <QListWidget>
19#include <QPushButton>
20#include <QGroupBox>
21
22AST_NAMESPACE_BEGIN
23
24class AST_GUI_API UiThirdBodyForceList: public UiObject
25{
26 Q_OBJECT
27public:
28 UiThirdBodyForceList(Object* object, QWidget *parent = nullptr);
29 UiThirdBodyForceList(QWidget *parent = nullptr);
30 ~UiThirdBodyForceList() = default;
32 UiThirdBodyForceList& operator=(const UiThirdBodyForceList&) = delete;
33
34 HPOPForceModel* getHPOPForceModel() const;
35 void setHPOPForceModel(HPOPForceModel* hpop);
36 void refreshUi();
37 void apply();
38protected:
39 void setupUi();
40private slots:
41 void onAddThirdBody();
42 void onRemoveThirdBody();
43 void onThirdBodySelected(int index);
44private:
45 // 布局
46 QVBoxLayout* mainLayout_{nullptr};
47 QHBoxLayout* topLayout_{nullptr};
48 QListWidget* thirdBodyList_{nullptr};
49 QVBoxLayout* buttonLayout_{nullptr};
50 QPushButton* addButton_{nullptr};
51 QPushButton* removeButton_{nullptr};
52 QGroupBox* detailGroup_{nullptr};
53 QVBoxLayout* detailLayout_{nullptr};
54 UiThirdBodyForce* thirdBodyWidget_{nullptr};
55
56 // 数据
57 HPOPForceModel* hpopForceModel_{nullptr};
58};
59
60AST_NAMESPACE_END
高精度轨道预报力模型
定义 HPOPForceModel.hpp:49
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:95
与对象关联的 QWidget
定义 UiObject.hpp:36
定义 UiThirdBodyForceList.hpp:25
定义 UiThirdBodyForce.hpp:25