diff --git a/common/geometryutils.h b/common/geometryutils.h index 7346273..8c8d450 100644 --- a/common/geometryutils.h +++ b/common/geometryutils.h @@ -16,6 +16,18 @@ #define SECTIONVIEW_NUM 255 #define SYSTEM_INPOLATION 65 // 系统缺省颜色需要插值成的数目 +struct SelectTableItem +{ + int m_iTableType=0; // 当前选中数据表格的类型,1:井次, 2:道, 3:曲线\表格\波列\参数卡 + + QString m_strUuid=""; + QString m_strWellName=""; + QString m_strSlfName=""; + QString m_strTrackName=""; + QString m_strLineName=""; + QString m_strFormInfoType="";//类型:curve, wave +}; + enum AxisType { AXIS_LINEAR = 0,//线性坐标系 diff --git a/logPlus/chooseShiftCurves.ui b/logPlus/chooseShiftCurves.ui new file mode 100644 index 0000000..24ff25d --- /dev/null +++ b/logPlus/chooseShiftCurves.ui @@ -0,0 +1,138 @@ + + + chooseShiftCurves + + + + 0 + 0 + 800 + 600 + + + + 选择曲线 + + + + + + + + + + 选择曲线 + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + + + + 选择井 + + + + + + + 全选 + + + + + + + 全取消 + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + 确认 + + + + + + + 放弃 + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + diff --git a/logPlus/chooseShiftCurvesDlg.cpp b/logPlus/chooseShiftCurvesDlg.cpp new file mode 100644 index 0000000..2dd3a1f --- /dev/null +++ b/logPlus/chooseShiftCurvesDlg.cpp @@ -0,0 +1,437 @@ +#pragma warning( push , 0 ) +#include +#include "ui_chooseShiftCurves.h" +#include +#include +#include "chooseShiftCurvesDlg.h" +#include +#include "DataImport.h" +#include "ObjWelllog.h" +#include +#include +#include +#include +#include +#include +#include "selectwelldialog.h" + +/////////////////////////////////////////////////////////////// +/// 表格的列,方便代码维护和修改 +#ifndef T_ALL_COLUMN_COUNT_ +/// 表格共有几列 +#define T_ALL_COLUMN_COUNT_ 2 +/// 是否选中对应的列 +#define T_COLUMN_IS_CHECK_ 0 +/// 井名称对应列 +#define T_COLUMN_NAME_ 1 +/// 表格共有几列 +#define T_ALL_COLUMN_COUNT_ 3 +/// 是否选中对应的列 +#define T_COLUMN_IS_CHECK_ 0 +/// 井名称对应列 +#define T_COLUMN_NAME_ 1 +/// 井东西方向坐标对应的列 +#define T_COLUMN_OUTNAME_ 2 + +#endif + +#pragma warning( pop ) + +extern QString g_prjname; +extern int g_SelectWellIndex; + +QList g_pShiftCurves; + +CchooseShiftCurvesDlg::CchooseShiftCurvesDlg(QList exnames, bool isHaveCurve) + :m_pDialog( NULL ) +{ + m_Names = exnames; + m_isHaveCurve = isHaveCurve; + m_pTableModel = NULL; + m_pDialog = new Ui_chooseShiftCurves(); + m_pDialog->setupUi( this ); + connect( m_pDialog->btn_Ok,SIGNAL(clicked()),this,SLOT(slotOnOkBtnClicked()) ); + m_pDialog->btn_Ok->setIcon(QIcon( ::GetImagePath() + "icon/OK.png" )); + + connect( m_pDialog->btn_Cancel,SIGNAL(clicked()),this,SLOT(slotOnCancelBtnClicked())); + m_pDialog->btn_Cancel->setIcon(QIcon( ::GetImagePath() + "icon/Cancel.png" )); + + connect( m_pDialog->pushButton_3,SIGNAL(clicked()),this,SLOT(slotSelectAllClicked())); + connect( m_pDialog->pushButton_4,SIGNAL(clicked()),this,SLOT(slotCancelSelectClicked())); + connect( m_pDialog->pushButton_5,SIGNAL(clicked()),this,SLOT(slotSelectWellClicked())); +} + +CchooseShiftCurvesDlg::~CchooseShiftCurvesDlg() +{ + +} +void CchooseShiftCurvesDlg::Init(QList ShiftCurves) +{ + g_pShiftCurves = ShiftCurves; + m_pTableModel = new QStandardItemModel(); + m_pTableModel->setHorizontalHeaderItem(0, new QStandardItem("序号")); + m_pTableModel->setHorizontalHeaderItem(1, new QStandardItem("曲线名")); + m_pTableModel->setHorizontalHeaderItem(2, new QStandardItem("类型")); + m_pTableModel->setHorizontalHeaderItem(3, new QStandardItem("起始深度")); + m_pTableModel->setHorizontalHeaderItem(4, new QStandardItem("终止深度")); + m_pDialog->tableView->setModel(m_pTableModel); +} + +void CchooseShiftCurvesDlg::slotOnOkBtnClicked() +{ + g_pShiftCurves.clear(); + + int nRowCount = m_pTableModel->rowCount(); + for(int i = 0; i < nRowCount; i++) + { + if(m_pTableModel->item(i,T_COLUMN_IS_CHECK_)->checkState()==Qt::Checked) { + SelectTableItem tmpCurve; + tmpCurve.m_iTableType=0; + tmpCurve.m_strUuid = ""; + tmpCurve.m_strWellName = m_strWellName; + tmpCurve.m_strSlfName=m_strSlfName; + tmpCurve.m_strTrackName=""; + tmpCurve.m_strLineName=m_pTableModel->item(i,T_COLUMN_NAME_)->text(); + tmpCurve.m_strFormInfoType=""; + + int curvetype = m_pTableModel->item(i,T_COLUMN_NAME_)->data().toInt(); + if(curvetype>CARD_OBJECT || 0 == curvetype) + { + //表格数据 + tmpCurve.m_strFormInfoType = "tableObject"; + + } + else if(CURVE_OBJECT == curvetype) + { + //曲线 + tmpCurve.m_strFormInfoType = "curveObject"; + } + else if(CARD_OBJECT == curvetype) + { + //参数卡 + } + else if(WAVE_OBJECT == curvetype) + { + //波列 + tmpCurve.m_strFormInfoType = "waveObject"; + } + else if(TDT_OBJECT == curvetype) + { + //TDT-》树图 + } + g_pShiftCurves.append(tmpCurve); + } + } + this->accept(); +} + +void CchooseShiftCurvesDlg::slotOnCancelBtnClicked() +{ + this->reject(); +} +void CchooseShiftCurvesDlg::slotSelectAllClicked() +{ + for(int i = 0; i < m_pTableModel->rowCount(); i++) + { + m_pTableModel->item(i,T_COLUMN_IS_CHECK_)->setCheckState( Qt::Checked ); + } +} +void CchooseShiftCurvesDlg::slotSelectWellClicked() +{ + QStringList listSlf; + QStringList listWell; + + //直方图,获取当前工程下的slf + QVector vecSlfList; + QVector vecWellList; + bool bRet = getAllSlf(g_prjname, vecSlfList, vecWellList); + if(bRet) + { + for(int i=0; isetInfo(listWell, listSlf); + // + dlg->setAttribute(Qt::WA_DeleteOnClose);//关闭时,自动删除窗口对象 + int result = dlg->exec();//模态对话框 + if (result == QDialog::Accepted) { + // 处理用户点击了确定按钮的逻辑 + qDebug() << "Accepted="; + SetTableView(listWell[g_SelectWellIndex], listSlf[g_SelectWellIndex]); + } + else if (result == QDialog::Rejected) { + // 处理用户点击了取消按钮的逻辑 + qDebug() << "Rejected="; + } + else { + // 处理其他情况的逻辑 + qDebug() << "other="; + } + +// CQtDataTreeDialog dialog; +// dialog.exec(); +// SetTableView(listWell[g_SelectWellIndex], listSlf[g_SelectWellIndex]); +} + +void CchooseShiftCurvesDlg::SetTableView(QString strWellName, QString fileFull) +{ + m_strSlfName = fileFull; + m_strWellName = strWellName; + + if(!m_pTableModel) return; + //先清空 + m_pTableModel->clear(); + + CLogIO * logio=new CLogIO(); + if(!logio->Open(fileFull.toStdString().c_str(),CSlfIO::modeRead)) + { + delete logio; + QString aa=fileFull+"文件打开失败,请检查!"; + qDebug() << aa; + //AppendConsole(pai::log::PAI_ERROR,aa); + return; + } + else + { + Slf_FILE_MESSAGE mssage; + logio->GetFileMessage(mssage); + + if(strWellName != QString(QString::fromLocal8Bit(mssage.WellName))) + { + delete logio; + return; + } + + char* curvename=new char[65]; + curvename[64]='\0'; + char* aliasname=new char[65]; + aliasname[64]='\0'; + // + int nSlfCount = logio->GetObjectCount(); + + // + int iCount = nSlfCount; + if(m_Names.size()>0) + { + QString slf=m_Names[0].m_strSlfName; + slf.replace("\\","/"); + QString slf1=fileFull; + slf1.replace("\\","/"); + if(slf1.compare(slf,Qt::CaseInsensitive)==0) + { + if(m_Names[0].m_strWellName == strWellName) + { + iCount = nSlfCount-m_Names.size(); + } + } + + } + m_pTableModel->setRowCount(iCount); + + int iIndex = 0; + for(int i = 0; i< nSlfCount; i++) + { + float sdep=0, edep=0; + + logio->GetObjectName(i,curvename,NULL,aliasname); + if(!logio->IsObject(i)) { + logio->DiscardObject(i); + continue; + }; + if(logio->GetObjectStatus(i)!=OBJECT_NORMAL) + { + continue; + } + short curvetype=logio->GetObjectType(i); + // + short Attribute=0,SubAttribute=0; + logio->GetObjectAttribute(i,&Attribute,&SubAttribute); + + QString strCurveName = QString::fromLocal8Bit(curvename); + if(curvetype>CARD_OBJECT || 0 == curvetype) + { + qDebug() << "strCurveName: " << strCurveName; + //表格数据 + + } + else if(CURVE_OBJECT == curvetype) + { + //曲线 + //判断曲线有效性 + Slf_CURVE acurveinfo; + logio->GetCurveInfo(i,&acurveinfo); + if(acurveinfo.DepLevel!=0&&(acurveinfo.EndDepth-acurveinfo.StartDepth>0)) + { + if(acurveinfo.MaxValue==acurveinfo.MinValue||acurveinfo.MaxValue==-99999||acurveinfo.MaxValue==-9999||acurveinfo.MinValue==999999||acurveinfo.MinValue==999999||acurveinfo.MinValue==99999||acurveinfo.MinValue==99999||acurveinfo.MinValue==-9999){ + int curveindex=logio->OpenSlfTable(i,-1); + if(curveindex>-1) + { + MyDataTypeEnum vVdl; + DWORD count=(acurveinfo.EndDepth-acurveinfo.StartDepth)/acurveinfo.DepLevel+1.5; + DWORD len=count*acurveinfo.CodeLen; + acurveinfo.MinValue=99999999; + acurveinfo.MaxValue=-99999999; + if(acurveinfo.CodeLen==8) acurveinfo.MinValue=99999999; + vVdl.vchar=new char[len]; + len=logio->ReadCurve(curveindex, acurveinfo.StartDepth,count,(void *)vVdl.vchar); + if(!len) { + QString cs; + char buf[1000]; + sprintf(buf,"%s %f-%f",acurveinfo.Name,acurveinfo.StartDepth,acurveinfo.EndDepth); + cs=buf; + int flag = QMessageBox::warning(NULL,"提示",QString(cs+"\n曲线信息异常!删除该曲线可能需要较长时间,建议复制正常曲线等信息到新文件,然后删除此文件。是否此时直接将该曲线删除?"),QMessageBox::Yes,QMessageBox::No); + if(flag==QMessageBox::Yes) logio->DiscardObject(i); + delete vVdl.vchar; + continue; + } + for(int kk=0;kkGetData(acurveinfo.RepCode,&vVdl.vchar[kk*acurveinfo.CodeLen],buf); + +#ifdef WIN32 + if(_isnan(temp)||!_finite(temp)) continue; +#else + if(qIsNaN(temp)||!qIsFinite(temp)) continue; +#endif // WIN32 + + if(acurveinfo.MaxValuetemp) if(temp!=-9999.0&&temp!=-999.25&&temp!=-99999.0)acurveinfo.MinValue=temp; + } + logio->SetCurveInfo(curveindex,&acurveinfo); + delete vVdl.vchar; + } + } + } + else if(acurveinfo.DepLevel==0||acurveinfo.StartDepth<-100000||acurveinfo.StartDepth>100000) + { + QString cs; + char buf[1000]; + sprintf(buf,"%s %f-%f",acurveinfo.Name,acurveinfo.StartDepth,acurveinfo.EndDepth); + cs=buf; + int flag = QMessageBox::warning(NULL,"提示",QString(cs+"\n曲线信息异常!删除该曲线可能需要较长时间,建议复制正常曲线等信息到新文件,然后删除此文件。是否此时直接将该曲线删除?"),QMessageBox::Yes,QMessageBox::No); + if(flag==QMessageBox::Yes) logio->DiscardObject(i); + continue; + } + + //下拉列表 + int ret=0; + if(iCount != nSlfCount)//同一口井,且已经选择校正曲线 + { + for(int iLoop=0; iLoopGetWaveInfo(i, &_wave); + sdep = _wave.StartDepth; + edep = _wave.EndDepth; + } + else if(TDT_OBJECT == curvetype) + { + //TDT-》树图 + + } + + //组织表格数据--------------------------- + QStandardItem* item = new QStandardItem(); + item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable); + item->setCheckState(Qt::Unchecked); + char buf[100]; + sprintf(buf,"%d",iIndex+1); + item->setText(buf); + m_pTableModel->setItem(iIndex,T_COLUMN_IS_CHECK_,item); + + item = new QStandardItem(); + item->setText(strCurveName); + item->setData(qVariantFromValue(curvetype)); + item->setEditable(false); + m_pTableModel->setItem(iIndex,T_COLUMN_NAME_,item); + + item = new QStandardItem(); + if(curvetype==CURVE_OBJECT) item->setText("曲线"); + else if(curvetype==WAVE_OBJECT) item->setText("波列"); + else if(curvetype==TABLEE_OBJECT) item->setText("表格"); + else item->setText(""); + m_pTableModel->setItem(iIndex,T_COLUMN_OUTNAME_,item); + + item = new QStandardItem(); + if(curvetype==CURVE_OBJECT || curvetype==WAVE_OBJECT) { + char buf[200]; + sprintf(buf,"%g",sdep);//pLog->GetTopDepth() + item->setText(buf); + } + else item->setText(""); + m_pTableModel->setItem(iIndex,T_COLUMN_OUTNAME_+1,item); + + item = new QStandardItem(); + if(curvetype==CURVE_OBJECT || curvetype==WAVE_OBJECT) { + char buf[200]; + sprintf(buf,"%g",edep);//pLog->GetBottomDepth() + item->setText(buf); + } + else item->setText(""); + m_pTableModel->setItem(iIndex,T_COLUMN_OUTNAME_+2,item); + + if(g_pShiftCurves.size()>0) { + int countTmp=g_pShiftCurves.size(); + for(int j=0;jitem(iIndex, T_COLUMN_IS_CHECK_)->setCheckState( Qt::Checked ); + break; + } + } + } + } + + //编号 + iIndex++; + } + delete []curvename; + delete []aliasname; + delete logio; + //delete []pEntry; + } +} +void CchooseShiftCurvesDlg::slotCancelSelectClicked() +{ + for(int i = 0; i < m_pTableModel->rowCount(); i++) + { + m_pTableModel->item(i,T_COLUMN_IS_CHECK_)->setCheckState( Qt::Unchecked ); + } +} diff --git a/logPlus/chooseShiftCurvesDlg.h b/logPlus/chooseShiftCurvesDlg.h new file mode 100644 index 0000000..f4b9f7d --- /dev/null +++ b/logPlus/chooseShiftCurvesDlg.h @@ -0,0 +1,38 @@ +/** +* @file chooseShiftCurvesDlg.h +* @brief 创建图头表格属性配置对话框 +* @date 2015-03 +* @author: lxl +*/ +#pragma warning( push , 0 ) +#include "ObjWell.h" +#include +#include "geometryutils.h" +#pragma warning( pop ) +class Ui_chooseShiftCurves; +class CchooseShiftCurvesDlg : public QDialog +{ + Q_OBJECT +public: + CchooseShiftCurvesDlg(QList names, bool isHaseCurve=true); + ~CchooseShiftCurvesDlg(); +public: + void Init(QList ShiftCurves); +private slots: + void slotCancelSelectClicked(); + void slotSelectAllClicked(); + void slotSelectWellClicked(); + + void slotOnOkBtnClicked(); + void slotOnCancelBtnClicked(); +private: + Ui_chooseShiftCurves *m_pDialog; + QStandardItemModel *m_pTableModel; + void SetTableView(QString strWellName, QString strSlfName); +public: + bool m_isHaveCurve; + QList m_Names; + + QString m_strWellName = ""; + QString m_strSlfName = ""; +}; diff --git a/logPlus/forminfo.cpp b/logPlus/forminfo.cpp index 5eb965f..e9e99b0 100644 --- a/logPlus/forminfo.cpp +++ b/logPlus/forminfo.cpp @@ -2889,9 +2889,10 @@ int FormInfo::getFillTypeIndex() void FormInfo::s_ChangeLineStatus(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, int iSelect, bool bMerge) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + //m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && - m_strTrackName == strTrackName && + //m_strTrackName == strTrackName && //针对批量设置,无法获取道名 m_strLineName == strLineName) { m_iSelect = iSelect; @@ -2904,7 +2905,7 @@ void FormInfo::s_ChangeLineStatus(QString strUuid, QString strSlfName, QString s void FormInfo::s_ChangeLeftScale(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double newLeftScale) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -2918,7 +2919,7 @@ void FormInfo::s_ChangeLeftScale(QString strUuid, QString strSlfName, QString st void FormInfo::s_ChangeRightScale(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double newRightScale) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -2932,7 +2933,7 @@ void FormInfo::s_ChangeRightScale(QString strUuid, QString strSlfName, QString s void FormInfo::s_ChangeScaleType(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strScaleType) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -2945,7 +2946,7 @@ void FormInfo::s_ChangeScaleType(QString strUuid, QString strSlfName, QString st void FormInfo::s_ChangeLineColor(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -2959,7 +2960,7 @@ void FormInfo::s_ChangeLineColor(QString strUuid, QString strSlfName, QString st void FormInfo::s_ChangeLineWidth(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double width) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -2973,7 +2974,7 @@ void FormInfo::s_ChangeLineWidth(QString strUuid, QString strSlfName, QString st void FormInfo::s_ChangeLineStyle(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, Qt::PenStyle lineStyle) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -2987,7 +2988,7 @@ void FormInfo::s_ChangeLineStyle(QString strUuid, QString strSlfName, QString st void FormInfo::s_ChangePointStyle(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QCPScatterStyle::ScatterShape pointStyle) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -3025,7 +3026,7 @@ void FormInfo::s_ChangeTvdProperty(QString strUuid, QString strSlfName, QString QObject *pTvd) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -3042,7 +3043,7 @@ void FormInfo::s_ChangeTvdProperty(QString strUuid, QString strSlfName, QString void FormInfo::s_ClearFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -3058,7 +3059,7 @@ void FormInfo::s_ChangeFillMode(QString strUuid, QString strSlfName, QString str float vMin, float vMax, QString strOtherScaleType, QColor frontColor, QColor backColor, QString newFillMode, bool bFillNow) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) diff --git a/logPlus/logPlus.pro b/logPlus/logPlus.pro index 1c3f3c1..a208334 100644 --- a/logPlus/logPlus.pro +++ b/logPlus/logPlus.pro @@ -63,6 +63,7 @@ SOURCES += \ ViewInfo.cpp \ YxzpDialog.cpp \ backgrounddelegate.cpp \ + chooseShiftCurvesDlg.cpp \ customtabbar.cpp \ customtabwidget.cpp \ fileedit.cpp \ @@ -138,6 +139,7 @@ HEADERS += \ ViewInfo.h \ YxzpDialog.h \ backgrounddelegate.h \ + chooseShiftCurvesDlg.h \ customtabbar.h \ customtabwidget.h \ fileedit.h \ @@ -177,6 +179,7 @@ HEADERS += \ FORMS += \ InDefTable.ui \ SetPageMeg.ui \ + chooseShiftCurves.ui \ formdraw.ui \ formhead.ui \ formimage.ui \ diff --git a/logPlus/mainwindowcurve.cpp b/logPlus/mainwindowcurve.cpp index 974afac..1449a8e 100644 --- a/logPlus/mainwindowcurve.cpp +++ b/logPlus/mainwindowcurve.cpp @@ -29,6 +29,7 @@ #include "wellheader.h" #include #include "SetPageMegDlg.h" +#include "chooseShiftCurvesDlg.h" //主窗口,为了方便获取tab当前页 extern MainWindow *g_mainWindow; @@ -72,6 +73,9 @@ extern double FIXED_LOGRight_MARGIN_CM; extern double FIXED_LOGHead_MARGIN_CM; extern double FIXED_LOGBottom_MARGIN_CM; +//批量选择从曲线 +extern QList g_pShiftCurves; + MainWindowCurve::MainWindowCurve(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindowCurve) @@ -1254,7 +1258,7 @@ void MainWindowCurve::initToolBar_2() ui->toolBar_2->addSeparator(); ui->toolBar_2->addAction(m_StandardAc); ui->toolBar_2->addAction(m_CorrectionAc); - //ui->toolBar_2->addAction(m_ShiftotherAc); + ui->toolBar_2->addAction(m_ShiftotherAc); ui->toolBar_2->addSeparator(); ui->toolBar_2->addAction(m_autocorAc); ui->toolBar_2->addAction(m_runcorAc); @@ -1267,7 +1271,7 @@ void MainWindowCurve::initToolBar_2() // connect(m_DepthShiftAc, &QAction::triggered, this, &MainWindowCurve::s_DepthShift); connect(m_StandardAc, &QAction::triggered, this, &MainWindowCurve::s_Standard); connect(m_CorrectionAc, &QAction::triggered, this, &MainWindowCurve::s_Correction); -// connect(m_ShiftotherAc, &QAction::triggered, this, &MainWindowCurve::s_Shiftother); + connect(m_ShiftotherAc, &QAction::triggered, this, &MainWindowCurve::s_Shiftother); connect(m_autocorAc, &QAction::triggered, this, &MainWindowCurve::s_autocor); connect(m_runcorAc, &QAction::triggered, this, &MainWindowCurve::s_runcor); connect(m_ClearAllSetCurveAc, &QAction::triggered, this, &MainWindowCurve::s_ClearAllSetCurve); @@ -2121,6 +2125,53 @@ void MainWindowCurve::s_DelAllShiftLine(QString strUuid) } } +//批量设置从校正曲线 +void MainWindowCurve::s_Shiftother() +{ + QList m_numbersCurve; + //当前有标准曲线 + if(m_LeftCurve.m_iTableType==3 && m_LeftCurve.m_strFormInfoType=="curveObject") + { + m_numbersCurve.append(m_LeftCurve); + } + //当前有主校曲线 + if(m_RightCurve.m_iTableType==3 && m_RightCurve.m_strFormInfoType=="curveObject") + { + m_numbersCurve.append(m_RightCurve); + } + + // 创建对话框 + CchooseShiftCurvesDlg *dlg = new CchooseShiftCurvesDlg(m_numbersCurve); + dlg->Init(m_ShiftCurves); + // + dlg->setAttribute(Qt::WA_DeleteOnClose);//关闭时,自动删除窗口对象 + int result = dlg->exec();//模态对话框 + if (result == QDialog::Accepted) { + // 处理用户点击了确定按钮的逻辑 + qDebug() << "Accepted="; + + //清除全部从曲线设置 + s_ClearSetCurve(); + + for(int i=0; isig_ChangeLineStatus(m_strUuid, g_pShiftCurves[i].m_strSlfName, g_pShiftCurves[i].m_strWellName, g_pShiftCurves[i].m_strTrackName, g_pShiftCurves[i].m_strLineName, 3, m_bMerge); + + //设置从校曲线 + m_ShiftCurves.append(g_pShiftCurves[i]); + } + } + else if (result == QDialog::Rejected) { + // 处理用户点击了取消按钮的逻辑 + qDebug() << "Rejected="; + } + else { + // 处理其他情况的逻辑 + qDebug() << "other="; + } +} + //自动对比 void MainWindowCurve::s_autocor() { @@ -3847,6 +3898,12 @@ void MainWindowCurve::_slotExport(QPrinter &printer, int IsBmp, QString pngName, // changeDepthForPrint(); // } + m_hvDraw->setChecked(true); //默认选中-竖 + if (m_bHVDisplay) + { + restoreOriginalCentralWidget(); + } + //预览 m_PreviewPrintAc->setChecked(true); //切换回锁头模式 diff --git a/logPlus/mainwindowcurve.h b/logPlus/mainwindowcurve.h index 5db1be7..fc53294 100644 --- a/logPlus/mainwindowcurve.h +++ b/logPlus/mainwindowcurve.h @@ -11,17 +11,6 @@ #pragma execution_character_set("utf-8") -struct SelectTableItem -{ - int m_iTableType=0; // 当前选中数据表格的类型,1:井次, 2:道, 3:曲线\表格\波列\参数卡 - - QString m_strUuid=""; - QString m_strWellName=""; - QString m_strSlfName=""; - QString m_strTrackName=""; - QString m_strLineName=""; - QString m_strFormInfoType="";//类型:curve, wave -}; class MainWindowSplitter; class MyGraphicsView; @@ -340,6 +329,8 @@ public slots: void s_Standard(); //设置/取消校正曲线 void s_Correction(); + //批量设置从校正曲线 + void s_Shiftother(); //自动对比 void s_autocor(); //执行校正 diff --git a/logPlus/qmycustomplot.cpp b/logPlus/qmycustomplot.cpp index 2e308fb..99490e4 100644 --- a/logPlus/qmycustomplot.cpp +++ b/logPlus/qmycustomplot.cpp @@ -4726,7 +4726,7 @@ void QMyCustomPlot::addRightListToPlot( QList new_DepthList, QList new_DepthList, QList new_ValueList) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -5144,7 +5144,7 @@ void QMyCustomPlot::s_PreMerge_FromRightList(QString strUuid, QString strSlfName void QMyCustomPlot::s_PreMergeFromPlot(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -5184,7 +5184,7 @@ void QMyCustomPlot::s_PreMergeFromPlot(QString strUuid, QString strSlfName, QStr //Plot重新加载数据 void QMyCustomPlot::s_ReloadPlot(QString strUuid, QString strSlfName, QString strLineName) { - if(m_strSlfName == strSlfName && + if(m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strLineName == strLineName) { } @@ -5280,7 +5280,7 @@ void QMyCustomPlot::s_ReloadPlot(QString strUuid, QString strSlfName, QString st void QMyCustomPlot::s_Refresh_All(QString strUuid, QString strSlfName, QString strWellName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName) { @@ -5374,7 +5374,7 @@ void QMyCustomPlot::s_changeDrawProperty(QVariantList vlist) QString strLineName = vlist.at(4).toString(); if (m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -5496,7 +5496,7 @@ void QMyCustomPlot::s_changeDepthProperty(QVariantList vlist) QString strLineName = vlist.at(4).toString(); if (m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6206,7 +6206,7 @@ void QMyCustomPlot::removeSelectedGraphByTitle() void QMyCustomPlot::s_Raise(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, int iTableType, QString strFormInfoType) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName && @@ -6220,7 +6220,7 @@ void QMyCustomPlot::s_Raise(QString strUuid, QString strSlfName, QString strWell void QMyCustomPlot::s_ChangeLeftScale(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double newLeftScale) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6244,7 +6244,7 @@ void QMyCustomPlot::s_ChangeLeftScale(QString strUuid, QString strSlfName, QStri replot(QCustomPlot::rpQueuedReplot); } else if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_newTargetLine == strLineName) @@ -6260,7 +6260,7 @@ void QMyCustomPlot::s_ChangeLeftScale(QString strUuid, QString strSlfName, QStri void QMyCustomPlot::s_ChangeRightScale(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double newRightScale) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6284,7 +6284,7 @@ void QMyCustomPlot::s_ChangeRightScale(QString strUuid, QString strSlfName, QStr replot(QCustomPlot::rpQueuedReplot); } else if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_newTargetLine == strLineName) @@ -6300,7 +6300,7 @@ void QMyCustomPlot::s_ChangeRightScale(QString strUuid, QString strSlfName, QStr void QMyCustomPlot::s_ChangeScaleType(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strScaleType) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6320,7 +6320,7 @@ void QMyCustomPlot::s_ChangeScaleType(QString strUuid, QString strSlfName, QStri replot(); } else if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_newTargetLine == strLineName) @@ -6336,7 +6336,7 @@ void QMyCustomPlot::s_ChangeScaleType(QString strUuid, QString strSlfName, QStri void QMyCustomPlot::s_ChangeLineColor(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6357,7 +6357,7 @@ void QMyCustomPlot::s_ChangeLineColor(QString strUuid, QString strSlfName, QStri void QMyCustomPlot::s_ChangeLineWidth(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double width) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6379,7 +6379,7 @@ void QMyCustomPlot::s_ChangeLineWidth(QString strUuid, QString strSlfName, QStri void QMyCustomPlot::s_ChangeLineStyle(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, Qt::PenStyle lineStyle) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6396,7 +6396,7 @@ void QMyCustomPlot::s_ChangeLineStyle(QString strUuid, QString strSlfName, QStri void QMyCustomPlot::s_ChangePointStyle(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QCPScatterStyle::ScatterShape pointStyle) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6457,7 +6457,7 @@ void QMyCustomPlot::s_ChangePointStyle(QString strUuid, QString strSlfName, QStr void QMyCustomPlot::ChangeDrawMethod(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6516,7 +6516,7 @@ void QMyCustomPlot::ChangeDrawMethod(QString strUuid, QString strSlfName, QStrin void QMyCustomPlot::s_ChangeDrawLine(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, bool bDrawLine) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6537,7 +6537,7 @@ void QMyCustomPlot::s_ChangeDrawLine(QString strUuid, QString strSlfName, QStrin void QMyCustomPlot::s_ChangeDrawGan(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, bool bDrawGan) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6558,7 +6558,7 @@ void QMyCustomPlot::s_ChangeDrawGan(QString strUuid, QString strSlfName, QString void QMyCustomPlot::s_ChangeDrawPoint(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, bool bDrawPoint) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6579,7 +6579,7 @@ void QMyCustomPlot::s_ChangeDrawPoint(QString strUuid, QString strSlfName, QStri void QMyCustomPlot::s_ChangeDrawSymmetry(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, bool bDrawSymmetry) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6685,7 +6685,7 @@ void QMyCustomPlot::s_ChangeDrawSymmetry(QString strUuid, QString strSlfName, QS void QMyCustomPlot::s_ClearFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -6717,7 +6717,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7511,7 +7511,7 @@ void QMyCustomPlot::slot_time() void QMyCustomPlot::s_changeGujingLine(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strNewLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7532,7 +7532,7 @@ void QMyCustomPlot::s_changeGujingLine(QString strUuid, QString strSlfName, QStr void QMyCustomPlot::s_changeJiegutextLine(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strNewLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7553,7 +7553,7 @@ void QMyCustomPlot::s_changeJiegutextLine(QString strUuid, QString strSlfName, Q void QMyCustomPlot::s_changeJiegutextTitle(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strAliasName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7591,7 +7591,7 @@ void QMyCustomPlot::s_changeJiegutextTitle(QString strUuid, QString strSlfName, void QMyCustomPlot::s_changeGeoLithLine(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double dOilZhan) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7624,7 +7624,7 @@ void QMyCustomPlot::s_changeGeoLithLine(QString strUuid, QString strSlfName, QSt void QMyCustomPlot::s_changeGeoLithShow(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString propertyData, bool bShow) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7681,7 +7681,7 @@ void QMyCustomPlot::s_changeGeoLithShow(QString strUuid, QString strSlfName, QSt void QMyCustomPlot::s_changeFacShow(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString propertyData, bool bShow) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7847,7 +7847,7 @@ void QMyCustomPlot::DrawTubing() void QMyCustomPlot::s_changeGuanShow(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString propertyData, bool bShow) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -7951,7 +7951,7 @@ void QMyCustomPlot::s_changeGuanShow(QString strUuid, QString strSlfName, QStrin void QMyCustomPlot::s_changeGuanD(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString propertyData, double newD) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -10650,7 +10650,7 @@ void QMyCustomPlot::RefreshItems_Tubing() void QMyCustomPlot::s_changeLineName(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strNewLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -12912,7 +12912,7 @@ void QMyCustomPlot::DrawDip_Kedou() void QMyCustomPlot::s_changeKedouProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -12931,7 +12931,7 @@ void QMyCustomPlot::s_changeKedouProperty(QString strUuid, QString strSlfName, Q void QMyCustomPlot::s_changeGanzhuangProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -13103,7 +13103,7 @@ void QMyCustomPlot::Draw_Ganzhuang() void QMyCustomPlot::s_changeJyktProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -13240,7 +13240,7 @@ void QMyCustomPlot::Draw_Jykt() void QMyCustomPlot::s_changeDenvProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName) @@ -13360,7 +13360,7 @@ void QMyCustomPlot::Draw_Denv() void QMyCustomPlot::s_changeMCalsProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strNewLineName) { if(m_strUuid == strUuid && - m_strSlfName == strSlfName && + m_strSlfName.compare(strSlfName,Qt::CaseInsensitive)==0 && m_strWellName == strWellName && m_strTrackName == strTrackName && m_strLineName == strLineName)