(#163) Sort simulation wells by name

This commit is contained in:
Jacob Støren 2015-11-30 14:02:52 +01:00
parent bd2a65acb4
commit 707e8c68ab
3 changed files with 18 additions and 1 deletions

View File

@ -1138,6 +1138,8 @@ void RimEclipseView::syncronizeWellsWithResults()
{
this->wellCollection()->wells()[wIdx]->setReservoirView(this);
}
this->wellCollection()->sortWellsByName();
}
//--------------------------------------------------------------------------------------------------

View File

@ -333,3 +333,16 @@ void RimEclipseWellCollection::calculateIsWellPipesVisible(size_t frameIndex)
m_isWellPipesVisible[frameIndex][i] = wells[i]->calculateWellPipeVisibility(frameIndex);
}
}
bool lessEclipseWell(const caf::PdmPointer<RimEclipseWell>& w1, const caf::PdmPointer<RimEclipseWell>& w2)
{
return (w1->name() < w2->name());
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimEclipseWellCollection::sortWellsByName()
{
std::sort(wells.begin(), wells.end(), lessEclipseWell);
}

View File

@ -104,13 +104,15 @@ public:
caf::PdmChildArrayField<RimEclipseWell*> wells;
RimEclipseWell* findWell(QString name);
RimEclipseWell* findWell(QString name);
bool hasVisibleWellCells();
bool hasVisibleWellPipes();
void sortWellsByName();
const std::vector<cvf::ubyte>& isWellPipesVisible(size_t frameIndex);
void scheduleIsWellPipesVisibleRecalculation();
protected:
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering);
virtual caf::PdmFieldHandle* objectToggleField();