#3273 Create Multiple Fractures. Set defaults for new option items

This commit is contained in:
Bjørn Erik Jensen 2018-08-24 11:55:16 +02:00
parent fd07fe38b7
commit a730237267
3 changed files with 32 additions and 1 deletions

View File

@ -53,6 +53,22 @@ void RicCreateMultipleFracturesOptionItemUi::setValues(int topK
m_minSpacing = minimumSpacing;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
int RicCreateMultipleFracturesOptionItemUi::topKLayer() const
{
return m_topKOneBased;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
int RicCreateMultipleFracturesOptionItemUi::baseKLayer() const
{
return m_baseKOneBased;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@ -36,6 +36,8 @@ public:
void setValues(int topKOneBased, int baseKOneBased, RimFractureTemplate* fractureTemplate, double minimumSpacing);
int topKLayer() const;
int baseKLayer() const;
RimFractureTemplate* fractureTemplate() const;
double minimumSpacing() const;

View File

@ -66,11 +66,24 @@ void RicNewOptionItemFeature::onActionTriggered(bool isChecked)
selectedOptionItem = optionItems.front();
selectedOptionItem->firstAncestorOrThisOfTypeAsserted(multipleFractionUi);
}
if (!selectedOptionItem && multipleFractionUi && !multipleFractionUi->options().empty())
{
selectedOptionItem = multipleFractionUi->options().back();
}
}
if (multipleFractionUi)
{
multipleFractionUi->insertOptionItem(selectedOptionItem, new RicCreateMultipleFracturesOptionItemUi);
auto newItem = new RicCreateMultipleFracturesOptionItemUi();
if (selectedOptionItem)
{
newItem->setValues(selectedOptionItem->topKLayer(),
selectedOptionItem->baseKLayer(),
selectedOptionItem->fractureTemplate(),
selectedOptionItem->minimumSpacing());
}
multipleFractionUi->insertOptionItem(selectedOptionItem, newItem);
multipleFractionUi->updateConnectedEditors();
}
}