#4262 Tidy up well path menus

This commit is contained in:
Gaute Lindkvist
2019-04-08 11:04:21 +02:00
parent dbac2d71c8
commit 4e10aa8ffa
17 changed files with 176 additions and 114 deletions

View File

@@ -84,7 +84,7 @@ RiuWellPathSelectionItem* RicNewFishbonesSubsAtMeasuredDepthFeature::wellPathSel
void RicNewFishbonesSubsAtMeasuredDepthFeature::setupActionLook(QAction* actionToSetup) void RicNewFishbonesSubsAtMeasuredDepthFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/FishBoneGroup16x16.png")); actionToSetup->setIcon(QIcon(":/FishBoneGroup16x16.png"));
actionToSetup->setText("New Fishbones"); actionToSetup->setText("Create Fishbones at this Depth");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -30,6 +30,7 @@
#include "RimFishbonesMultipleSubs.h" #include "RimFishbonesMultipleSubs.h"
#include "Rim3dView.h" #include "Rim3dView.h"
#include "RimWellPathCollection.h" #include "RimWellPathCollection.h"
#include "RimWellPathCompletions.h"
#include "RiuMainWindow.h" #include "RiuMainWindow.h"
@@ -112,6 +113,11 @@ RimFishbonesCollection* RicNewFishbonesSubsFeature::selectedFishbonesCollection(
{ {
return wellPaths[0]->fishbonesCollection(); return wellPaths[0]->fishbonesCollection();
} }
RimWellPathCompletions* completions = caf::SelectionManager::instance()->selectedItemOfType<RimWellPathCompletions>();
if (completions)
{
return completions->fishbonesCollection();
}
} }
return objToFind; return objToFind;
@@ -123,7 +129,7 @@ RimFishbonesCollection* RicNewFishbonesSubsFeature::selectedFishbonesCollection(
void RicNewFishbonesSubsFeature::setupActionLook(QAction* actionToSetup) void RicNewFishbonesSubsFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/FishBoneGroup16x16.png")); actionToSetup->setIcon(QIcon(":/FishBoneGroup16x16.png"));
actionToSetup->setText("New Fishbones"); actionToSetup->setText("Create Fishbones");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -84,7 +84,7 @@ RiuWellPathSelectionItem* RicNewPerforationIntervalAtMeasuredDepthFeature::wellP
void RicNewPerforationIntervalAtMeasuredDepthFeature::setupActionLook(QAction* actionToSetup) void RicNewPerforationIntervalAtMeasuredDepthFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/PerforationIntervals16x16.png")); actionToSetup->setIcon(QIcon(":/PerforationIntervals16x16.png"));
actionToSetup->setText("New Perforation Interval"); actionToSetup->setText("Create Perforation Interval at this Depth");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -26,6 +26,7 @@
#include "RimPerforationInterval.h" #include "RimPerforationInterval.h"
#include "RimPerforationCollection.h" #include "RimPerforationCollection.h"
#include "RimWellPathCollection.h" #include "RimWellPathCollection.h"
#include "RimWellPathCompletions.h"
#include "cafSelectionManager.h" #include "cafSelectionManager.h"
@@ -75,7 +76,7 @@ void RicNewPerforationIntervalFeature::onActionTriggered(bool isChecked)
void RicNewPerforationIntervalFeature::setupActionLook(QAction* actionToSetup) void RicNewPerforationIntervalFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/PerforationInterval16x16.png")); actionToSetup->setIcon(QIcon(":/PerforationInterval16x16.png"));
actionToSetup->setText("New Perforation Interval"); actionToSetup->setText("Create Perforation Interval");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@@ -101,6 +102,11 @@ RimPerforationCollection* RicNewPerforationIntervalFeature::selectedPerforationC
{ {
return wellPaths[0]->perforationIntervalCollection(); return wellPaths[0]->perforationIntervalCollection();
} }
RimWellPathCompletions* completions = caf::SelectionManager::instance()->selectedItemOfType<RimWellPathCompletions>();
if (completions)
{
return completions->perforationCollection();
}
} }
return objToFind; return objToFind;

View File

