mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1921 Curve Creator. Add curve name config
This commit is contained in:
parent
f2d32a5833
commit
1590a2a26e
@ -50,6 +50,7 @@
|
||||
#include "RimSummaryCaseMainCollection.h"
|
||||
#include "RimOilField.h"
|
||||
#include "RimSummaryCaseCollection.h"
|
||||
#include "RimSummaryCurveAutoName.h"
|
||||
|
||||
|
||||
CAF_PDM_SOURCE_INIT(RicSummaryCurveCreator, "RicSummaryCurveCreator");
|
||||
@ -217,6 +218,12 @@ RicSummaryCurveCreator::RicSummaryCurveCreator() : m_identifierFieldsMap(
|
||||
m_appearanceApplyButton = false;
|
||||
m_appearanceApplyButton.uiCapability()->setUiEditorTypeName(caf::PdmUiPushButtonEditor::uiEditorTypeName());
|
||||
m_appearanceApplyButton.uiCapability()->setUiLabelPosition(caf::PdmUiItemInfo::LEFT);
|
||||
|
||||
CAF_PDM_InitField(&m_showLegend, "ShowLegend", true, "Contribute To Legend", "", "", "");
|
||||
CAF_PDM_InitFieldNoDefault(&m_curveNameConfig, "SummaryCurveNameConfig", "SummaryCurveNameConfig", "", "", "");
|
||||
m_curveNameConfig = new RimSummaryCurveAutoName();
|
||||
m_curveNameConfig.uiCapability()->setUiHidden(true);
|
||||
m_curveNameConfig.uiCapability()->setUiTreeChildrenHidden(true);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -308,6 +315,13 @@ void RicSummaryCurveCreator::fieldChangedByUi(const caf::PdmFieldHandle* changed
|
||||
m_previewPlot->loadDataAndUpdate();
|
||||
m_appearanceApplyButton = false;
|
||||
}
|
||||
else if (changedField == &m_showLegend)
|
||||
{
|
||||
for (auto curve : m_previewPlot->summaryCurves())
|
||||
{
|
||||
curve->showLegend(m_showLegend());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Lookup item type input field
|
||||
@ -597,6 +611,12 @@ void RicSummaryCurveCreator::defineUiOrdering(QString uiConfigName, caf::PdmUiOr
|
||||
m_regionAppearanceType.uiCapability()->setUiReadOnly(m_useAutoAppearanceAssignment);
|
||||
}
|
||||
|
||||
// Name config
|
||||
caf::PdmUiGroup* autoNameGroup = uiOrdering.addNewGroupWithKeyword("Curve Name Configuration", RicSummaryCurveCreatorUiKeywords::nameConfig());
|
||||
autoNameGroup->setCollapsedByDefault(true);
|
||||
autoNameGroup->add(&m_showLegend);
|
||||
m_curveNameConfig->uiOrdering(uiConfigName, *autoNameGroup);
|
||||
|
||||
// Fields to be displayed directly in UI
|
||||
uiOrdering.add(&m_targetPlot);
|
||||
uiOrdering.add(&m_okButtonField);
|
||||
@ -914,6 +934,7 @@ void RicSummaryCurveCreator::updatePreviewCurvesFromCurveDefinitions(const std::
|
||||
RimSummaryCurve* curve = new RimSummaryCurve();
|
||||
curve->setSummaryCase(currentCase);
|
||||
curve->setSummaryAddress(curveDef.second);
|
||||
curve->applyCurveAutoNameSettings(*m_curveNameConfig());
|
||||
m_previewPlot->addCurve(curve);
|
||||
curveLookCalc.setupCurveLook(curve);
|
||||
}
|
||||
@ -1259,3 +1280,15 @@ void RicSummaryCurveCreator::createNewPlot()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RicSummaryCurveCreator::updateCurveNames()
|
||||
{
|
||||
for (RimSummaryCurve* curve : m_previewPlot->summaryCurves())
|
||||
{
|
||||
curve->applyCurveAutoNameSettings(*m_curveNameConfig());
|
||||
curve->updateCurveName();
|
||||
}
|
||||
}
|
||||
|
@ -34,7 +34,7 @@
|
||||
#include "RimSummaryCurveAppearanceCalculator.h"
|
||||
|
||||
class RimSummaryCase;
|
||||
|
||||
class RimSummaryCurveAutoName;
|
||||
|
||||
//==================================================================================================
|
||||
///
|
||||
@ -79,6 +79,7 @@ public:
|
||||
|
||||
bool isCloseButtonPressed() const;
|
||||
void clearCloseButton();
|
||||
void updateCurveNames();
|
||||
|
||||
private:
|
||||
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField,
|
||||
@ -147,6 +148,9 @@ private:
|
||||
caf::PdmField< AppearanceTypeAppEnum > m_groupAppearanceType;
|
||||
caf::PdmField< AppearanceTypeAppEnum > m_regionAppearanceType;
|
||||
|
||||
caf::PdmField<bool> m_showLegend;
|
||||
caf::PdmChildField<RimSummaryCurveAutoName*> m_curveNameConfig;
|
||||
|
||||
caf::PdmField<bool> m_okButtonField;
|
||||
caf::PdmField<bool> m_applyButtonField;
|
||||
caf::PdmField<bool> m_closeButtonField;
|
||||
|
@ -76,14 +76,10 @@ void RicSummaryCurveCreatorSplitterUi::recursivelyConfigureAndUpdateTopLevelUiIt
|
||||
if (topLevelUiItems[i]->isUiGroup())
|
||||
{
|
||||
caf::PdmUiGroup* group = static_cast<caf::PdmUiGroup*>(topLevelUiItems[i]);
|
||||
|
||||
QMinimizePanel* groupBox = findOrCreateGroupBox(this->widget(), group, uiConfigName);
|
||||
auto groupBox = createGroupBoxWithContent(group, uiConfigName);
|
||||
|
||||
m_firstRowLayout->addWidget(groupBox);
|
||||
|
||||
const std::vector<caf::PdmUiItem*>& groupChildren = group->uiItems();
|
||||
recursivelyConfigureAndUpdateUiItemsInGridLayoutColumn(groupChildren, groupBox->contentFrame(), uiConfigName);
|
||||
|
||||
// Add group boxes until summaries are detected
|
||||
|
||||
if (group->keyword() == RicSummaryCurveCreatorUiKeywords::summaries())
|
||||
@ -94,17 +90,13 @@ void RicSummaryCurveCreatorSplitterUi::recursivelyConfigureAndUpdateTopLevelUiIt
|
||||
|
||||
m_lowerLeftLayout->insertWidget(0, getOrCreateCurveTreeWidget(), 1);
|
||||
|
||||
{
|
||||
caf::PdmUiGroup* group = findGroupByKeyword(topLevelUiItems, RicSummaryCurveCreatorUiKeywords::appearance(), uiConfigName);
|
||||
|
||||
QMinimizePanel* groupBox = findOrCreateGroupBox(this->widget(), group, uiConfigName);
|
||||
|
||||
m_lowerLeftLayout->insertWidget(1, groupBox);
|
||||
|
||||
const std::vector<caf::PdmUiItem*>& groupChildren = group->uiItems();
|
||||
recursivelyConfigureAndUpdateUiItemsInGridLayoutColumn(groupChildren, groupBox->contentFrame(), uiConfigName);
|
||||
}
|
||||
caf::PdmUiGroup* appearanceGroup = findGroupByKeyword(topLevelUiItems, RicSummaryCurveCreatorUiKeywords::nameConfig(), uiConfigName);
|
||||
auto appearanceGroupBox = createGroupBoxWithContent(appearanceGroup, uiConfigName);
|
||||
m_lowerLeftLayout->insertWidget(1, appearanceGroupBox);
|
||||
|
||||
caf::PdmUiGroup* nameConfigGroup = findGroupByKeyword(topLevelUiItems, RicSummaryCurveCreatorUiKeywords::nameConfig(), uiConfigName);
|
||||
auto nameConfigGroupBox = createGroupBoxWithContent(nameConfigGroup, uiConfigName);
|
||||
m_lowerLeftLayout->insertWidget(2, nameConfigGroupBox);
|
||||
|
||||
m_secondRowLayout->insertWidget(1, getOrCreatePlotWidget());
|
||||
|
||||
@ -283,3 +275,16 @@ void RicSummaryCurveCreatorSplitterUi::configureAndUpdateFields(int widgetStartI
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QMinimizePanel* RicSummaryCurveCreatorSplitterUi::createGroupBoxWithContent(caf::PdmUiGroup* group,
|
||||
const QString& uiConfigName)
|
||||
{
|
||||
QMinimizePanel* groupBox = findOrCreateGroupBox(this->widget(), group, uiConfigName);
|
||||
|
||||
const std::vector<caf::PdmUiItem*>& groupChildren = group->uiItems();
|
||||
recursivelyConfigureAndUpdateUiItemsInGridLayoutColumn(groupChildren, groupBox->contentFrame(), uiConfigName);
|
||||
return groupBox;
|
||||
}
|
||||
|
@ -66,6 +66,8 @@ private:
|
||||
const std::vector<caf::PdmUiItem *>& topLevelUiItems,
|
||||
const QString& uiConfigName);
|
||||
|
||||
QMinimizePanel* createGroupBoxWithContent(caf::PdmUiGroup* group,
|
||||
const QString& uiConfigName);
|
||||
signals:
|
||||
void signalCloseButtonPressed();
|
||||
|
||||
|
@ -40,4 +40,5 @@ public:
|
||||
static QString lgrWells() { return "LgrWellsKeyword"; };
|
||||
static QString wellSegments() { return "WellSegmentsKeyword"; };
|
||||
static QString appearance() { return "AppearanceKeyword"; };
|
||||
static QString nameConfig() { return "NameConfigKeyword"; };
|
||||
};
|
||||
|
@ -22,9 +22,9 @@
|
||||
|
||||
#include "RimSummaryCurve.h"
|
||||
#include "RimSummaryCase.h"
|
||||
#include "RimSummaryCurveFilter.h"
|
||||
|
||||
#include "cafPdmUiPushButtonEditor.h"
|
||||
#include "SummaryPlotCommands/RicSummaryCurveCreator.h"
|
||||
|
||||
|
||||
|
||||
@ -245,11 +245,11 @@ void RimSummaryCurveAutoName::fieldChangedByUi(const caf::PdmFieldHandle* change
|
||||
summaryCurve->updateConnectedEditors();
|
||||
}
|
||||
|
||||
RimSummaryCurveFilter* summaryCurveFilter = dynamic_cast<RimSummaryCurveFilter*>(this->parentField()->ownerObject());
|
||||
if (summaryCurveFilter)
|
||||
RicSummaryCurveCreator* curveCreator = dynamic_cast<RicSummaryCurveCreator*>(this->parentField()->ownerObject());
|
||||
if (curveCreator)
|
||||
{
|
||||
summaryCurveFilter->updateCurveNames();
|
||||
summaryCurveFilter->updateConnectedEditors();
|
||||
curveCreator->updateCurveNames();
|
||||
curveCreator->updateConnectedEditors();
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user