/********************************************************************** * @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