logplus/DataOutput/include/Slf2FileDlg.h
2025-10-29 17:23:30 +08:00

105 lines
3.1 KiB
C++
Raw Permalink 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.

#pragma once
#pragma warning(push,0)
#include <cassert>
#include <QDialog>
#include "ConsoleOutputWidget.h"
#include "ui_Slf2File.h"
#include "NameMapDlg.h"
#include "DataOutputDefs.h"
#include "OSGFramework.h"
#pragma execution_character_set("utf-8")
typedef QMap<QString,bool> WellMap;
#pragma warning(pop)
BEGIN_OSGGRAPHICS_NAMESPACE
/**
* @brief 表格选择列自定义委托
*/
class DATAOUTPUT_EXPORT CSlf2FileDlg : public QDialog
{
Q_OBJECT
public:
CSlf2FileDlg(QWidget * parent=0, Qt::WindowFlags flags=0);
~CSlf2FileDlg();
Ui_Slf2File *m_pUI;
virtual void execOutputWellLog(const QStringList& namelist);
virtual void CSlf2FileDlg::outWellLogRound(const QStringList& nameList1,const QStringList& curveList);
private slots:
/**
*@brief 保存槽函数
*/
void slotSave();
/**
*@brief 取消槽函数
*/
void slotCancel();
void changeFormattype(int);//选择输出格式类型
void slotAllCheck();
void slotCheckCurve();
void slotCheckWave();
void slotCheckTable();
void slotCheckPar();
void slotCheckOther();
void slotSetCurrentDir();//输出文件单独存放在当前slf文件目录
void slotSetProjectDir();//输出文件集中存放在Project目录
void slotSetDir();//设置输出文件集中存放在用户指定的目录
void slotbuttonJudge(int);
void slotbuttonJudge2(int);
void slotChangeOutDir(QString);
void slotbuttonJudge4(int);
void slotSetOutDepPar();
void slotGetCell(int row,int column);
void slotGetCell2(int row,int column);
void slotSelAll();
void slotNotSelAll();
void slotReverseSel();
void slotSelAllWell(int col,bool flag);
void slotNameMap();
protected:
void showEvent(QShowEvent *);
void resizeEvent(QResizeEvent *);
public:
QString ExtName[10];
int FormatType;
int DirFlag;//输出文件存放目录标示0-当前目录1-Project目录2-用户指定的目录
int UnitFlag;//深度单位标志0-公制M1-英制Feet
int OutFlag;//输出对象定制方案 0-全部输出1-交互定制2-手工定制
QString TypeName;
QString DirName;//用户指定的输出目录名
QString ProjectDirName;//Project目录
QStringList WellNamelist;// 纯井名:不含路径和后缀
QStringList nameList;//输入文件名 whp add 2020.2.20
QString Sdep;
QString Edep;
QString val;
bool m_RlevIsCheck;
bool m_EdepIsCheck;
bool m_SdepIsCheck;
bool m_CurveIsCheck;
bool m_WaveIsCheck;
bool m_TableIsCheck;
bool m_ParIsCheck;
bool m_OtherIsCheck;
bool m_AllIsCheck;
float m_Rlev;
float m_Sdep;
float m_Edep;
void SetDepInfo(QString wellname,int i);//,float outsdep,float outedep,float outrlev);
void SetOutNameList();
void SetObjectNameList();
float outsdep,outedep,outrlev,minsdep,minedep,minrlev,maxsdep,maxedep,maxrlev;
QString currentWellName;
bool m_bFirstShowWellname;
QStringList m_WellAndRound;//井名_井次名
//对象名称,包含该对象的井次列表
//曲线名,{井名_井次名1勾选状态}{井名_井次名2勾选状态}。。。{井名_井次名n勾选状态}
QMap<QString,WellMap> CurveMap,WaveMap,TableMap,ParMap,OtherMap,TotalMap;
void AddWidgetLine(QMap<QString,WellMap> DataMap,int *Row,QString TypeName);
};
END_OSGGRAPHICS_NAMESPACE;