logplus/DataOutput/include/Slf2FileDlg.h

105 lines
3.1 KiB
C
Raw Normal View History

#pragma once
2025-10-29 17:23:30 +08:00
#pragma warning(push,0)
#include <cassert>
#include <QDialog>
#include "ConsoleOutputWidget.h"
#include "ui_SLf2File.h"
2025-10-29 17:23:30 +08:00
#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 outWellLogRound(const QStringList& nameList1,const QStringList& curveList);
2025-10-29 17:23:30 +08:00
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;