@@ -65,5 +65,5 @@ void RicNewValveFeature::onActionTriggered(bool isChecked)
void RicNewValveFeature::setupActionLook(QAction* actionToSetup) void RicNewValveFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/ICDValve16x16.png")); actionToSetup->setIcon(QIcon(":/ICDValve16x16.png"));
actionToSetup->setText("New Valve"); actionToSetup->setText("Create Valve");
} }

View File

@@ -33,6 +33,7 @@
#include "RimSimWellInViewCollection.h" #include "RimSimWellInViewCollection.h"
#include "RimWellPath.h" #include "RimWellPath.h"
#include "RimWellPathCollection.h" #include "RimWellPathCollection.h"
#include "RimWellPathCompletions.h"
#include "RimWellPathFracture.h" #include "RimWellPathFracture.h"
#include "Riu3DMainWindowTools.h" #include "Riu3DMainWindowTools.h"
@@ -173,7 +174,15 @@ void RicWellPathExportCompletionDataFeature::onActionTriggered(bool isChecked)
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RicWellPathExportCompletionDataFeature::setupActionLook(QAction* actionToSetup) void RicWellPathExportCompletionDataFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setText("Export Completion Data for Selected Well Paths"); std::vector<RimWellPath*> selected = selectedWellPaths();
if (selected.size() == 1u)
{
actionToSetup->setText("Export Completion Data for Current Well Path");
}
else
{
actionToSetup->setText("Export Completion Data for Selected Well Paths");
}
actionToSetup->setIcon(QIcon(":/ExportCompletionsSymbol16x16.png")); actionToSetup->setIcon(QIcon(":/ExportCompletionsSymbol16x16.png"));
} }
@@ -189,5 +198,16 @@ std::vector<RimWellPath*> RicWellPathExportCompletionDataFeature::selectedWellPa
std::set<RimWellPath*> uniqueWellPaths(wellPaths.begin(), wellPaths.end()); std::set<RimWellPath*> uniqueWellPaths(wellPaths.begin(), wellPaths.end());
wellPaths.assign(uniqueWellPaths.begin(), uniqueWellPaths.end()); wellPaths.assign(uniqueWellPaths.begin(), uniqueWellPaths.end());
if (wellPaths.empty())
{
RimWellPathCompletions* completions = caf::SelectionManager::instance()->selectedItemOfType<RimWellPathCompletions>();
if (completions)
{
RimWellPath* wellPath = nullptr;
completions->firstAncestorOrThisOfTypeAsserted(wellPath);
wellPaths.push_back(wellPath);
}
}
return wellPaths; return wellPaths;
} }

View File

@@ -75,7 +75,7 @@ void RicNewWellPathIntersectionFeature::onActionTriggered(bool isChecked)
void RicNewWellPathIntersectionFeature::setupActionLook(QAction* actionToSetup) void RicNewWellPathIntersectionFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/CrossSection16x16.png")); actionToSetup->setIcon(QIcon(":/CrossSection16x16.png"));
actionToSetup->setText("New Intersection"); actionToSetup->setText("Create Intersection");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -129,7 +129,7 @@ void RicNewSimWellFractureAtPosFeature::onActionTriggered(bool isChecked)
void RicNewSimWellFractureAtPosFeature::setupActionLook(QAction* actionToSetup) void RicNewSimWellFractureAtPosFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/FractureSymbol16x16.png")); actionToSetup->setIcon(QIcon(":/FractureSymbol16x16.png"));
actionToSetup->setText("New Fracture"); actionToSetup->setText("Create Fracture");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -55,7 +55,7 @@ void RicNewWellPathFractureAtPosFeature::onActionTriggered(bool isChecked)
void RicNewWellPathFractureAtPosFeature::setupActionLook(QAction* actionToSetup) void RicNewWellPathFractureAtPosFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/FractureSymbol16x16.png")); actionToSetup->setIcon(QIcon(":/FractureSymbol16x16.png"));
actionToSetup->setText("New Fracture"); actionToSetup->setText("Create Fracture at this Depth");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -33,6 +33,7 @@
#include "RimStimPlanColors.h" #include "RimStimPlanColors.h"
#include "RimWellPath.h" #include "RimWellPath.h"
#include "RimWellPathCollection.h" #include "RimWellPathCollection.h"
#include "RimWellPathCompletions.h"
#include "RimWellPathFracture.h" #include "RimWellPathFracture.h"
#include "RimWellPathFractureCollection.h" #include "RimWellPathFractureCollection.h"
@@ -127,7 +128,7 @@ void RicNewWellPathFractureFeature::onActionTriggered(bool isChecked)
void RicNewWellPathFractureFeature::setupActionLook(QAction* actionToSetup) void RicNewWellPathFractureFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/FractureSymbol16x16.png")); actionToSetup->setIcon(QIcon(":/FractureSymbol16x16.png"));
actionToSetup->setText("New Fracture"); actionToSetup->setText("Create Fracture");
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@@ -166,6 +167,11 @@ RimWellPathFractureCollection* RicNewWellPathFractureFeature::selectedWellPathFr
{ {
return wellPaths[0]->fractureCollection(); return wellPaths[0]->fractureCollection();
} }
RimWellPathCompletions* completions = caf::SelectionManager::instance()->selectedItemOfType<RimWellPathCompletions>();
if (completions)
{
return completions->fractureCollection();
}
} }
return objToFind; return objToFind;

