🛰️航天仿真算法库 SpaceAST
0.0.1
载入中...
搜索中...
未找到
UiToolCallTimeline.hpp
浏览该文件的文档.
1
13
14
#pragma once
15
16
#include "AstGlobal.h"
17
#include <QWidget>
18
#include <QVector>
19
20
class
QVBoxLayout;
21
class
QPushButton;
22
23
AST_NAMESPACE_BEGIN
24
25
enum class
EToolCallState
;
26
37
class
AST_UIAI_API
UiToolCallTimeline
:
public
QWidget
38
{
39
Q_OBJECT
40
41
public
:
42
explicit
UiToolCallTimeline
(QWidget* parent =
nullptr
);
43
~UiToolCallTimeline
()
override
;
44
UiToolCallTimeline
(
const
UiToolCallTimeline
&) =
delete
;
45
UiToolCallTimeline
& operator=(
const
UiToolCallTimeline
&) =
delete
;
46
51
void
addEntry(
const
QString& toolCallId,
52
const
QString& functionName,
53
const
QString& arguments);
54
59
void
setEntryResult(
const
QString& toolCallId,
60
const
QString& result,
61
bool
success =
true
);
62
64
int
entryCount
()
const
{
return
entries_.size(); }
65
67
bool
isCollapsed
()
const
{
return
collapsed_; }
68
69
private
Q_SLOTS:
70
void
toggleCollapsed();
71
void
onEntryClicked(
int
index);
72
73
private
:
74
void
setupUi();
75
void
rebuildBody();
76
void
updateHeaderText();
77
78
struct
Entry
79
{
80
QString toolCallId{};
81
QString functionName{};
82
QString arguments{};
83
QString result{};
84
EToolCallState
state{};
85
bool
detailExpanded =
false
;
86
};
87
88
QVector<Entry> entries_{};
89
bool
collapsed_ =
true
;
90
91
// UI 部件
92
QPushButton* headerButton_ =
nullptr
;
93
QWidget* bodyWidget_ =
nullptr
;
94
QVBoxLayout* bodyLayout_ =
nullptr
;
95
};
96
99
AST_NAMESPACE_END
ast::UiToolCallTimeline
工具调用时间线部件
定义
UiToolCallTimeline.hpp:38
ast::UiToolCallTimeline::entryCount
int entryCount() const
获取条目数量
定义
UiToolCallTimeline.hpp:64
ast::UiToolCallTimeline::isCollapsed
bool isCollapsed() const
是否已折叠
定义
UiToolCallTimeline.hpp:67
ast::EToolCallState
EToolCallState
工具调用状态
定义
UiToolCallCard.hpp:31
src
AstUiAI
Chat
UiToolCallTimeline.hpp
制作者
1.12.0