diff --git a/logPlus/formdraw.cpp b/logPlus/formdraw.cpp index 8df7b19..e68f5a6 100644 --- a/logPlus/formdraw.cpp +++ b/logPlus/formdraw.cpp @@ -3095,6 +3095,10 @@ void FormDraw::s_addWave(QString strUuid, QString strSlfName, QString strWellNam } else { + //此处追加,参照了下方setDrawData函数的处理 + //不然没有设置setRange初始范围,不支持新的右侧滚动条的setRange + curv->m_bX2Y = false; + curv->initWave(strSlfName, strWaveName); _nSamples = curv->getScaleV(); } @@ -3425,7 +3429,8 @@ void FormDraw::s_MouseMove(QString strUuid, QString strWellName, QString strTrac int index=logio->OpenCurve(form->m_strLineName.toStdString().c_str()); if(index<0) { delete logio; - return; + continue; + //return; } logio->ReadCurve(index, dep, 1, &fValue); logio->CloseCurve(index); diff --git a/logPlus/forminfo.cpp b/logPlus/forminfo.cpp index f470f08..a6ee244 100644 --- a/logPlus/forminfo.cpp +++ b/logPlus/forminfo.cpp @@ -1727,6 +1727,13 @@ void FormInfo::contextMenuEvent(QContextMenuEvent *event) menu.addAction(QIcon(::GetImagePath() + "icon/Delete.png"), "删除当前对象", this, &FormInfo::onDeleteTable); menu.exec(event->globalPos()); } + else if(m_strType=="waveObject") + { + QMenu menu(this); + menu.addAction(QIcon(::GetImagePath() + "icon/Sheet.png"), "数据对象查看", this, &FormInfo::onShowWave); + menu.addAction(QIcon(::GetImagePath() + "icon/Delete.png"), "删除当前对象", this, &FormInfo::onDeleteWave); + menu.exec(event->globalPos()); + } else if(m_strType=="JiegutextObject") { //气测/FMT/射孔/文本 @@ -1782,3 +1789,15 @@ void FormInfo::onDeleteTable() //删除表格 emit CallManage::getInstance()->sig_delTableLine(m_strUuid, m_strWellName, m_strTrackName, m_strLineName); } + +//波列查看 +void FormInfo::onShowWave() +{ + emit CallManage::getInstance()->sig_ShowWave(m_strSlfName, m_strLineName); +} +//删除波列 +void FormInfo::onDeleteWave() +{ + //删除Wave + emit CallManage::getInstance()->sig_delWave(m_strUuid, m_strWellName, m_strTrackName, m_strLineName); +} diff --git a/logPlus/forminfo.h b/logPlus/forminfo.h index b1524de..a0ba338 100644 --- a/logPlus/forminfo.h +++ b/logPlus/forminfo.h @@ -362,6 +362,12 @@ public slots: //删除表格 void onDeleteTable(); + + //波列查看 + void onShowWave(); + //删除波列 + void onDeleteWave(); + }; diff --git a/logPlus/formtrack.cpp b/logPlus/formtrack.cpp index 6139713..d71a633 100644 --- a/logPlus/formtrack.cpp +++ b/logPlus/formtrack.cpp @@ -54,15 +54,16 @@ FormTrack::FormTrack(QWidget *parent, QString strWellName, QString strTrackName) this, SLOT(s_delLine(QString, QString, QString, QString))); //表格 - connect(this, SIGNAL(sig_AddWave(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString)), - this, SLOT(s_addWave(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString))); + connect(this, SIGNAL(sig_AddTableLine(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString, QStringList)), + this, SLOT(s_AddTableLine(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString, QStringList))); connect(CallManage::getInstance(), SIGNAL(sig_delTableLine(QString, QString, QString, QString)), this, SLOT(s_delTableLine(QString, QString, QString, QString))); //波列 - connect(this, SIGNAL(sig_AddTableLine(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString, QStringList)), - this, SLOT(s_AddTableLine(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString, QStringList))); - + connect(this, SIGNAL(sig_AddWave(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString)), + this, SLOT(s_addWave(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString))); + connect(CallManage::getInstance(), SIGNAL(sig_delWave(QString, QString, QString, QString)), + this, SLOT(s_delWave(QString, QString, QString, QString))); // 深度 connect(this, SIGNAL(sig_AddDepth(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString)), this, SLOT(s_addDepth(QString, QString, QString, QString, QString, QString, QColor, double, float, float, QString))); @@ -575,6 +576,38 @@ void FormTrack::s_addWave(QString strSlfName, QString strWellName, QString strTr } +void FormTrack::s_delWave(QString strUuid, QString strWellName, QString strTrackName, QString strLineName) +{ + //井名&道名不一致 + if(strUuid == m_strUuid && m_strWellName == strWellName && m_strTrackName == strTrackName) + { + } + else + { + return; + } + // + int rowCount = ui->tableWidget->rowCount(); + for(int i=0; itableWidget->cellWidget(i, 0) != nullptr ) + { + auto myWidget = ui->tableWidget->cellWidget(i, 0); + FormInfo *formInfo = qobject_cast(myWidget);//获得widget + if(formInfo) + { + if(strUuid == formInfo->m_strUuid + && formInfo->m_strWellName == strWellName + && formInfo->m_strTrackName == strTrackName + && formInfo->m_strLineName == strLineName) + { + ui->tableWidget->removeRow(i); + } + } + } + } +} + void FormTrack::s_AddTableLine(QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strAliasName, QString strUnit, QColor lineColor, double dWidth, float vmax, float vmin, QString strScaleType, QStringList listOtherProperty) { if(strLineName == "FRAC_HOLE.TABLE" || strLineName == "WORDS_RELUST" || strLineName == "RESULT" diff --git a/logPlus/formtrack.h b/logPlus/formtrack.h index a10f8bc..c581737 100644 --- a/logPlus/formtrack.h +++ b/logPlus/formtrack.h @@ -107,6 +107,7 @@ public slots: void s_delLine(QString strUuid, QString strWellName, QString strTrackName, QString strLineName); void s_addWave(QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strAliasName, QString strUnit, QColor lineColor, double dWidth, float vmax, float vmin, QString strScaleType); + void s_delWave(QString strUuid, QString strWellName, QString strTrackName, QString strLineName); void s_AddTableLine(QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strAliasName, QString strUnit, QColor lineColor, double dWidth, float vmax, float vmin, QString strScaleType, QStringList listOtherProperty={}); void s_delTableLine(QString strUuid, QString strWellName, QString strTrackName, QString strLineName); diff --git a/logPlus/mainwindow.cpp b/logPlus/mainwindow.cpp index 23007fa..d154432 100644 --- a/logPlus/mainwindow.cpp +++ b/logPlus/mainwindow.cpp @@ -407,13 +407,6 @@ void MainWindow::s_New() void MainWindow::s_Open() { - //关闭老项目 - bool bClosed = closeProject(); - if(!bClosed) - { - return; - } - //打开 QString fileFull = ""; fileFull = QFileDialog::getOpenFileName(this, @@ -422,6 +415,13 @@ void MainWindow::s_Open() tr("项目文件(*.wwl)")); if (!fileFull.isEmpty()) { + //关闭老项目 + bool bClosed = closeProject(); + if(!bClosed) + { + return; + } + emit CallManage::getInstance()->sig_OpenProject(fileFull); } } diff --git a/logPlus/preqtablewidget.cpp b/logPlus/preqtablewidget.cpp index bee6c2f..2d1b5e0 100644 --- a/logPlus/preqtablewidget.cpp +++ b/logPlus/preqtablewidget.cpp @@ -163,19 +163,23 @@ void PreQTableWidget::dropEvent(QDropEvent *event) } else if(strType=="JiegutextObject") { - //删除表格 -// emit CallManage::getInstance()->sig_delTableLine(m_strUuid, strWellName, strTrackName, strLineName); - //气测/FMT/射孔/文本 emit CallManage::getInstance()->sig_AddJiegutext(m_strUuid, strSlfName, strWellName, m_strTrackName, strLineName); } else if(strType=="LogfaceObject") { - //删除表格 -// emit CallManage::getInstance()->sig_delTableLine(m_strUuid, strWellName, strTrackName, strLineName); - - //沉积相 - emit CallManage::getInstance()->sig_AddLogface(m_strUuid, strSlfName, strWellName, m_strTrackName, strLineName); + if (list.size() > 4) + { + QString strListPropertyText = list[4]; + QStringList listOtherProperty = strListPropertyText.split(", "); // 以逗号加空格为分隔符分割字符串 + //沉积相 + emit CallManage::getInstance()->sig_AddLogface(m_strUuid, strSlfName, strWellName, m_strTrackName, strLineName, 0, listOtherProperty); + } + else + { + //沉积相 + emit CallManage::getInstance()->sig_AddLogface(m_strUuid, strSlfName, strWellName, m_strTrackName, strLineName); + } } else if(strType=="MCalsObject") { @@ -184,14 +188,9 @@ void PreQTableWidget::dropEvent(QDropEvent *event) } else if(strType=="TubingstringObject") { - //删除表格 -// emit CallManage::getInstance()->sig_delTableLine(m_strUuid, strWellName, strTrackName, strLineName); - //套管组件 emit CallManage::getInstance()->sig_AddTubingstring(m_strUuid, strSlfName, strWellName, m_strTrackName, strLineName); } - // - //m_listLineName.push_back(strLineName); // 接受拖拽事件 event->setDropAction(Qt::MoveAction); @@ -338,12 +337,124 @@ void PreQTableWidget::performDrag() FormInfo *formInfo = (FormInfo*)myWidget;//获得widget QString strType = formInfo->m_strType; + + //属性信息 + QString strListPropertyText = ""; + if(strType=="curveObject") + { + //曲线 + + } + else if(strType=="waveObject") + { + //波列 + + } + else if(strType=="tableObject") + { + //表格曲线 + + } + else if(strType=="depthObject") + { + //深度 + + } + else if(strType=="ganzhuangtuObject") + { + //杆状图 + + } + else if(strType=="JyktObject") + { + //井眼垮塌矢量图 + + } + else if(strType=="DenvObject") + { + //井斜方位图 + + } + else if(strType=="DrawImageObject") + { + //图像 成图 + + } + else if(strType=="SantuyibiaoObject") + { + //斜井三图一表 + + } + else if(strType=="CrackObject") + { + //裂缝 + + } + else if(strType=="JiegutextObject") + { + //气测/FMT/射孔/文本 + + } + else if(strType=="LogfaceObject") + { + //沉积相 + QStringList listOtherProperty; + listOtherProperty.append(formInfo->m_strAliasName);//别名 + listOtherProperty.append(formInfo->m_lineColor.name());//名称颜色 + listOtherProperty.append(formInfo->m_curveNameFont.toString());//名称字体 + + //沉积相 + if(formInfo->m_bDrawFac) + { + listOtherProperty.append("DrawFac"); + } + else{ + listOtherProperty.append("0"); + } + // + if(formInfo->m_bDrawPhase) + { + listOtherProperty.append("DrawPhase"); + } + else{ + listOtherProperty.append("0"); + } + // + if(formInfo->m_bDrawMFacName) + { + listOtherProperty.append("DrawMFacName"); + } + else{ + listOtherProperty.append("0"); + } + strListPropertyText = listOtherProperty.join(", "); // 合并成一个字符串,元素之间用逗号加空格分隔 + } + else if(strType=="MCalsObject") + { + //多臂井径 + + } + else if(strType=="TubingstringObject") + { + //套管组件 + + } + + //if(strType == "curveObject" || strType == "waveObject") { //曲线对象(AC、BS...) QMimeData *mimeData = new QMimeData; // 这里需要根据你的item数据来设置mimeData,例如: - mimeData->setText(formInfo->m_strSlfName + "#@@#"+ formInfo->m_strWellName + "#@@#" +formInfo->m_strLineName + "#@@#" + strType); + if(strListPropertyText == "") + { + + mimeData->setText(formInfo->m_strSlfName + "#@@#"+ formInfo->m_strWellName + "#@@#" +formInfo->m_strLineName + "#@@#" + strType); + } + else + { + mimeData->setText(formInfo->m_strSlfName + "#@@#"+ formInfo->m_strWellName + "#@@#" +formInfo->m_strLineName + "#@@#" + strType + "#@@#" + strListPropertyText); + } // 创建QDrag对象 QDrag *drag = new QDrag(this); drag->setMimeData(mimeData); diff --git a/svg/svg.pro.user b/svg/svg.pro.user deleted file mode 100644 index 42e9313..0000000 --- a/svg/svg.pro.user +++ /dev/null @@ -1,337 +0,0 @@ - - - - - - EnvironmentId - {04219d0a-2df9-4f31-921d-c25f7a4fa4e5} - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - true - false - 0 - true - true - 0 - 8 - true - 0 - true - true - true - false - - - - ProjectExplorer.Project.PluginSettings - - - -fno-delayed-template-parsing - - true - - - - ProjectExplorer.Project.Target.0 - - Desktop Qt 5.13.0 MSVC2017 64bit - Desktop Qt 5.13.0 MSVC2017 64bit - qt.qt5.5130.win64_msvc2017_64_kit - 1 - 0 - 0 - - D:/Qt/Qt5.13.0/5.13.0/Src/qtsvg/src/build-svg-Desktop_Qt_5_13_0_MSVC2017_64bit-Debug - - - true - qmake - - QtProjectManager.QMakeBuildStep - true - - false - false - false - - - true - Make - - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - - ProjectExplorer.BuildSteps.Build - - - - true - Make - - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Debug - Debug - Qt4ProjectManager.Qt4BuildConfiguration - 2 - true - - - D:/Qt/Qt5.13.0/5.13.0/Src/qtsvg/src/build-svg-Desktop_Qt_5_13_0_MSVC2017_64bit-Release - - - true - qmake - - QtProjectManager.QMakeBuildStep - false - - false - false - true - - - true - Make - - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - - ProjectExplorer.BuildSteps.Build - - - - true - Make - - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Release - Release - Qt4ProjectManager.Qt4BuildConfiguration - 0 - true - - - D:/Qt/Qt5.13.0/5.13.0/Src/qtsvg/src/build-svg-Desktop_Qt_5_13_0_MSVC2017_64bit-Profile - - - true - qmake - - QtProjectManager.QMakeBuildStep - true - - false - true - true - - - true - Make - - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - - ProjectExplorer.BuildSteps.Build - - - - true - Make - - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Profile - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - true - - 3 - - - 0 - 部署 - - ProjectExplorer.BuildSteps.Deploy - - 1 - Deploy Configuration - - ProjectExplorer.DefaultDeployConfiguration - - 1 - - - dwarf - - cpu-cycles - - - 250 - -F - true - 4096 - false - false - 1000 - - true - - false - false - false - false - true - 0.01 - 10 - true - kcachegrind - 1 - 25 - - 1 - true - false - true - valgrind - - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - - 2 - - - Custom Executable - - ProjectExplorer.CustomExecutableRunConfiguration - - 3768 - false - true - false - false - true - - - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.FileVersion - 21 - - - Version - 21 - -