diff --git a/ApplicationLibCode/Commands/RicImportVfpDataFeature.cpp b/ApplicationLibCode/Commands/RicImportVfpDataFeature.cpp index a683df885c..8239967204 100644 --- a/ApplicationLibCode/Commands/RicImportVfpDataFeature.cpp +++ b/ApplicationLibCode/Commands/RicImportVfpDataFeature.cpp @@ -39,15 +39,6 @@ CAF_CMD_SOURCE_INIT( RicImportVfpDataFeature, "RicImportVfpDataFeature" ); -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -bool RicImportVfpDataFeature::isCommandEnabled() const -{ - auto plotColl = caf::firstAncestorOfTypeFromSelectedObject(); - return ( plotColl != nullptr ); -} - //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- diff --git a/ApplicationLibCode/Commands/RicImportVfpDataFeature.h b/ApplicationLibCode/Commands/RicImportVfpDataFeature.h index 801d8545f0..e7af6a103b 100644 --- a/ApplicationLibCode/Commands/RicImportVfpDataFeature.h +++ b/ApplicationLibCode/Commands/RicImportVfpDataFeature.h @@ -28,7 +28,6 @@ class RicImportVfpDataFeature : public caf::CmdFeature CAF_CMD_HEADER_INIT; private: - bool isCommandEnabled() const override; void onActionTriggered( bool isChecked ) override; void setupActionLook( QAction* actionToSetup ) override; }; diff --git a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.cpp b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.cpp index 9cbd98ce51..faeeaf2736 100644 --- a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.cpp +++ b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.cpp @@ -20,6 +20,7 @@ #include "RimOilField.h" #include "RimProject.h" +#include "RimVfpPlotCollection.h" #include "RimVfpTableData.h" CAF_PDM_SOURCE_INIT( RimVfpDataCollection, "RimVfpDataCollection" ); @@ -63,3 +64,11 @@ std::vector RimVfpDataCollection::vfpTableData() const { return m_vfpTableData.childrenByType(); } + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimVfpDataCollection::appendMenuItems( caf::CmdFeatureMenuBuilder& menuBuilder ) const +{ + RimVfpPlotCollection::addImportItems( menuBuilder ); +} diff --git a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.h b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.h index 26e25a9416..2f45c192bf 100644 --- a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.h +++ b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpDataCollection.h @@ -38,6 +38,9 @@ class RimVfpDataCollection : public caf::PdmObject RimVfpTableData* importFromFile( const QString& fileName ); std::vector vfpTableData() const; +private: + void appendMenuItems( caf::CmdFeatureMenuBuilder& menuBuilder ) const override; + private: caf::PdmChildArrayField m_vfpTableData; }; diff --git a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.cpp b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.cpp index b35a79bb18..734cd655a5 100644 --- a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.cpp +++ b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.cpp @@ -152,6 +152,18 @@ void RimVfpPlotCollection::deleteAllPlots() m_vfpDecks.deleteChildren(); } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimVfpPlotCollection::addImportItems( caf::CmdFeatureMenuBuilder& menuBuilder ) +{ + // A variant with a true value is used to indicate that the VFP data is imported from a file + // This is used to distinguish between VFP data imported from a file and VFP data imported from a simulator + QVariant variant( QVariant::fromValue( true ) ); + menuBuilder.addCmdFeatureWithUserData( "RicImportVfpDataFeature", "Import VFP Files", variant ); + menuBuilder.addCmdFeature( "RicImportVfpDataFeature", "Import VFP from Simulator Files" ); +} + //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- @@ -184,9 +196,5 @@ void RimVfpPlotCollection::loadDataAndUpdateAllPlots() //-------------------------------------------------------------------------------------------------- void RimVfpPlotCollection::appendMenuItems( caf::CmdFeatureMenuBuilder& menuBuilder ) const { - // A variant with a true value is used to indicate that the VFP data is imported from a file - // This is used to distinguish between VFP data imported from a file and VFP data imported from a simulator - QVariant variant( QVariant::fromValue( true ) ); - menuBuilder.addCmdFeatureWithUserData( "RicImportVfpDataFeature", "Import VFP Files", variant ); - menuBuilder.addCmdFeature( "RicImportVfpDataFeature", "Import VFP from Simulator Files" ); + addImportItems( menuBuilder ); } diff --git a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.h b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.h index e6325816d3..a489deccbd 100644 --- a/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.h +++ b/ApplicationLibCode/ProjectDataModel/VerticalFlowPerformance/RimVfpPlotCollection.h @@ -47,6 +47,8 @@ class RimVfpPlotCollection : public caf::PdmObject, public RimTypedPlotCollectio void removePlot( RimVfpPlot* vfpPlot ) final; void deleteAllPlots() override; + static void addImportItems( caf::CmdFeatureMenuBuilder& menuBuilder ); + private: void loadDataAndUpdateAllPlots() override; void onChildrenUpdated( caf::PdmChildArrayFieldHandle* childArray, std::vector& updatedObjects ) override;