#12310 Summary plot and RFT plot adjustments

* Use vector name as axis object text, avoid identifier text
* Select the plot clicked at in the Project Tree
* Make sure RFT plots are updated when summary case and ensemble is changed
* Make sure all plots are updated for multiselect and toggle statistics
* Allow paste of plot on top level plot collection
* Allow multiple top level plots as destination for Append operations
This commit is contained in:
Magne Sjaastad authored and GitHub committed 2025-03-31 08:02:00 +02:00
1 parent c4249e7a64
commit 3cd03c8e1c
30 files changed
+290 -163

No files matched your search

@@ -23,6 +23,7 @@
#include "RicDeleteItemFeature.h"
#include "RimDepthTrackPlot.h"
#include "RimMainPlotCollection.h"
#include "RimProject.h"
#include "RimSummaryCase.h"
@@ -31,10 +32,13 @@
#include "RimSummaryMultiPlotCollection.h"
#include "RimSummaryPlot.h"
#include "RimWellLogPlot.h"
#include "RimWellPlotTools.h"
#include "RimWellRftPlot.h"
#include "RiuPlotMainWindow.h"
#include "cafAsyncObjectDeleter.h"
#include "cafPdmObjectHandleTools.h"
#include "cafSelectionManager.h"
#include "cvfAssert.h"
@@ -62,7 +66,8 @@ void RicCloseSummaryCaseFeature::deleteSummaryCases( std::vector<RimSummaryCase*
RimSummaryCaseMainCollection* summaryCaseMainCollection = RiaSummaryTools::summaryCaseMainCollection();
std::set<RimSummaryMultiPlot*> plotsToUpdate;
std::set<RimWellLogPlot*> wellLogPlotsToDelete;
auto depthTrackPlots = caf::PdmObjectHandleTools::referringAncestorOfType<RimDepthTrackPlot, RimSummaryCase>( cases );
for ( RimSummaryCase* summaryCase : cases )
{
@@ -74,25 +79,12 @@ void RicCloseSummaryCaseFeature::deleteSummaryCases( std::vector<RimSummaryCase*
}
plotsToUpdate.insert( multiPlot );
}
std::vector<caf::PdmObjectHandle*> referringObjects = summaryCase->objectsWithReferringPtrFields();
for ( auto object : referringObjects )
{
if ( !object ) continue;
RimWellLogPlot* wellLogPlot = object->firstAncestorOrThisOfType<RimWellLogPlot>();
if ( wellLogPlot ) wellLogPlotsToDelete.insert( wellLogPlot );
}
}
for ( auto wellLogPlot : wellLogPlotsToDelete )
{
RicDeleteItemFeature::deleteObject( wellLogPlot );
}
summaryCaseMainCollection->removeCases( cases );
RimWellPlotTools::loadDataAndUpdateDepthTrackPlots( depthTrackPlots );
for ( auto plot : plotsToUpdate )
{
plot->updateConnectedEditors();