mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1467 Fix how coordinates are displayed in property editor for well path completions
This commit is contained in:
parent
b81150829a
commit
f78b4db16c
@ -32,9 +32,14 @@ RimWellPathCompletion::RimWellPathCompletion()
|
|||||||
{
|
{
|
||||||
CAF_PDM_InitObject("WellPathCompletion", ":/Well.png", "", "");
|
CAF_PDM_InitObject("WellPathCompletion", ":/Well.png", "", "");
|
||||||
CAF_PDM_InitFieldNoDefault(&m_coordinates, "Coordinates", "Coordinates", "", "", "");
|
CAF_PDM_InitFieldNoDefault(&m_coordinates, "Coordinates", "Coordinates", "", "", "");
|
||||||
|
m_coordinates.uiCapability()->setUiHidden(true);
|
||||||
CAF_PDM_InitFieldNoDefault(&m_measuredDepths, "MeasuredDepth", "MeasuredDepth", "", "", "");
|
CAF_PDM_InitFieldNoDefault(&m_measuredDepths, "MeasuredDepth", "MeasuredDepth", "", "", "");
|
||||||
m_measuredDepths.uiCapability()->setUiEditorTypeName(caf::PdmUiListEditor::uiEditorTypeName());
|
m_measuredDepths.uiCapability()->setUiHidden(true);
|
||||||
m_name.uiCapability()->setUiHidden(true);
|
m_name.uiCapability()->setUiHidden(true);
|
||||||
|
|
||||||
|
CAF_PDM_InitFieldNoDefault(&m_displayCoordinates, "DisplayCoordinates", "Coordinates", "", "", "");
|
||||||
|
m_displayCoordinates.registerGetMethod(this, &RimWellPathCompletion::displayCoordinates);
|
||||||
|
m_displayCoordinates.uiCapability()->setUiReadOnly(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -77,6 +82,25 @@ void RimWellPathCompletion::fieldChangedByUi(const caf::PdmFieldHandle* changedF
|
|||||||
void RimWellPathCompletion::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
|
void RimWellPathCompletion::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
|
||||||
{
|
{
|
||||||
caf::PdmUiGroup* geometryGroup = uiOrdering.addNewGroup("Geometry");
|
caf::PdmUiGroup* geometryGroup = uiOrdering.addNewGroup("Geometry");
|
||||||
geometryGroup->add(&m_coordinates);
|
geometryGroup->add(&m_displayCoordinates);
|
||||||
geometryGroup->add(&m_measuredDepths);
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
std::vector<QString> RimWellPathCompletion::displayCoordinates() const
|
||||||
|
{
|
||||||
|
CVF_ASSERT(m_coordinates().size() == m_measuredDepths().size());
|
||||||
|
|
||||||
|
std::vector<QString> displayValues;
|
||||||
|
|
||||||
|
displayValues.push_back(QString("X\tY\tZ\tMD"));
|
||||||
|
for (size_t i = 0; i < m_coordinates().size(); i++)
|
||||||
|
{
|
||||||
|
const cvf::Vec3d& coords = m_coordinates()[i];
|
||||||
|
const double& measuredDepth = m_measuredDepths()[i];
|
||||||
|
displayValues.push_back(QString("%1\t%2\t%3\t%4\t").arg(coords.x()).arg(coords.y()).arg(coords.z()).arg(measuredDepth));
|
||||||
|
}
|
||||||
|
|
||||||
|
return displayValues;
|
||||||
}
|
}
|
||||||
|
@ -31,6 +31,7 @@
|
|||||||
#include "cafPdmFieldCvfColor.h"
|
#include "cafPdmFieldCvfColor.h"
|
||||||
#include "cafPdmChildArrayField.h"
|
#include "cafPdmChildArrayField.h"
|
||||||
#include "cafPdmFieldCvfVec3d.h"
|
#include "cafPdmFieldCvfVec3d.h"
|
||||||
|
#include "cafPdmProxyValueField.h"
|
||||||
|
|
||||||
#include "cvfBase.h"
|
#include "cvfBase.h"
|
||||||
#include "cvfObject.h"
|
#include "cvfObject.h"
|
||||||
@ -57,6 +58,9 @@ public:
|
|||||||
std::vector< cvf::Vec3d > coordinates() { return m_coordinates(); }
|
std::vector< cvf::Vec3d > coordinates() { return m_coordinates(); }
|
||||||
std::vector< double > measuredDepths() { return m_measuredDepths(); }
|
std::vector< double > measuredDepths() { return m_measuredDepths(); }
|
||||||
private:
|
private:
|
||||||
|
std::vector<QString> displayCoordinates() const;
|
||||||
|
|
||||||
caf::PdmField< std::vector< cvf::Vec3d> > m_coordinates;
|
caf::PdmField< std::vector< cvf::Vec3d> > m_coordinates;
|
||||||
caf::PdmField< std::vector< double > > m_measuredDepths;
|
caf::PdmField< std::vector< double > > m_measuredDepths;
|
||||||
|
caf::PdmProxyValueField< std::vector<QString> > m_displayCoordinates;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user