View File

@@ -84,7 +84,7 @@ void RicCreateGridCrossPlotFeature::setupActionLook(QAction* actionToSetup)
caf::SelectionManager::instance()->selectedItemAncestorOfType<RimGridCrossPlotCollection>(); caf::SelectionManager::instance()->selectedItemAncestorOfType<RimGridCrossPlotCollection>();
if (!collection) if (!collection)
{ {
actionToSetup->setText("New Grid Cross Plot from 3d View"); actionToSetup->setText("Create Grid Cross Plot from 3d View");
} }
else else
{ {

View File

@@ -81,5 +81,5 @@ void RicAdd3dWellLogCurveFeature::onActionTriggered(bool isChecked)
void RicAdd3dWellLogCurveFeature::setupActionLook(QAction* actionToSetup) void RicAdd3dWellLogCurveFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/WellLogCurve16x16.png")); actionToSetup->setIcon(QIcon(":/WellLogCurve16x16.png"));
actionToSetup->setText("Add 3D Well Log Curve"); actionToSetup->setText("Create 3D Well Log Curve");
} }

View File

@@ -72,5 +72,5 @@ void RicAdd3dWellLogFileCurveFeature::onActionTriggered(bool isChecked)
void RicAdd3dWellLogFileCurveFeature::setupActionLook(QAction* actionToSetup) void RicAdd3dWellLogFileCurveFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/WellLogCurve16x16.png")); actionToSetup->setIcon(QIcon(":/WellLogCurve16x16.png"));
actionToSetup->setText("Add 3D Well Log LAS Curve"); actionToSetup->setText("Create 3D Well Log LAS Curve");
} }

View File

@@ -77,5 +77,5 @@ void RicAdd3dWellLogRftCurveFeature::onActionTriggered(bool isChecked)
void RicAdd3dWellLogRftCurveFeature::setupActionLook(QAction* actionToSetup) void RicAdd3dWellLogRftCurveFeature::setupActionLook(QAction* actionToSetup)
{ {
actionToSetup->setIcon(QIcon(":/WellLogCurve16x16.png")); actionToSetup->setIcon(QIcon(":/WellLogCurve16x16.png"));
actionToSetup->setText("Add 3D Well Log RFT Curve"); actionToSetup->setText("Create 3D Well Log RFT Curve");
} }

View File

