Replace local selected object code in MSW export with cafSelectionManager methods.

This commit is contained in:
Gaute Lindkvist 2018-08-22 14:31:55 +02:00
parent c32590a5da
commit b8f4aab4a9
4 changed files with 13 additions and 111 deletions

View File

@ -57,8 +57,8 @@ CAF_CMD_SOURCE_INIT(RicExportFishbonesWellSegmentsFeature, "RicExportFishbonesWe
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RicExportFishbonesWellSegmentsFeature::onActionTriggered(bool isChecked) void RicExportFishbonesWellSegmentsFeature::onActionTriggered(bool isChecked)
{ {
RimFishbonesCollection* fishbonesCollection = selectedFishbonesCollection(); RimFishbonesCollection* fishbonesCollection = caf::SelectionManager::instance()->selectedItemAncestorOfType<RimFishbonesCollection>();
RimWellPath* wellPath = selectedWellPath(); RimWellPath* wellPath = caf::SelectionManager::instance()->selectedItemAncestorOfType<RimWellPath>();
CVF_ASSERT(fishbonesCollection); CVF_ASSERT(fishbonesCollection);
CVF_ASSERT(wellPath); CVF_ASSERT(wellPath);
@ -99,42 +99,6 @@ void RicExportFishbonesWellSegmentsFeature::onActionTriggered(bool isChecked)
} }
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimFishbonesCollection* RicExportFishbonesWellSegmentsFeature::selectedFishbonesCollection()
{
RimFishbonesCollection* objToFind = nullptr;
caf::PdmUiItem* pdmUiItem = caf::SelectionManager::instance()->selectedItem();
caf::PdmObjectHandle* objHandle = dynamic_cast<caf::PdmObjectHandle*>(pdmUiItem);
if (objHandle)
{
objHandle->firstAncestorOrThisOfType(objToFind);
}
return objToFind;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimWellPath* RicExportFishbonesWellSegmentsFeature::selectedWellPath()
{
RimWellPath* objToFind = nullptr;
caf::PdmUiItem* pdmUiItem = caf::SelectionManager::instance()->selectedItem();
caf::PdmObjectHandle* objHandle = dynamic_cast<caf::PdmObjectHandle*>(pdmUiItem);
if (objHandle)
{
objHandle->firstAncestorOrThisOfType(objToFind);
}
return objToFind;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@ -148,7 +112,7 @@ void RicExportFishbonesWellSegmentsFeature::setupActionLook(QAction* actionToSet
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
bool RicExportFishbonesWellSegmentsFeature::isCommandEnabled() bool RicExportFishbonesWellSegmentsFeature::isCommandEnabled()
{ {
if (selectedFishbonesCollection()) if (caf::SelectionManager::instance()->selectedItemAncestorOfType<RimFishbonesCollection>())
{ {
return true; return true;
} }

View File

@ -41,10 +41,7 @@ protected:
virtual bool isCommandEnabled() override; virtual bool isCommandEnabled() override;
public: public:
static void exportWellSegments(const RimWellPath* wellPath, const std::vector<RimFishbonesMultipleSubs*>& fishbonesSubs, const RicCaseAndFileExportSettingsUi& settings); static void exportWellSegments(const RimWellPath* wellPath,
const std::vector<RimFishbonesMultipleSubs*>& fishbonesSubs,
private: const RicCaseAndFileExportSettingsUi& settings);
static RimFishbonesCollection* selectedFishbonesCollection();
static RimWellPath* selectedWellPath();
}; };

View File

@ -90,12 +90,12 @@ void RicExportFracturesWellSegmentsFeature::exportWellSegments(const RimWellPath
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RicExportFracturesWellSegmentsFeature::onActionTriggered(bool isChecked) void RicExportFracturesWellSegmentsFeature::onActionTriggered(bool isChecked)
{ {
RimWellPath* wellPath = selectedWellPath(); RimWellPath* wellPath = caf::SelectionManager::instance()->selectedItemAncestorOfType<RimWellPath>();
RimWellPathFracture* fracture = selectedWellPathFracture(); RimWellPathFracture* fracture = caf::SelectionManager::instance()->selectedItemAncestorOfType<RimWellPathFracture>();
RimWellPathFractureCollection* fractureCollection = selectedWellPathFractureCollection(); RimWellPathFractureCollection* collection = caf::SelectionManager::instance()->selectedItemAncestorOfType<RimWellPathFractureCollection>();
CVF_ASSERT(wellPath); CVF_ASSERT(wellPath);
CVF_ASSERT(fractureCollection); CVF_ASSERT(collection);
RiaApplication* app = RiaApplication::instance(); RiaApplication* app = RiaApplication::instance();
@ -130,7 +130,7 @@ void RicExportFracturesWellSegmentsFeature::onActionTriggered(bool isChecked)
} }
else else
{ {
for (RimWellPathFracture* fracture : fractureCollection->fractures()) for (RimWellPathFracture* fracture : collection->fractures())
{ {
if (fracture->isChecked()) if (fracture->isChecked())
{ {
@ -143,66 +143,12 @@ void RicExportFracturesWellSegmentsFeature::onActionTriggered(bool isChecked)
} }
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimWellPath* RicExportFracturesWellSegmentsFeature::selectedWellPath()
{
RimWellPath* objToFind = nullptr;
caf::PdmUiItem* pdmUiItem = caf::SelectionManager::instance()->selectedItem();
caf::PdmObjectHandle* objHandle = dynamic_cast<caf::PdmObjectHandle*>(pdmUiItem);
if (objHandle)
{
objHandle->firstAncestorOrThisOfType(objToFind);
}
return objToFind;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimWellPathFracture* RicExportFracturesWellSegmentsFeature::selectedWellPathFracture()
{
RimWellPathFracture* objToFind = nullptr;
caf::PdmUiItem* pdmUiItem = caf::SelectionManager::instance()->selectedItem();
caf::PdmObjectHandle* objHandle = dynamic_cast<caf::PdmObjectHandle*>(pdmUiItem);
if (objHandle)
{
objHandle->firstAncestorOrThisOfType(objToFind);
}
return objToFind;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimWellPathFractureCollection* RicExportFracturesWellSegmentsFeature::selectedWellPathFractureCollection()
{
RimWellPathFractureCollection* objToFind = nullptr;
caf::PdmUiItem* pdmUiItem = caf::SelectionManager::instance()->selectedItem();
caf::PdmObjectHandle* objHandle = dynamic_cast<caf::PdmObjectHandle*>(pdmUiItem);
if (objHandle)
{
objHandle->firstAncestorOrThisOfType(objToFind);
}
return objToFind;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RicExportFracturesWellSegmentsFeature::setupActionLook(QAction* actionToSetup) void RicExportFracturesWellSegmentsFeature::setupActionLook(QAction* actionToSetup)
{ {
if (selectedWellPathFracture()) if (caf::SelectionManager::instance()->selectedItemOfType<RimWellPathFracture>())
{ {
actionToSetup->setText("Export Fracture as Multi Segment Well"); actionToSetup->setText("Export Fracture as Multi Segment Well");
} }
@ -217,7 +163,7 @@ void RicExportFracturesWellSegmentsFeature::setupActionLook(QAction* actionToSet
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
bool RicExportFracturesWellSegmentsFeature::isCommandEnabled() bool RicExportFracturesWellSegmentsFeature::isCommandEnabled()
{ {
if (selectedWellPathFractureCollection()) if (caf::SelectionManager::instance()->selectedItemAncestorOfType<RimWellPathFractureCollection>())
{ {
return true; return true;
} }

View File

@ -40,9 +40,4 @@ protected:
virtual void onActionTriggered(bool isChecked) override; virtual void onActionTriggered(bool isChecked) override;
virtual void setupActionLook(QAction* actionToSetup) override; virtual void setupActionLook(QAction* actionToSetup) override;
virtual bool isCommandEnabled() override; virtual bool isCommandEnabled() override;
static RimWellPath* selectedWellPath();
static RimWellPathFracture* selectedWellPathFracture();
static RimWellPathFractureCollection* selectedWellPathFractureCollection();
}; };