ctai/src/ctaiSessionWidget.h
JackLee 5247485491 1-调整类名和类文件名
2-给公式显示svg增加边距
3-增加字体和字号功能(未实装)
2025-03-09 18:29:30 +08:00

70 lines
1.9 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef CTAISESSIONWIDGET_H
#define CTAISESSIONWIDGET_H
#include <QWidget>
#include <QTextEdit>
#include <QVBoxLayout>
#include <QGroupBox>
#include <QPushButton>
#include <QMessageBox>
#include <QTableWidget>
#include <QObject>
#include <QLabel>
#include <QMap>
#include <QHeaderView>
#include <QString>
#include <QUuid>
#include "ctaiSessionInfo.h"
#include "ctaiSessionSetting.h"
typedef struct c_session
{
QString session_id;
QString session_name;
QString session_type;
ctaiSessionInfo* session_info;
}session;
class ctaiSessionWidget : public QWidget
{
Q_OBJECT
public:
ctaiSessionWidget();
~ctaiSessionWidget();
void init_layout();
private:
void on_session_selected(int currentRow, int currentColumn);
private:
//主布局,左右
QHBoxLayout *m_session_layout;
QSplitter *splitter;
QWidget *m_table_widget;
QWidget *m_info_widget;
//会话按钮和列表布局
QVBoxLayout *m_session_table_btn_layout;
//会话按钮布局
QHBoxLayout *m_session_btn_layout;
QPushButton *m_btn_new_chat;
QPushButton *m_btn_set_chat;
QPushButton *m_btn_del_chat;
//会话列表布局
QHBoxLayout *m_session_table_layout;
QTableWidget* m_session_table;
//会话信息布局
QHBoxLayout *m_session_info_layout;
//会话设置
ctaiSessionSetting *m_session_setting;
bool is_setting_visible;
// 会话管理mapkey为会话IDvalue为对应的会话信息对象
std::vector<session*> m_session_map;
QSpacerItem *sparcer_item = new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Fixed);
public slots:
void on_new_chat_clicked(); // 新建会话
void on_set_chat_clicked(); // 设置会话
void on_del_chat_clicked(); // 删除会话
void connect_signals();
private slots:
void on_session_name_changed(QTableWidgetItem* item); // 处理会话名称修改
};
#endif