@@ -47,6 +47,9 @@
#include "RimEnsembleCurveSetCollection.h" #include "RimEnsembleCurveSetCollection.h"
#include "RimEnsembleCurveSet.h" #include "RimEnsembleCurveSet.h"
#include "RimFaultInView.h" #include "RimFaultInView.h"
#include "RimFishbonesCollection.h"
#include "RimFishbonesMultipleSubs.h"
#include "RimFishboneWellPathCollection.h"
#include "RimFlowCharacteristicsPlot.h" #include "RimFlowCharacteristicsPlot.h"
#include "RimFlowDiagSolution.h" #include "RimFlowDiagSolution.h"
#include "RimFlowPlotCollection.h" #include "RimFlowPlotCollection.h"
@@ -66,6 +69,8 @@
#include "RimIntersectionBox.h" #include "RimIntersectionBox.h"
#include "RimIntersectionCollection.h" #include "RimIntersectionCollection.h"
#include "RimObservedData.h" #include "RimObservedData.h"
#include "RimPerforationCollection.h"
#include "RimPerforationInterval.h"
#include "RimPltPlotCollection.h" #include "RimPltPlotCollection.h"
#include "RimProject.h" #include "RimProject.h"
#include "RimRftPlotCollection.h" #include "RimRftPlotCollection.h"
@@ -94,6 +99,8 @@
#include "RimWellPath.h" #include "RimWellPath.h"
#include "RimWellPathAttributeCollection.h" #include "RimWellPathAttributeCollection.h"
#include "RimWellPathCollection.h" #include "RimWellPathCollection.h"
#include "RimWellPathCompletions.h"
#include "RimWellPathFractureCollection.h"
#include "RimWellPltPlot.h" #include "RimWellPltPlot.h"
#include "RimWellRftPlot.h" #include "RimWellRftPlot.h"
#include "RimSaturationPressurePlotCollection.h" #include "RimSaturationPressurePlotCollection.h"
@@ -280,28 +287,60 @@ caf::CmdFeatureMenuBuilder RimContextCommandBuilder::commandsFromSelection()
} }
else if (dynamic_cast<RimWellPathCollection*>(uiItem)) else if (dynamic_cast<RimWellPathCollection*>(uiItem))
{ {
menuBuilder << "RicNewEditableWellPathFeature";
menuBuilder.addSeparator();
menuBuilder.subMenuStart("Import"); menuBuilder.subMenuStart("Import");
menuBuilder << "RicWellPathsImportFileFeature"; menuBuilder << "RicWellPathsImportFileFeature";
menuBuilder << "RicWellPathsImportSsihubFeature"; menuBuilder << "RicWellPathsImportSsihubFeature";
menuBuilder << "RicWellPathFormationsImportFileFeature"; menuBuilder << "RicWellPathFormationsImportFileFeature";
menuBuilder << "RicWellLogsImportFileFeature"; menuBuilder << "RicWellLogsImportFileFeature";
menuBuilder << "RicReloadWellPathFormationNamesFeature"; menuBuilder << "RicReloadWellPathFormationNamesFeature";
menuBuilder << "RicWellPathImportPerforationIntervalsFeature";
menuBuilder.subMenuEnd();
menuBuilder.addSeparator(); menuBuilder.addSeparator();
menuBuilder << "RicWellPathImportPerforationIntervalsFeature";
menuBuilder << "RicNewEditableWellPathFeature"; menuBuilder << "RicWellPathImportCompletionsFileFeature";
menuBuilder.subMenuEnd();
menuBuilder.addSeparator();
menuBuilder.subMenuStart("Export Well Paths", QIcon(":/Save.png"));
menuBuilder << "RicExportSelectedWellPathsFeature";
menuBuilder << "RicExportVisibleWellPathsFeature";
menuBuilder.subMenuEnd();
appendExportCompletions(menuBuilder);
} }
else if (dynamic_cast<RimWellPath*>(uiItem)) else if (dynamic_cast<RimWellPath*>(uiItem))
{ {
menuBuilder << "RicNewEditableWellPathFeature";
menuBuilder << "RicNewWellPathIntersectionFeature";
menuBuilder.subMenuStart("Create Completions", QIcon(":/CompletionsSymbol16x16.png"));
menuBuilder << "RicNewPerforationIntervalFeature";
menuBuilder << "RicEditPerforationCollectionFeature";
menuBuilder << "RicNewValveFeature";
menuBuilder << "RicNewFishbonesSubsFeature";
menuBuilder << "RicNewWellPathFractureFeature";
menuBuilder.addSeparator();
menuBuilder << "RicCreateMultipleFracturesFeature";
menuBuilder.addSeparator();
menuBuilder << "RicNewWellPathAttributeFeature";
menuBuilder.subMenuEnd();
menuBuilder << "RicCreateTemporaryLgrFeature";
menuBuilder.addSeparator();
menuBuilder.subMenuStart("Import"); menuBuilder.subMenuStart("Import");
menuBuilder << "RicWellPathsImportFileFeature"; menuBuilder << "RicWellPathsImportFileFeature";
menuBuilder << "RicWellPathFormationsImportFileFeature"; menuBuilder << "RicWellPathFormationsImportFileFeature";
menuBuilder << "RicWellLogsImportFileFeature"; menuBuilder << "RicWellLogsImportFileFeature";
menuBuilder << "RicReloadWellPathFormationNamesFeature"; menuBuilder << "RicReloadWellPathFormationNamesFeature";
menuBuilder.addSeparator();
menuBuilder << "RicWellPathImportCompletionsFileFeature";
menuBuilder.subMenuEnd(); menuBuilder.subMenuEnd();
menuBuilder.addSeparator();
menuBuilder.subMenuStart("Export Well Paths", QIcon(":/Save.png"));
menuBuilder << "RicExportSelectedWellPathsFeature";
menuBuilder << "RicExportVisibleWellPathsFeature";
menuBuilder.subMenuEnd();
appendExportCompletions(menuBuilder);
menuBuilder.addSeparator(); menuBuilder.addSeparator();
menuBuilder.subMenuStart("Well Plots", QIcon(":/WellLogTrack16x16.png")); menuBuilder.subMenuStart("Well Plots", QIcon(":/WellLogTrack16x16.png"));
@@ -313,40 +352,54 @@ caf::CmdFeatureMenuBuilder RimContextCommandBuilder::commandsFromSelection()
menuBuilder << "RicNewWellLogCurveExtractionFeature"; menuBuilder << "RicNewWellLogCurveExtractionFeature";
menuBuilder.subMenuEnd(); menuBuilder.subMenuEnd();
menuBuilder.addSeparator();
menuBuilder.subMenuStart("3D Well Log Curves", QIcon(":/WellLogCurve16x16.png")); menuBuilder.subMenuStart("3D Well Log Curves", QIcon(":/WellLogCurve16x16.png"));
menuBuilder << "RicAdd3dWellLogCurveFeature"; menuBuilder << "RicAdd3dWellLogCurveFeature";
menuBuilder << "RicAdd3dWellLogFileCurveFeature"; menuBuilder << "RicAdd3dWellLogFileCurveFeature";
menuBuilder << "RicAdd3dWellLogRftCurveFeature"; menuBuilder << "RicAdd3dWellLogRftCurveFeature";
menuBuilder.subMenuEnd(); menuBuilder.subMenuEnd();
menuBuilder.addSeparator();
menuBuilder << "RicNewEditableWellPathFeature";
menuBuilder << "RicNewWellPathIntersectionFeature";
menuBuilder.addSeparator(); menuBuilder.addSeparator();
menuBuilder.subMenuStart("Completions", QIcon(":/CompletionsSymbol16x16.png"));
menuBuilder << "RicNewPerforationIntervalFeature";
menuBuilder << "RicEditPerforationCollectionFeature";
menuBuilder << "RicNewValveFeature";
menuBuilder << "RicNewFishbonesSubsFeature";
menuBuilder << "RicNewWellPathFractureFeature";
menuBuilder.subMenuEnd();
menuBuilder.subMenuStart("Export Completions", QIcon(":/ExportCompletionsSymbol16x16.png"));
menuBuilder << "RicExportCompletionsForVisibleWellPathsFeature";
menuBuilder << "RicWellPathExportCompletionDataFeature";
menuBuilder.subMenuEnd();
if ( dynamic_cast<RimModeledWellPath*>(uiItem) ) if ( dynamic_cast<RimModeledWellPath*>(uiItem) )
{ {
menuBuilder << "RicShowWellPlanFeature"; menuBuilder << "RicShowWellPlanFeature";
} }
menuBuilder << "RicNewWellPathAttributeFeature"; }
menuBuilder << "RicCreateMultipleFracturesFeature"; else if (dynamic_cast<RimWellPathCompletions*>(uiItem))
{
menuBuilder << "Separator"; menuBuilder.subMenuStart("Create Completions", QIcon(":/CompletionsSymbol16x16.png"));
menuBuilder << "RicNewPerforationIntervalFeature";
menuBuilder << "RicNewFishbonesSubsFeature";
menuBuilder << "RicNewWellPathFractureFeature";
menuBuilder.subMenuEnd();
menuBuilder << "RicCreateTemporaryLgrFeature";
menuBuilder.addSeparator();
appendExportCompletions(menuBuilder);
}
else if (dynamic_cast<RimPerforationCollection*>(uiItem) ||
dynamic_cast<RimPerforationInterval*>(uiItem))
{
menuBuilder << "RicNewPerforationIntervalFeature";
if (dynamic_cast<RimPerforationInterval*>(uiItem))
menuBuilder << "RicNewValveFeature";
menuBuilder.addSeparator();
menuBuilder << "RicEditPerforationCollectionFeature";
menuBuilder.addSeparator();
appendExportCompletions(menuBuilder);
}
else if (dynamic_cast<RimFishbonesCollection*>(uiItem) ||
dynamic_cast<RimFishbonesMultipleSubs*>(uiItem) ||
dynamic_cast<RimFishboneWellPathCollection*>(uiItem))
{
menuBuilder << "RicNewFishbonesSubsFeature";
appendExportCompletions(menuBuilder);
}
else if (dynamic_cast<RimWellPathFractureCollection*>(uiItem) ||
dynamic_cast<RimWellPathFracture*>(uiItem))
{
menuBuilder << "RicNewWellPathFractureFeature";
appendExportCompletions(menuBuilder);
} }
else if (dynamic_cast<RimWellPathAttributeCollection*>(uiItem)) else if (dynamic_cast<RimWellPathAttributeCollection*>(uiItem))
{ {
@@ -787,74 +840,6 @@ caf::CmdFeatureMenuBuilder RimContextCommandBuilder::commandsFromSelection()
menuBuilder << "RicConvertGroupToEnsembleFeature"; menuBuilder << "RicConvertGroupToEnsembleFeature";
menuBuilder.addSeparator(); menuBuilder.addSeparator();
if (!menuBuilder.isCmdFeatureAdded("RicNewFishbonesSubsFeature"))
{
menuBuilder << "RicNewFishbonesSubsFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicNewPerforationIntervalFeature"))
{
menuBuilder << "RicNewPerforationIntervalFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicNewValveFeature"))
{
menuBuilder << "RicNewValveFeature";
}
menuBuilder << "RicEditPerforationCollectionFeature";
menuBuilder << "RicExportFishbonesLateralsFeature";
menuBuilder << "RicExportCompletionsWellSegmentsFeature";
{
QStringList candidates;
if (!menuBuilder.isCmdFeatureAdded("RicExportCompletionsForVisibleWellPathsFeature"))
{
candidates << "RicExportCompletionsForVisibleWellPathsFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicWellPathExportCompletionDataFeature"))
{
candidates << "RicWellPathExportCompletionDataFeature";
}
if (!candidates.isEmpty())
{
menuBuilder.subMenuStart("Export Completions", QIcon(":/ExportCompletionsSymbol16x16.png"));
for (const auto& text : candidates)
{
menuBuilder << text;
}
menuBuilder.subMenuEnd();
}
}
{
QStringList candidates;
if (!menuBuilder.isCmdFeatureAdded("RicExportSelectedWellPathsFeature"))
{
candidates << "RicExportSelectedWellPathsFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicExportVisibleWellPathsFeature"))
{
candidates << "RicExportVisibleWellPathsFeature";
}
if (!candidates.isEmpty())
{
menuBuilder.subMenuStart("Export Well Paths", QIcon(":/Save.png"));
for (const auto& text : candidates)
{
menuBuilder << text;
}
menuBuilder.subMenuEnd();
}
}
menuBuilder << "RicWellPathImportCompletionsFileFeature";
menuBuilder << "RicFlyToObjectFeature"; menuBuilder << "RicFlyToObjectFeature";
menuBuilder << "RicImportObservedDataFeature"; menuBuilder << "RicImportObservedDataFeature";
@@ -868,9 +853,6 @@ caf::CmdFeatureMenuBuilder RimContextCommandBuilder::commandsFromSelection()
menuBuilder << "RicDeleteSummaryCaseCollectionFeature"; menuBuilder << "RicDeleteSummaryCaseCollectionFeature";
menuBuilder << "RicCloseObservedDataFeature"; menuBuilder << "RicCloseObservedDataFeature";
menuBuilder << "RicCreateMultipleFracturesFeature";
menuBuilder << "RicCreateTemporaryLgrFeature";
// Work in progress -- End // Work in progress -- End
caf::PdmUiItem* uiItem = uiItems[0]; caf::PdmUiItem* uiItem = uiItems[0];
@@ -1073,3 +1055,40 @@ void RimContextCommandBuilder::appendScriptItems(caf::CmdFeatureMenuBuilder& men
menuBuilder.subMenuEnd(); menuBuilder.subMenuEnd();
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimContextCommandBuilder::appendExportCompletions(caf::CmdFeatureMenuBuilder& menuBuilder)
{
QStringList candidates;
if (!menuBuilder.isCmdFeatureAdded("RicExportCompletionsForVisibleWellPathsFeature"))
{
candidates << "RicExportCompletionsForVisibleWellPathsFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicWellPathExportCompletionDataFeature"))
{
candidates << "RicWellPathExportCompletionDataFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicExportFishbonesLateralsFeature"))
{
candidates << "RicExportFishbonesLateralsFeature";
}
if (!menuBuilder.isCmdFeatureAdded("RicExportCompletionsWellSegmentsFeature"))
{
candidates << "RicExportCompletionsWellSegmentsFeature";
}
if (!candidates.isEmpty())
{
menuBuilder.subMenuStart("Export Completions", QIcon(":/ExportCompletionsSymbol16x16.png"));
for (const auto& text : candidates)
{
menuBuilder << text;
}
menuBuilder.subMenuEnd();
}
}

