Port RimSurfaceCollection, RimPolygonCollection and the polygon-in-view
side onto the new caf::PdmNestedCollection framework, replacing the
per-class folder plumbing (m_subCollections field, topmost-folder flag,
add/remove/find sub-collection, factory, "new folder" command) with the
shared base.
- RimSurfaceCollection and RimPolygonCollection now derive from
caf::PdmNestedCollection. Each constructor uses the generic folder
icon and exposes a static createTopmost() that marks the top instance
and applies the branded domain icon; RimOilField calls the factory.
- RimPolygonInViewCollection uses the new RimNestedMirrorCollectionInView
helper, and a new RimPolygonContainer carries the source-side polygon
link.
- RicNewSurfaceCollectionFeature is removed; the generic
RicNewNestedCollectionFeature drives the "Add Folder" action against
both collections.
- Update callers (RimAnnotationCollection, RimEnsembleSurface, polygon
command features) and the scripting wrapper (RimcSurfaceCollection),
plus the Python add-folder binding and polygon test.
Explicitly invoke RimSurfaceCollection::addSurface when adding
statistic surfaces in RimEnsembleSurface's constructor. This
clarifies method resolution and ensures the correct base class
implementation is used.
Add virtual methods (isFileBased, filePath, setFilePath) to RimSurface base
class. Implement these in RimFileSurface and RimRegularFileSurface to provide
a common interface for all file-based surfaces.
Replace class-specific methods (setSurfaceFilePath/surfaceFilePath) with the
common interface methods (setFilePath/filePath) in both RimFileSurface and
RimRegularFileSurface. Update RimEnsembleSurface to use the common interface.
This enables polymorphic treatment of file-based surfaces without changing
the inheritance hierarchy or breaking backward compatibility.
Fixes#13296
* Refactor interface to PdmObjectHandle and PdmFieldHandle
Return objects instead of passing in structures as parameters
* Add nodiscard to several functions
* Remove redundant this->
* Rename to ptrReferencedObjectsByType
* Update titles after dropping vectors into plot
* Do not replace _Name variables
* Make sure signals are wired when opening a project file
* Add auto name field and set default on
* Remove includes from header files
* Performance : Improve surface import
* Performance: Use opm when importing files
* Surface : Use the triangle size as basis for the maximum search distance
* Performance : Resample surfaces in parallell
* Performance: Import file surfaces in parallell
* Ensemble Surface : Create one ensemble per surface