You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

142 lines
4.1 KiB
C++

/**********************************************************************
* @file StreamLineDialog.h
* @brief 流线对话框
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-19
*********************************************************************/
#ifndef _StreamLineDialog_H
#define _StreamLineDialog_H
#include "GUIDialogAPI.h"
#include "GUIDialogBase.h"
#include "FITK_Interface/FITKInterfaceCFDPost/FITKAbstractCFDPostData.h"
namespace Ui {
class StreamLineDialog;
}
namespace Interface {
class FITKCFDPostStreamLine;
class PostGraphWidgetLine;
}
namespace GUI
{
class GUIDialogAPI StreamLineDialog : public GUIDialogBase
{
Q_OBJECT;
public:
StreamLineDialog(int dataID, EventOper::ParaWidgetInterfaceOperator* oper, bool isCreate);
~StreamLineDialog();
void init();
protected:
/**
* @brief 显示事件
* @param[i] event 事件
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-19
*/
void showEvent(QShowEvent* event);
/**
* @brief 关闭事件
* @param[i] event 事件
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-19
*/
void closeEvent(QCloseEvent* event);
private slots:
;
void on_pushButton_OK_clicked();
void on_pushButton_Cancel_clicked();
/**
* @brief 数据修改槽函数
* @param[i] startPoint 始点
* @param[i] endPoint 终点
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-19
*/
void slotValueChange(double* startPoint, double* endPoint);
/**
* @brief 界面数据修改槽函数
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-26
*/
void slotDataChange();
private:
/**
* @brief 创建初始化
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-24
*/
void InitCreate();
/**
* @brief 编辑初始化
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-24
*/
void InitEdit();
/**
* @brief 创建确定
* @return bool 是否成功
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-24
*/
bool OKCreate();
/**
* @brief 编辑确定
* @return bool 是否成功
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-24
*/
bool OKEdit();
/**
* @brief 将界面数据填充至数据对象中
* @param[i] glyphData 数据对象
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-26
*/
void getDataFromWidget(Interface::FITKCFDPostStreamLine* streamLine);
/**
* @brief 将数据对象中的数据填充至界面
* @param[i] glyphData 数据对象
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-26
*/
void setDataToWidget(Interface::FITKCFDPostStreamLine* streamLine);
private:
/**
* @brief ui对象
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-27
*/
Ui::StreamLineDialog* _ui = nullptr;
/**
* @brief vtk线界面
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-19
*/
Interface::PostGraphWidgetLine* _lineWidget = nullptr;
/**
* @brief 当前数据对象id
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-24
*/
int _currentDataID = -1;
/**
* @brief 父对象数据ID
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-26
*/
int _parentDataID = -1;
/**
* @brief 是否是创建模式
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-24
*/
bool _isCreate = true;
};
}
#endif