View File

@@ -41,4 +41,6 @@ private:
static std::vector<RimWellPath*> allWellPaths(); static std::vector<RimWellPath*> allWellPaths();
static void createExecuteScriptForCasesFeatureMenu(caf::CmdFeatureMenuBuilder& menuBuilder); static void createExecuteScriptForCasesFeatureMenu(caf::CmdFeatureMenuBuilder& menuBuilder);
static void appendScriptItems(caf::CmdFeatureMenuBuilder& menuBuilder, RimScriptCollection* scriptCollection); static void appendScriptItems(caf::CmdFeatureMenuBuilder& menuBuilder, RimScriptCollection* scriptCollection);
static void appendExportCompletions(caf::CmdFeatureMenuBuilder& menuBuilder);
}; };

View File

@@ -410,12 +410,15 @@ void RiuViewerCommands::displayContextMenu(QMouseEvent* event)
menuBuilder.subMenuEnd(); menuBuilder.subMenuEnd();
menuBuilder.addSeparator(); menuBuilder.addSeparator();
menuBuilder << "RicNewWellPathAttributeFeature"; menuBuilder.subMenuStart("Create Completions", QIcon(":/FishBoneGroup16x16.png"));
menuBuilder.subMenuStart("Completions", QIcon(":/FishBoneGroup16x16.png"));
menuBuilder << "RicNewPerforationIntervalAtMeasuredDepthFeature"; menuBuilder << "RicNewPerforationIntervalAtMeasuredDepthFeature";
menuBuilder << "RicNewFishbonesSubsAtMeasuredDepthFeature"; menuBuilder << "RicNewFishbonesSubsAtMeasuredDepthFeature";
menuBuilder << "RicNewWellPathFractureAtPosFeature"; menuBuilder << "RicNewWellPathFractureAtPosFeature";
menuBuilder.addSeparator();
menuBuilder << "RicNewWellPathAttributeFeature";
menuBuilder << "RicWellPathImportCompletionsFileFeature";
menuBuilder.subMenuEnd(); menuBuilder.subMenuEnd();