(#1137) - pre-proto - Adding delete/new command for stimplan fracture templates. Removing RimStimPlanFractureDefinition, functionality moved into RimStimPlanFractureTemplate. Renaming RimFractureDefinitionCollection to RimFractureTemplateCollection.

This commit is contained in:
astridkbjorke 2017-02-07 11:08:56 +01:00
parent d52cfc0f0b
commit 22ee6250bd
22 changed files with 143 additions and 317 deletions

View File

@ -28,6 +28,7 @@
#include "RimEllipseFractureTemplate.h"
#include "RimFormationNames.h"
#include "RimFormationNamesCollection.h"
#include "RimStimPlanFractureTemplate.h"
#include "RimGeoMechPropertyFilter.h"
#include "RimGeoMechView.h"
#include "RimIdenticalGridCaseGroup.h"
@ -83,6 +84,7 @@ bool isDeletable(PdmUiItem * uiItem)
if (dynamic_cast<RimWellPathFractureCollection*>(uiItem)) return true;
if (dynamic_cast<RimWellPathFracture*>(uiItem)) return true;
if (dynamic_cast<RimEllipseFractureTemplate*>(uiItem)) return true;
if (dynamic_cast<RimStimPlanFractureTemplate*>(uiItem)) return true;
if (dynamic_cast<RimSimWellFractureCollection*>(uiItem)) return true;
if (dynamic_cast<RimSimWellFracture*>(uiItem)) return true;

View File

@ -19,7 +19,7 @@
#include "RicFractureDefinitionsDeleteAllFeature.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "cafSelectionManager.h"
@ -36,7 +36,7 @@ CAF_CMD_SOURCE_INIT(RicFractureDefinitionsDeleteAllFeature, "RicFractureDefiniti
//--------------------------------------------------------------------------------------------------
bool RicFractureDefinitionsDeleteAllFeature::isCommandEnabled()
{
std::vector<RimFractureDefinitionCollection*> objects;
std::vector<RimFractureTemplateCollection*> objects;
caf::SelectionManager::instance()->objectsByType(&objects);
if (objects.size() == 1)
@ -52,10 +52,10 @@ bool RicFractureDefinitionsDeleteAllFeature::isCommandEnabled()
//--------------------------------------------------------------------------------------------------
void RicFractureDefinitionsDeleteAllFeature::onActionTriggered(bool isChecked)
{
std::vector<RimFractureDefinitionCollection*> objects;
std::vector<RimFractureTemplateCollection*> objects;
caf::SelectionManager::instance()->objectsByType(&objects);
RimFractureDefinitionCollection* fractureDefinitionCollection = nullptr;
RimFractureTemplateCollection* fractureDefinitionCollection = nullptr;
if (objects.size() > 0)
{
fractureDefinitionCollection = objects[0];

View File

@ -22,7 +22,7 @@
#include "RimOilField.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimProject.h"
#include "RiuMainWindow.h"
@ -47,7 +47,7 @@ void RicNewEllipseFractureTemplateFeature::onActionTriggered(bool isChecked)
RimOilField* oilfield = project->activeOilField();
if (oilfield == nullptr) return;
RimFractureDefinitionCollection* fracDefColl = oilfield->fractureDefinitionCollection();
RimFractureTemplateCollection* fracDefColl = oilfield->fractureDefinitionCollection();
if (fracDefColl)
{

View File

@ -23,7 +23,7 @@
#include "RimCase.h"
#include "RimEclipseWell.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimOilField.h"
#include "RimProject.h"
#include "RimSimWellFracture.h"

View File

@ -24,7 +24,7 @@
#include "RimEclipseView.h"
#include "RimEclipseWell.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimOilField.h"
#include "RimProject.h"
#include "RimSimWellFracture.h"

View File

@ -21,7 +21,7 @@
#include "RiaApplication.h"
#include "RimOilField.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimProject.h"
#include "RimStimPlanFractureTemplate.h"
@ -47,7 +47,7 @@ void RicNewStimPlanFractureTemplateFeature::onActionTriggered(bool isChecked)
RimOilField* oilfield = project->activeOilField();
if (oilfield == nullptr) return;
RimFractureDefinitionCollection* fracDefColl = oilfield->fractureDefinitionCollection();
RimFractureTemplateCollection* fracDefColl = oilfield->fractureDefinitionCollection();
if (fracDefColl)
{

View File

@ -22,7 +22,7 @@
#include "RimCase.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimOilField.h"
#include "RimProject.h"
#include "RimView.h"

View File

@ -22,7 +22,7 @@
#include "RimCase.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimOilField.h"
#include "RimProject.h"
#include "RimWellPath.h"

View File

@ -85,14 +85,13 @@ ${CEE_CURRENT_LIST_DIR}RimIntersectionBox.h
${CEE_CURRENT_LIST_DIR}RimMultiSnapshotDefinition.h
${CEE_CURRENT_LIST_DIR}RimMdiWindowController.h
${CEE_CURRENT_LIST_DIR}RimEllipseFractureTemplate.h
${CEE_CURRENT_LIST_DIR}RimFractureDefinitionCollection.h
${CEE_CURRENT_LIST_DIR}RimFractureTemplateCollection.h
${CEE_CURRENT_LIST_DIR}RimFracture.h
${CEE_CURRENT_LIST_DIR}RimWellPathFracture.h
${CEE_CURRENT_LIST_DIR}RimWellPathFractureCollection.h
${CEE_CURRENT_LIST_DIR}RimSimWellFracture.h
${CEE_CURRENT_LIST_DIR}RimSimWellFractureCollection.h
${CEE_CURRENT_LIST_DIR}RimFractureExportSettings.h
${CEE_CURRENT_LIST_DIR}RimStimPlanFractureDefinition.h
${CEE_CURRENT_LIST_DIR}RimFractureTemplate.h
${CEE_CURRENT_LIST_DIR}RimStimPlanFractureTemplate.h
@ -179,14 +178,13 @@ ${CEE_CURRENT_LIST_DIR}RimIntersectionBox.cpp
${CEE_CURRENT_LIST_DIR}RimMultiSnapshotDefinition.cpp
${CEE_CURRENT_LIST_DIR}RimMdiWindowController.cpp
${CEE_CURRENT_LIST_DIR}RimEllipseFractureTemplate.cpp
${CEE_CURRENT_LIST_DIR}RimFractureDefinitionCollection.cpp
${CEE_CURRENT_LIST_DIR}RimFractureTemplateCollection.cpp
${CEE_CURRENT_LIST_DIR}RimFracture.cpp
${CEE_CURRENT_LIST_DIR}RimWellPathFracture.cpp
${CEE_CURRENT_LIST_DIR}RimWellPathFractureCollection.cpp
${CEE_CURRENT_LIST_DIR}RimSimWellFracture.cpp
${CEE_CURRENT_LIST_DIR}RimSimWellFractureCollection.cpp
${CEE_CURRENT_LIST_DIR}RimFractureExportSettings.cpp
${CEE_CURRENT_LIST_DIR}RimStimPlanFractureDefinition.cpp
${CEE_CURRENT_LIST_DIR}RimFractureTemplate.cpp
${CEE_CURRENT_LIST_DIR}RimStimPlanFractureTemplate.cpp

View File

@ -38,7 +38,8 @@
#include "RimFormationNames.h"
#include "RimFormationNamesCollection.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimStimPlanFractureTemplate.h"
#include "RimFractureTemplateCollection.h"
#include "RimGeoMechCase.h"
#include "RimGeoMechPropertyFilter.h"
#include "RimGeoMechPropertyFilterCollection.h"
@ -380,8 +381,9 @@ QStringList RimContextCommandBuilder::commandsFromSelection()
commandIds << "RicNewSimWellFractureFeature";
commandIds << "RicSimWellFracturesDeleteAllFeature";
}
else if (dynamic_cast<RimFractureDefinitionCollection*>(uiItem) ||
dynamic_cast<RimEllipseFractureTemplate*>(uiItem))
else if (dynamic_cast<RimFractureTemplateCollection*>(uiItem) ||
dynamic_cast<RimEllipseFractureTemplate*>(uiItem) ||
dynamic_cast<RimStimPlanFractureTemplate*>(uiItem))
{
commandIds << "RicNewEllipseFractureTemplateFeature";
commandIds << "RicNewStimPlanFractureTemplateFeature";

View File

@ -37,7 +37,7 @@
#include "RimEclipseCellColors.h"
#include "RimEclipseView.h"
#include "RimEllipseFractureTemplate.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimOilField.h"
#include "RimProject.h"
#include "RimReservoirCellResultsStorage.h"
@ -562,7 +562,7 @@ QList<caf::PdmOptionItemInfo> RimFracture::calculateValueOptions(const caf::PdmF
if (fieldNeedingOptions == &m_fractureTemplate)
{
RimFractureDefinitionCollection* fracDefColl = oilField->fractureDefinitionCollection();
RimFractureTemplateCollection* fracDefColl = oilField->fractureDefinitionCollection();
if (fracDefColl == nullptr) return options;
for (RimFractureTemplate* fracDef : fracDefColl->fractureDefinitions())

View File

@ -16,7 +16,7 @@
//
/////////////////////////////////////////////////////////////////////////////////
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimFractureTemplate.h"
#include "cafPdmObject.h"
@ -24,12 +24,12 @@
CAF_PDM_SOURCE_INIT(RimFractureDefinitionCollection, "FractureDefinitionCollection");
CAF_PDM_SOURCE_INIT(RimFractureTemplateCollection, "FractureDefinitionCollection");
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimFractureDefinitionCollection::RimFractureDefinitionCollection(void)
RimFractureTemplateCollection::RimFractureTemplateCollection(void)
{
CAF_PDM_InitObject("Fracture Templates", ":/FractureTemplate16x16.png", "", "");
@ -42,7 +42,7 @@ RimFractureDefinitionCollection::RimFractureDefinitionCollection(void)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimFractureDefinitionCollection::~RimFractureDefinitionCollection()
RimFractureTemplateCollection::~RimFractureTemplateCollection()
{
fractureDefinitions.deleteAllChildObjects();
}
@ -50,7 +50,7 @@ RimFractureDefinitionCollection::~RimFractureDefinitionCollection()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFractureDefinitionCollection::deleteFractureDefinitions()
void RimFractureTemplateCollection::deleteFractureDefinitions()
{
fractureDefinitions.deleteAllChildObjects();
}

View File

@ -28,13 +28,13 @@ class RimFractureTemplate;
///
///
//==================================================================================================
class RimFractureDefinitionCollection : public caf::PdmObject
class RimFractureTemplateCollection : public caf::PdmObject
{
CAF_PDM_HEADER_INIT;
public:
RimFractureDefinitionCollection(void);
virtual ~RimFractureDefinitionCollection(void);
RimFractureTemplateCollection(void);
virtual ~RimFractureTemplateCollection(void);
caf::PdmChildArrayField<RimFractureTemplate*> fractureDefinitions;

View File

@ -22,7 +22,7 @@
#include "RimEclipseCaseCollection.h"
#include "RimFormationNamesCollection.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimGeoMechModels.h"
#include "RimSummaryCaseCollection.h"
@ -44,7 +44,7 @@ RimOilField::RimOilField(void)
CAF_PDM_InitFieldNoDefault(&summaryCaseCollection,"SummaryCaseCollection","Summary Cases",":/GridModels.png","","");
CAF_PDM_InitFieldNoDefault(&formationNamesCollection,"FormationNamesCollection","Formations","","","");
fractureDefinitionCollection = new RimFractureDefinitionCollection();
fractureDefinitionCollection = new RimFractureTemplateCollection();
analysisModels = new RimEclipseCaseCollection();
wellPathCollection = new RimWellPathCollection();
summaryCaseCollection = new RimSummaryCaseCollection();

View File

@ -28,7 +28,7 @@
class RimEclipseCaseCollection;
class RimGeoMechModels;
class RimWellPathCollection;
class RimFractureDefinitionCollection;
class RimFractureTemplateCollection;
class RimSummaryCaseCollection;
class RimFormationNamesCollection;
@ -47,7 +47,7 @@ public:
caf::PdmChildField<RimEclipseCaseCollection*> analysisModels;
caf::PdmChildField<RimGeoMechModels*> geoMechModels;
caf::PdmChildField<RimWellPathCollection*> wellPathCollection;
caf::PdmChildField<RimFractureDefinitionCollection*> fractureDefinitionCollection;
caf::PdmChildField<RimFractureTemplateCollection*> fractureDefinitionCollection;
caf::PdmChildField<RimSummaryCaseCollection*> summaryCaseCollection;
caf::PdmChildField<RimFormationNamesCollection*> formationNamesCollection;

View File

@ -35,7 +35,7 @@
#include "RimEclipseCaseCollection.h"
#include "RimFlowPlotCollection.h"
#include "RimFormationNamesCollection.h"
#include "RimFractureDefinitionCollection.h"
#include "RimFractureTemplateCollection.h"
#include "RimGeoMechCase.h"
#include "RimGeoMechModels.h"
#include "RimGridSummaryCase.h"

View File

@ -1,221 +0,0 @@
/////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2017 - Statoil ASA
//
// ResInsight is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.
//
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
// for more details.
//
/////////////////////////////////////////////////////////////////////////////////
#include "RimStimPlanFractureDefinition.h"
#include "RigFormationNames.h"
#include "RimCase.h"
#include "RimTools.h"
#include "RimView.h"
#include "cafPdmUiFilePathEditor.h"
#include <QFile>
#include <QFileInfo>
#include "QMessageBox"
CAF_PDM_SOURCE_INIT(RimStimPlanFractureDefinition, "StimPlanFractureDefinition");
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimStimPlanFractureDefinition::RimStimPlanFractureDefinition()
{
CAF_PDM_InitObject("Formation Names", ":/Formations16x16.png", "", "");
CAF_PDM_InitField(&m_StimPlanFileName, "StimPlanFileName", QString(""), "File Name", "", "", "");
m_StimPlanFileName.uiCapability()->setUiEditorTypeName(caf::PdmUiFilePathEditor::uiEditorTypeName());
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimStimPlanFractureDefinition::~RimStimPlanFractureDefinition()
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
if (&m_StimPlanFileName == changedField)
{
updateUiTreeName();
QString errorMessage;
readFormationNamesFile(&errorMessage);
if (!errorMessage.isEmpty())
{
QMessageBox::warning(nullptr, "StimPlanFile", errorMessage);
}
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::initAfterRead()
{
updateUiTreeName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::updateUiTreeName()
{
this->uiCapability()->setUiName(fileNameWoPath());
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::setFileName(const QString& fileName)
{
m_StimPlanFileName = fileName;
updateUiTreeName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
const QString& RimStimPlanFractureDefinition::fileName()
{
return m_StimPlanFileName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimStimPlanFractureDefinition::fileNameWoPath()
{
QFileInfo stimplanfileFileInfo(m_StimPlanFileName());
return stimplanfileFileInfo.fileName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::updateConnectedViews()
{
//TODO!!!
// std::vector<caf::PdmObjectHandle*> usingObjs;
// this->objectsWithReferringPtrFields(usingObjs);
// for (caf::PdmObjectHandle* obj: usingObjs)
// {
// RimCase* caseObj = dynamic_cast<RimCase*>(obj);
// if (caseObj)
// {
// caseObj->updateFormationNamesData();
// }
// }
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::readFormationNamesFile(QString * errorMessage)
{
QFile dataFile(m_StimPlanFileName());
if (!dataFile.open(QFile::ReadOnly))
{
if (errorMessage) (*errorMessage) += "Could not open the File: " + (m_StimPlanFileName()) + "\n";
return;
}
// m_formationNamesData = new RigFormationNames;
//
// QTextStream stream(&dataFile);
// int lineNumber = 1;
// while (!stream.atEnd())
// {
// QString line = stream.readLine();
// QStringList lineSegs = line.split("'", QString::KeepEmptyParts);
//
// if(lineSegs.size() == 0) continue; // Empty line
// if(lineSegs.size() == 1) continue; // No name present. Comment line ?
// if(lineSegs.size() == 2)
// {
// if (errorMessage) (*errorMessage) += "Missing quote on line : " + QString::number(lineNumber) + "\n";
// continue; // One quote present
// }
//
// if (lineSegs.size() == 3) // Normal case
// {
// if ( lineSegs[0].contains("--")) continue; // Comment line
// QString formationName = lineSegs[1];
// int commentMarkPos = lineSegs[2].indexOf("--");
// QString numberString = lineSegs[2];
// if (commentMarkPos >= 0) numberString.truncate(commentMarkPos);
//
// QStringList numberWords = numberString.split(QRegExp("-"), QString::SkipEmptyParts);
// if (numberWords.size() == 2)
// {
// bool isNumber1 = false;
// bool isNumber2 = false;
// int startK = numberWords[0].toInt(&isNumber1);
// int endK = numberWords[1].toInt(&isNumber2);
//
// if (!(isNumber2 && isNumber1))
// {
// if (errorMessage) (*errorMessage) += "Format error on line: " + QString::number(lineNumber) + "\n";
// continue;
// }
//
// int tmp = startK; startK = tmp < endK ? tmp : endK;
// endK = tmp > endK ? tmp: endK;
//
// m_formationNamesData->appendFormationRange(formationName, startK-1, endK-1);
// }
// else if (numberWords.size() == 1)
// {
// bool isNumber1 = false;
// int kLayerCount = numberWords[0].toInt(&isNumber1);
//
// if ( !isNumber1 )
// {
// if ( errorMessage ) (*errorMessage) += "Format error on line: " + QString::number(lineNumber) + "\n";
// continue;
// }
//
// m_formationNamesData->appendFormationRangeHeight(formationName, kLayerCount);
// }
// else
// {
// if (errorMessage) (*errorMessage) += "Format error on line: " + QString::number(lineNumber) + "\n";
// }
// }
//
// ++lineNumber;
// }
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureDefinition::updateFilePathsFromProjectPath(const QString& newProjectPath, const QString& oldProjectPath)
{
m_StimPlanFileName = RimTools::relocateFile(m_StimPlanFileName(), newProjectPath, oldProjectPath, NULL, NULL);
}

View File

@ -1,54 +0,0 @@
/////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2017 - Statoil ASA
//
// ResInsight is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.
//
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
// for more details.
//
/////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "cafPdmObject.h"
#include "cafPdmField.h"
#include "cvfObject.h"
// class RigStimPlanFractureDefinition;
class RimStimPlanFractureDefinition : public caf::PdmObject
{
CAF_PDM_HEADER_INIT;
public:
RimStimPlanFractureDefinition();
~RimStimPlanFractureDefinition();
void setFileName(const QString& fileName);
const QString& fileName();
QString fileNameWoPath();
// RigStimPlanFractureDefinition* stimPlanData() { return m_StimPlanFractureDefinitionData.p();}
void updateConnectedViews();
void readFormationNamesFile(QString * errorMessage);
void updateFilePathsFromProjectPath(const QString& newProjectPath, const QString& oldProjectPath);
protected:
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
virtual void initAfterRead() override;
private:
void updateUiTreeName();
caf::PdmField<QString> m_StimPlanFileName;
// cvf::ref<RigStimPlanFractureDefinition> m_StimPlanFractureDefinitionData;
};

View File

@ -22,10 +22,14 @@
#include "RimFracture.h"
#include "RimProject.h"
#include "RigStimPlanFractureDefinition.h"
#include "cafPdmObject.h"
#include "cvfVector3.h"
#include "cafPdmUiFilePathEditor.h"
#include <QMessageBox>
#include <QFileInfo>
@ -38,6 +42,11 @@ RimStimPlanFractureTemplate::RimStimPlanFractureTemplate(void)
{
CAF_PDM_InitObject("Fracture Template", ":/FractureTemplate16x16.png", "", "");
CAF_PDM_InitField(&m_StimPlanFileName, "StimPlanFileName", QString(""), "File Name", "", "", "");
m_StimPlanFileName.uiCapability()->setUiEditorTypeName(caf::PdmUiFilePathEditor::uiEditorTypeName());
}
//--------------------------------------------------------------------------------------------------
@ -52,6 +61,19 @@ RimStimPlanFractureTemplate::~RimStimPlanFractureTemplate()
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureTemplate::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
if (&m_StimPlanFileName == changedField)
{
updateUiTreeName();
QString errorMessage;
readStimPlanXMLFile(&errorMessage);
if (!errorMessage.isEmpty())
{
QMessageBox::warning(nullptr, "StimPlanFile", errorMessage);
}
}
//
// if (changedField == &halfLength || changedField == &height || changedField == &azimuthAngle || changedField == &perforationLength || changedField == &orientation)
// {
@ -108,6 +130,66 @@ void RimStimPlanFractureTemplate::fieldChangedByUi(const caf::PdmFieldHandle* ch
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureTemplate::updateUiTreeName()
{
this->uiCapability()->setUiName(fileNameWoPath());
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureTemplate::setFileName(const QString& fileName)
{
m_StimPlanFileName = fileName;
updateUiTreeName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
const QString& RimStimPlanFractureTemplate::fileName()
{
return m_StimPlanFileName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimStimPlanFractureTemplate::fileNameWoPath()
{
QFileInfo stimplanfileFileInfo(m_StimPlanFileName());
return stimplanfileFileInfo.fileName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimStimPlanFractureTemplate::readStimPlanXMLFile(QString * errorMessage)
{
// QFile dataFile(m_formationNamesFileName());
//
// if (!dataFile.open(QFile::ReadOnly))
// {
// if (errorMessage) (*errorMessage) += "Could not open the File: " + (m_formationNamesFileName()) + "\n";
// return;
// }
//
// m_formationNamesData = new RigFormationNames;
//
// QTextStream stream(&dataFile);
// int lineNumber = 1;
// while (!stream.atEnd())
// {
//
// }
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -148,3 +230,4 @@ void RimStimPlanFractureTemplate::defineUiOrdering(QString uiConfigName, caf::Pd
{
}

View File

@ -21,16 +21,17 @@
#include "cafAppEnum.h"
#include "cafPdmField.h"
#include "cafPdmFieldCvfVec3d.h"
#include "cafPdmFieldHandle.h"
#include "cafPdmObject.h"
#include "cafPdmFieldCvfVec3d.h"
#include "cafPdmPtrField.h"
#include "cvfBase.h"
#include "cvfObject.h"
#include "cvfVector3.h"
#include <vector>
class RimStimPlanFractureDefinition;
class RigStimPlanFractureDefinition;
//==================================================================================================
@ -45,15 +46,30 @@ public:
RimStimPlanFractureTemplate(void);
virtual ~RimStimPlanFractureTemplate(void);
RimStimPlanFractureDefinition* stimPlanFracDef;
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
void fractureGeometry(std::vector<cvf::Vec3f>* nodeCoords, std::vector<cvf::uint>* polygonIndices);
std::vector<cvf::Vec3f> fracturePolygon();
void setFileName(const QString& fileName);
const QString& fileName();
QString fileNameWoPath();
void readStimPlanXMLFile(QString * errorMessage);
protected:
virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering);
private:
void updateUiTreeName();
caf::PdmField<QString> m_StimPlanFileName;
cvf::ref<RigStimPlanFractureDefinition> m_StimPlanFractureDefinitionData;
};