#1813 Observed data: Derive RimObservedData from RimSummaryCase

This commit is contained in:
Rebecca Cox 2017-09-15 14:30:09 +02:00
parent 1ac50e178e
commit b4f2b2accf
4 changed files with 63 additions and 6 deletions

View File

@ -17,20 +17,56 @@
/////////////////////////////////////////////////////////////////////////////////
#include "RimObservedData.h"
#include "RimTools.h"
#include <QFileInfo>
CAF_PDM_SOURCE_INIT(RimObservedData, "ObservedData");
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimObservedData::RimObservedData()
{
CAF_PDM_InitObject("Observed data file", ":/Default.png", "", "");
m_isObservedData = true;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimObservedData::summaryHeaderFilename() const
{
return m_summaryHeaderFilename();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimObservedData::setSummaryHeaderFilename(const QString& fileName)
{
m_summaryHeaderFilename = fileName;
this->updateAutoShortName();
this->updateTreeItemName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimObservedData::~RimObservedData()
QString RimObservedData::caseName()
{
QFileInfo caseFileName(this->summaryHeaderFilename());
return caseFileName.completeBaseName();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimObservedData::updateFilePathsFromProjectPath(const QString & newProjectPath, const QString & oldProjectPath)
{
m_summaryHeaderFilename = RimTools::relocateFile(m_summaryHeaderFilename(), newProjectPath, oldProjectPath, nullptr, nullptr);
}

View File

@ -16,18 +16,26 @@
//
/////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "RimSummaryCase.h"
#include "cafPdmField.h"
#include "cafPdmObject.h"
#include "cvfObject.h"
class RigObservedData;
//==================================================================================================
//
//==================================================================================================
class RimObservedData : public caf::PdmObject
class RimObservedData : public RimSummaryCase
{
CAF_PDM_HEADER_INIT;
public:
RimObservedData();
~RimObservedData();
private:
void setSummaryHeaderFilename(const QString& fileName);
virtual QString summaryHeaderFilename() const override;
virtual QString caseName() override;
virtual void updateFilePathsFromProjectPath(const QString& newProjectPath, const QString& oldProjectPath) override;
};

View File

@ -41,6 +41,8 @@ RimSummaryCase::RimSummaryCase()
CAF_PDM_InitFieldNoDefault(&m_summaryHeaderFilename, "SummaryHeaderFilename", "Summary Header File", "", "", "");
m_summaryHeaderFilename.uiCapability()->setUiReadOnly(true);
CAF_PDM_InitField(&m_isObservedData, "IsObservedData", false, "", "", "", "");
}
//--------------------------------------------------------------------------------------------------
@ -78,6 +80,14 @@ RigSummaryCaseData* RimSummaryCase::caseData()
return m_summaryCaseData.p();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimSummaryCase::isObservedData()
{
return m_isObservedData();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@ -51,6 +51,8 @@ public:
virtual void updateFilePathsFromProjectPath(const QString& newProjectPath, const QString& oldProjectPath) = 0;
bool isObservedData();
protected:
void updateTreeItemName();
@ -59,6 +61,7 @@ protected:
caf::PdmField<QString> m_summaryHeaderFilename;
cvf::ref<RigSummaryCaseData> m_summaryCaseData;
caf::PdmField<bool> m_isObservedData;
private:
// Overridden PDM methods