Merge pull request #9048 from OPM/9047-performance-avoid-update-project

- Avoid update of project when creating new objects
- Added icon resource cache
- Avoid use of descendantsIncludingThisOfType()
This commit is contained in:
Magne Sjaastad authored and GitHub committed 2022-06-13 13:54:55 +02:00
1 parent 7d246c1535
commit ccbda23b96
29 files changed
+184 -149

No files matched your search

@@ -19,7 +19,7 @@
#include "RimEclipseResultAddress.h"
#include "RimEclipseCase.h"
#include "RimProject.h"
#include "RimEclipseCaseTools.h"
CAF_PDM_SOURCE_INIT( RimEclipseResultAddress, "EclipseResultAddress" );
@@ -104,16 +104,10 @@ QList<caf::PdmOptionItemInfo> RimEclipseResultAddress::calculateValueOptions( co
if ( fieldNeedingOptions == &m_eclipseCase )
{
RimProject* proj = nullptr;
this->firstAncestorOrThisOfType( proj );
if ( proj )
auto cases = RimEclipseCaseTools::eclipseCases();
for ( auto* c : cases )
{
std::vector<RimEclipseCase*> cases;
proj->descendantsIncludingThisOfType( cases );
for ( auto* c : cases )
{
options.push_back( caf::PdmOptionItemInfo( c->caseUserDescription(), c, false, c->uiIconProvider() ) );
}
options.push_back( caf::PdmOptionItemInfo( c->caseUserDescription(), c, false, c->uiIconProvider() ) );
}
}