COMPASSi/trunk/code/inc/Application/MenuUIFunction.h

80 lines
2.7 KiB
C
Raw Permalink Normal View History

2025-06-25 15:06:42 +08:00
#ifndef MenuUIFunction_H
#define MenuUIFunction_H
//#include <functional>
#include <QString>
#include <QMap>
#include <QObject>
#include "UIFunctionBase.h"
#include "FIFOContainer.h"
#include "MenuShipUIFunction.h"
#include "MenuToolUIFunction.h"
class ImportIGESOption
{
ImportIGESOption()
{
m_szFilePath = ""; //导入模型所在路径
m_bIsAddMode = false; //导入模式true为新建模式false为合并模式
m_nImportType = 0; //导入点、线、面类型
m_fScalse = 0; //导入模型的缩放比例
m_fTranslateX = 0; //导入模型X偏移量
m_fTranslateY = 0; //导入模型Y偏移量
m_fTranslateZ = 0; //导入模型Z偏移量
m_fRotateX = 0; //导入模型绕X轴旋转角度
m_fRotateY = 0; //导入模型绕Y轴旋转角度
m_fRotateZ = 0; //导入模型绕Z轴旋转角度
}
public:
QString m_szFilePath; //导入模型所在路径
bool m_bIsAddMode; //导入模式true为新建模式false为合并模式
int m_nImportType; //导入点、线、面类型
float m_fScalse; //导入模型的缩放比例
float m_fTranslateX; //导入模型X偏移量
float m_fTranslateY; //导入模型Y偏移量
float m_fTranslateZ; //导入模型Z偏移量
float m_fRotateX; //导入模型绕X轴旋转角度
float m_fRotateY; //导入模型绕Y轴旋转角度
float m_fRotateZ; //导入模型绕Z轴旋转角度
};
class MenuUIFunction:public UIFunctionBase
{
public:
MenuUIFunction();
~MenuUIFunction();
void from(const json& j);
void to(json);
void new_file(const QString& message);
void update_3d_json(const QString& message );
void open_file(const QString& message);
void save_file(const QString& message);
void save_as_file(const QString& message);
void import_xls(const QString& message);
void import_xls_ok(const QString& message);
void import_iges(const QString& message);
void import_iges_ok(const QString& message);
void import_dxf(const QString& message);
void import_ship(const QString& message);
void export_iges(const QString& message);
void export_iges_ok(const QString& message);
void load_recent_file(const QString& message);
void init_recent_file_list(const QString& message);
void init_color_setting(const QString& message);
private:
json createRecentFilesJson();
void update_recent_file(const QString& path);
private:
MenuShipUIFunction m_menu_shipUIFunction;
MenuToolUIFunction m_menu_toolUIFunction;
FIFOContainer m_vRecentOpenFileObj; //最近加载文件记录
};
#endif // MessageHandle_H