mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#2369 Elm props: Clear cell results on deletion
This commit is contained in:
@@ -48,9 +48,9 @@ void RicImportElementPropertyFeature::onActionTriggered(bool isChecked)
|
|||||||
|
|
||||||
QString defaultDir = app->lastUsedDialogDirectory("ELM_PROPS");
|
QString defaultDir = app->lastUsedDialogDirectory("ELM_PROPS");
|
||||||
QStringList fileNames =
|
QStringList fileNames =
|
||||||
QFileDialog::getOpenFileNames(NULL, "Import Element Property Table", defaultDir, "Property Table (*.inp)");
|
QFileDialog::getOpenFileNames(nullptr, "Import Element Property Table", defaultDir, "Property Table (*.inp)");
|
||||||
|
|
||||||
if (fileNames.size())
|
if (!fileNames.empty())
|
||||||
{
|
{
|
||||||
defaultDir = QFileInfo(fileNames.last()).absolutePath();
|
defaultDir = QFileInfo(fileNames.last()).absolutePath();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -87,6 +87,13 @@ std::map<std::string, std::vector<std::string>> RifElementPropertyReader::scalar
|
|||||||
std::map<std::string, std::vector<float>>
|
std::map<std::string, std::vector<float>>
|
||||||
RifElementPropertyReader::readAllElementPropertiesInFileContainingField(const std::string& fieldName)
|
RifElementPropertyReader::readAllElementPropertiesInFileContainingField(const std::string& fieldName)
|
||||||
{
|
{
|
||||||
|
std::map<std::string, std::vector<float>> fieldAndData;
|
||||||
|
|
||||||
|
if (m_fieldsMetaData.find(fieldName) == m_fieldsMetaData.end())
|
||||||
|
{
|
||||||
|
return fieldAndData;
|
||||||
|
}
|
||||||
|
|
||||||
RifElementPropertyTable table;
|
RifElementPropertyTable table;
|
||||||
RifElementPropertyTableReader::readData(&m_fieldsMetaData[fieldName], &table);
|
RifElementPropertyTableReader::readData(&m_fieldsMetaData[fieldName], &table);
|
||||||
|
|
||||||
@@ -97,8 +104,6 @@ std::map<std::string, std::vector<float>>
|
|||||||
CVF_ASSERT(table.data[i].size() == table.elementIds.size());
|
CVF_ASSERT(table.data[i].size() == table.elementIds.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
std::map<std::string, std::vector<float>> fieldAndData;
|
|
||||||
|
|
||||||
const std::vector<int>& elementIdsFromFile = table.elementIds;
|
const std::vector<int>& elementIdsFromFile = table.elementIds;
|
||||||
|
|
||||||
if (elementIdsFromFile == m_elementIdxToId)
|
if (elementIdsFromFile == m_elementIdxToId)
|
||||||
|
|||||||
@@ -29,6 +29,13 @@
|
|||||||
class RigFemResultAddress
|
class RigFemResultAddress
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
RigFemResultAddress()
|
||||||
|
{
|
||||||
|
resultPosType = RIG_NODAL;
|
||||||
|
fieldName = "";
|
||||||
|
componentName = "";
|
||||||
|
}
|
||||||
|
|
||||||
RigFemResultAddress(RigFemResultPosEnum resPosType,
|
RigFemResultAddress(RigFemResultPosEnum resPosType,
|
||||||
const std::string& aFieldName,
|
const std::string& aFieldName,
|
||||||
const std::string& aComponentName)
|
const std::string& aComponentName)
|
||||||
|
|||||||
@@ -561,6 +561,17 @@ void RimGeoMechCase::closeSelectedElementPropertyFiles()
|
|||||||
{
|
{
|
||||||
geoMechData()->femPartResults()->removeElementPropertyFiles(filesToClose);
|
geoMechData()->femPartResults()->removeElementPropertyFiles(filesToClose);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (RimGeoMechView* view : geoMechViews())
|
||||||
|
{
|
||||||
|
view->cellResult()->setResultAddress(RigFemResultAddress());
|
||||||
|
for (RimGeoMechPropertyFilter* propertyFilter : view->geoMechPropertyFilterCollection()->propertyFilters())
|
||||||
|
{
|
||||||
|
propertyFilter->resultDefinition().p()->setResultAddress(RigFemResultAddress());
|
||||||
|
}
|
||||||
|
|
||||||
|
view->loadDataAndUpdate();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -45,14 +45,14 @@ public:
|
|||||||
caf::PdmChildArrayField<RimGeoMechPropertyFilter*> propertyFilters;
|
caf::PdmChildArrayField<RimGeoMechPropertyFilter*> propertyFilters;
|
||||||
|
|
||||||
// Methods
|
// Methods
|
||||||
bool hasActiveFilters() const;
|
bool hasActiveFilters() const override;
|
||||||
bool hasActiveDynamicFilters() const;
|
bool hasActiveDynamicFilters() const override;
|
||||||
bool isUsingFormationNames() const;
|
bool isUsingFormationNames() const;
|
||||||
|
|
||||||
void loadAndInitializePropertyFilters();
|
void loadAndInitializePropertyFilters() override;
|
||||||
void updateIconState();
|
void updateIconState() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// Overridden methods
|
// Overridden methods
|
||||||
virtual void initAfterRead();
|
virtual void initAfterRead() override;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user