🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
UiSelectFrame.hpp
浏览该文件的文档.
1
21
22#pragma once
23
24#include "AstGlobal.h"
25#include <QWidget>
26
27class QListWidget;
28class QListWidgetItem;
29
30AST_NAMESPACE_BEGIN
31
32class Frame;
33class CelestialBody;
34
47class AST_GUI_API UiSelectFrame : public QWidget
48{
49 Q_OBJECT
50public:
51 explicit UiSelectFrame(QWidget* parent = nullptr);
52 ~UiSelectFrame() override;
53
54 Frame* getSelectedFrame();
55 void setSelectedFrame(Frame* frame);
56 void setBody(CelestialBody* body);
57 CelestialBody* getSelectedBody() const;
58
59signals:
60 void frameChanged(Frame* frame);
61
62private slots:
63 void onBodySelected();
64 void onFrameSelected();
65
66private:
67 void setupUi();
68 void populateBodies();
69 void ensureFramesInitialized(CelestialBody* body);
70 void populateFrames(CelestialBody* body);
71 void resolveAndEmit();
72
74 static bool filterBody(CelestialBody* body);
75
76 QListWidget* bodyList_ = nullptr;
77 QListWidget* frameList_ = nullptr;
78};
79
81AST_GUI_CAPI Frame* aUiSelectFrame();
82
83AST_NAMESPACE_END
天体
定义 CelestialBody.hpp:72
坐标系类
定义 Frame.hpp:60
坐标系选择器 — 天体 + Frame 双列表选择
定义 UiSelectFrame.hpp:48
Frame * aUiSelectFrame()
弹出模态对话框选择坐标系
定义 UiSelectFrame.cpp:277