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.
163 lines
4.4 KiB
C++
163 lines
4.4 KiB
C++
/**
|
|
*
|
|
* @file CudeInfoWidget.h
|
|
* @brief cude create or edit widget
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*
|
|
*/
|
|
#ifndef _CudeInfoWidget_H
|
|
#define _CudeInfoWidget_H
|
|
|
|
#include "GUIGeometryDialogAPI.h"
|
|
#include "GeometryWidgetBase.h"
|
|
|
|
class QTableWidgetItem;
|
|
|
|
namespace Ui{
|
|
class CudeInfoWidget;
|
|
}
|
|
|
|
namespace Interface {
|
|
class FITKAbsGeoModelBox;
|
|
class FITKAbstractGeoModel;
|
|
class FITKAbsGeoCommand;
|
|
}
|
|
|
|
namespace EventOper {
|
|
class ParaWidgetInterfaceOperator;
|
|
}
|
|
|
|
namespace GUI
|
|
{
|
|
class CompFaceGroupWidget;
|
|
/**
|
|
* @brief cude create or edit widget
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
class GUIGeometryDialogAPI CudeInfoWidget :public GeometryWidgetBase
|
|
{
|
|
Q_OBJECT;
|
|
public:
|
|
/**
|
|
* @brief create constructor
|
|
* @param[i] oper operators
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
CudeInfoWidget(EventOper::ParaWidgetInterfaceOperator* oper);
|
|
/**
|
|
* @brief edit constructor
|
|
* @param[i] obj My Param doc
|
|
* @param[i] oper My Param doc
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
CudeInfoWidget(Interface::FITKAbsGeoModelBox* obj, EventOper::ParaWidgetInterfaceOperator* oper);
|
|
/**
|
|
* @brief Destroy the Cude Info Widget object
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
~CudeInfoWidget();
|
|
/**
|
|
* @brief init
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void init();
|
|
/**
|
|
* @brief Set the Basic Point of cude
|
|
* @param[i] point base point
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void setBasicPoint(double* point);
|
|
/**
|
|
* @brief Set the Face Group of cude
|
|
* @param[i] rowIndex faceGroup index
|
|
* @param[i] facesId faceIDS
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void setFaceGroupValue(int rowIndex, QList<int> facesId);
|
|
protected:
|
|
/**
|
|
* @brief close event override
|
|
* @param[i] event event object
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void closeEvent(QCloseEvent *event) override;
|
|
private slots:
|
|
;
|
|
/**
|
|
* @brief basePoint button clicled slot
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void on_pushButton_BasicPoint_clicked();
|
|
/**
|
|
* @brief cencel button clicked slot
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void on_pushButton_Cancel_clicked();
|
|
/**
|
|
* @brief create or edit button clicked slot
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void on_pushButton_CreateOrEdit_clicked();
|
|
private:
|
|
/**
|
|
* @brief check widget value
|
|
* @return true success
|
|
* @return false fial
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
bool checkValue();
|
|
/**
|
|
* @brief Set the Data To Widget object
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void setDataToWidget();
|
|
/**
|
|
* @brief Get the Data Form Widget object
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
void getDataFormWidget();
|
|
/**
|
|
* @brief 是否切换为创建模式
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-07-16
|
|
*/
|
|
void switchCreateModel(bool isCreate);
|
|
private:
|
|
/**
|
|
* @brief current type isCreate
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
bool _isCreate = false;
|
|
/**
|
|
* @brief ui object
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
Ui::CudeInfoWidget* _ui = nullptr;
|
|
/**
|
|
* @brief face group widget object
|
|
* @author BaGuijun (baguijun@163.com)
|
|
* @date 2024-08-14
|
|
*/
|
|
CompFaceGroupWidget* _faceGroupWidget = nullptr;
|
|
};
|
|
}
|
|
|
|
#endif
|