From 242dbd36934243af8df9e119604b857ad43cd9ef Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Fri, 9 Dec 2016 10:01:50 +0100 Subject: [PATCH] #1018 Snapshot : Added RimMultiSnapshotDefinition --- .../ProjectDataModel/CMakeLists_files.cmake | 2 + .../RimMultiSnapshotDefinition.cpp | 59 +++++++++++++++++++ .../RimMultiSnapshotDefinition.h | 45 ++++++++++++++ .../ProjectDataModel/RimProject.cpp | 8 +-- ApplicationCode/ProjectDataModel/RimProject.h | 8 ++- 5 files changed, 114 insertions(+), 8 deletions(-) create mode 100644 ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.cpp create mode 100644 ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.h diff --git a/ApplicationCode/ProjectDataModel/CMakeLists_files.cmake b/ApplicationCode/ProjectDataModel/CMakeLists_files.cmake index 8c8897587f..dbe7ba7e24 100644 --- a/ApplicationCode/ProjectDataModel/CMakeLists_files.cmake +++ b/ApplicationCode/ProjectDataModel/CMakeLists_files.cmake @@ -82,6 +82,7 @@ ${CEE_CURRENT_LIST_DIR}RimGridCollection.h ${CEE_CURRENT_LIST_DIR}RimPlotCurve.h ${CEE_CURRENT_LIST_DIR}RimEclipseInputCaseOpm.h ${CEE_CURRENT_LIST_DIR}RimIntersectionBox.h +${CEE_CURRENT_LIST_DIR}RimMultiSnapshotDefinition.h ) set (SOURCE_GROUP_SOURCE_FILES @@ -162,6 +163,7 @@ ${CEE_CURRENT_LIST_DIR}RimGridCollection.cpp ${CEE_CURRENT_LIST_DIR}RimPlotCurve.cpp ${CEE_CURRENT_LIST_DIR}RimEclipseInputCaseOpm.cpp ${CEE_CURRENT_LIST_DIR}RimIntersectionBox.cpp +${CEE_CURRENT_LIST_DIR}RimMultiSnapshotDefinition.cpp ) list(APPEND CODE_HEADER_FILES diff --git a/ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.cpp b/ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.cpp new file mode 100644 index 0000000000..6114ffcfb7 --- /dev/null +++ b/ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.cpp @@ -0,0 +1,59 @@ +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2016- Statoil ASA +// +// ResInsight is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. +// +// See the GNU General Public License at +// for more details. +// +///////////////////////////////////////////////////////////////////////////////// + +#include "RimMultiSnapshotDefinition.h" + +/* +#include "RifJsonEncodeDecode.h" +#include "RimProject.h" +#include "RimTools.h" +#include "RimWellLogFile.h" +#include "RimProject.h" +#include "RimMainPlotCollection.h" +#include "RimWellLogPlotCollection.h" +#include "RivWellPathPartMgr.h" + +#include "RiuMainWindow.h" + +#include +#include +#include +#include +*/ + +CAF_PDM_SOURCE_INIT(RimMultiSnapshotDefinition, "MultiSnapshotDefinition"); + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +RimMultiSnapshotDefinition::RimMultiSnapshotDefinition() +{ + //CAF_PDM_InitObject("MultiSnapshotDefinition", ":/Well.png", "", ""); + CAF_PDM_InitObject("MultiSnapshotDefinition", "", "", ""); + +} + + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +RimMultiSnapshotDefinition::~RimMultiSnapshotDefinition() +{ +} + + diff --git a/ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.h b/ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.h new file mode 100644 index 0000000000..709d6b872a --- /dev/null +++ b/ApplicationCode/ProjectDataModel/RimMultiSnapshotDefinition.h @@ -0,0 +1,45 @@ +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2016- Statoil ASA +// +// ResInsight is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. +// +// See the GNU General Public License at +// for more details. +// +///////////////////////////////////////////////////////////////////////////////// + +#pragma once + +#include "cafPdmField.h" +#include "cafPdmObject.h" +#include "cafPdmPtrField.h" + +class RimCase; +class RimView; + +//================================================================================================== +/// +/// +//================================================================================================== +class RimMultiSnapshotDefinition : public caf::PdmObject +{ + CAF_PDM_HEADER_INIT; +public: + RimMultiSnapshotDefinition(); + virtual ~RimMultiSnapshotDefinition(); + + caf::PdmPtrField caseObject; + caf::PdmPtrField viewObject; + + caf::PdmField timeStepStart; + caf::PdmField timeStepEnd; + +}; diff --git a/ApplicationCode/ProjectDataModel/RimProject.cpp b/ApplicationCode/ProjectDataModel/RimProject.cpp index 46dd4fc816..cf1b989e51 100644 --- a/ApplicationCode/ProjectDataModel/RimProject.cpp +++ b/ApplicationCode/ProjectDataModel/RimProject.cpp @@ -807,10 +807,6 @@ void RimProject::defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QS uiTreeOrdering.add(mainPlotCollection->summaryPlotCollection()); } } - - uiTreeOrdering.setForgetRemainingFields(true); - - return; } else { @@ -830,8 +826,8 @@ void RimProject::defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QS } uiTreeOrdering.add(scriptCollection()); - - uiTreeOrdering.setForgetRemainingFields(true); } + + uiTreeOrdering.setForgetRemainingFields(true); } diff --git a/ApplicationCode/ProjectDataModel/RimProject.h b/ApplicationCode/ProjectDataModel/RimProject.h index d9fdc0860b..fefadad18f 100644 --- a/ApplicationCode/ProjectDataModel/RimProject.h +++ b/ApplicationCode/ProjectDataModel/RimProject.h @@ -29,17 +29,19 @@ class RigCaseData; class RigGridManager; class RigMainGrid; + class RimCase; class RimCommandObject; class RimEclipseCase; class RimIdenticalGridCaseGroup; -class RimViewLinker; -class RimViewLinkerCollection; class RimMainPlotCollection; +class RimMultiSnapshotDefinition; class RimOilField; class RimScriptCollection; class RimSummaryCase; class RimView; +class RimViewLinker; +class RimViewLinkerCollection; class RimWellPathImport; namespace caf @@ -70,6 +72,8 @@ public: caf::PdmChildField viewLinkerCollection; caf::PdmChildArrayField commandObjects; + caf::PdmChildArrayField multiSnapshotDefinitions; + caf::PdmField mainWindowTreeViewState; caf::PdmField mainWindowCurrentModelIndexPath;