diff --git a/ApplicationCode/Application/RIPreferences.cpp b/ApplicationCode/Application/RIPreferences.cpp index f78417c979..af1e330a5e 100644 --- a/ApplicationCode/Application/RIPreferences.cpp +++ b/ApplicationCode/Application/RIPreferences.cpp @@ -37,6 +37,9 @@ RIPreferences::RIPreferences(void) CAF_PDM_InitField(&octaveExecutable, "octaveExecutable", QString("octave"), "Octave", "", "", ""); octaveExecutable.setUiEditorTypeName(caf::PdmUiFilePathEditor::uiEditorTypeName()); + CAF_PDM_InitField(&defaultGridLines, "defaultGridLines", true, "Gridlines", "", "", ""); + CAF_PDM_InitField(&defaultScaleFactorZ, "defaultScaleFactorZ", 5, "Z scale factor", "", "", ""); + CAF_PDM_InitField(&useShaders, "useShaders", true, "Use Shaders", "", "", ""); CAF_PDM_InitField(&showHud, "showHud", true, "Show 3D Information", "", "", ""); @@ -69,3 +72,24 @@ void RIPreferences::defineEditorAttribute(const caf::PdmFieldHandle* field, QStr } } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RIPreferences::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) const +{ + uiOrdering.add(&navigationPolicy); + + caf::PdmUiGroup* scriptGroup = uiOrdering.addNewGroup("Script configuration"); + scriptGroup->add(&scriptDirectory); + scriptGroup->add(&scriptEditorExecutable); + scriptGroup->add(&octaveExecutable); + + caf::PdmUiGroup* defaultSettingsGroup = uiOrdering.addNewGroup("Default settings"); + defaultSettingsGroup->add(&defaultScaleFactorZ); + defaultSettingsGroup->add(&defaultGridLines); + + + + +} + diff --git a/ApplicationCode/Application/RIPreferences.h b/ApplicationCode/Application/RIPreferences.h index 16183a8e0d..7197c2e733 100644 --- a/ApplicationCode/Application/RIPreferences.h +++ b/ApplicationCode/Application/RIPreferences.h @@ -36,6 +36,9 @@ public: // Pdm Fields caf::PdmField scriptEditorExecutable; caf::PdmField octaveExecutable; + caf::PdmField defaultScaleFactorZ; + caf::PdmField defaultGridLines; + caf::PdmField useShaders; caf::PdmField showHud; @@ -46,4 +49,6 @@ public: // Pdm Fields protected: virtual void defineEditorAttribute(const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute* attribute); + + virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) const; }; diff --git a/ApplicationCode/ProjectDataModel/RimReservoirView.cpp b/ApplicationCode/ProjectDataModel/RimReservoirView.cpp index f774bc0829..fb8170793f 100644 --- a/ApplicationCode/ProjectDataModel/RimReservoirView.cpp +++ b/ApplicationCode/ProjectDataModel/RimReservoirView.cpp @@ -80,6 +80,10 @@ CAF_PDM_SOURCE_INIT(RimReservoirView, "ReservoirView"); //-------------------------------------------------------------------------------------------------- RimReservoirView::RimReservoirView() { + RIApplication* app = RIApplication::instance(); + RIPreferences* preferences = app->preferences(); + CVF_ASSERT(preferences); + CAF_PDM_InitObject("Reservoir View", ":/ReservoirView.png", "", ""); CAF_PDM_InitFieldNoDefault(&cellResult, "GridCellResult", "Cell Result", ":/CellResult.png", "", ""); @@ -93,7 +97,11 @@ RimReservoirView::RimReservoirView() overlayInfoConfig->setReservoirView(this); CAF_PDM_InitField(&name, "UserDescription", QString(""), "Name", "", "", ""); - CAF_PDM_InitField(&scaleZ, "GridZScale", 1.0, "Z Scale", "", "Scales the scene in the Z direction", ""); + + double defaultScaleFactor = 1.0; + if (preferences) defaultScaleFactor = preferences->defaultScaleFactorZ; + CAF_PDM_InitField(&scaleZ, "GridZScale", defaultScaleFactor, "Z Scale", "", "Scales the scene in the Z direction", ""); + CAF_PDM_InitField(&showWindow, "ShowWindow", true, "Show 3D viewer", "", "", ""); showWindow.setUiHidden(true); @@ -114,7 +122,9 @@ RimReservoirView::RimReservoirView() propertyFilterCollection = new RimCellPropertyFilterCollection(); propertyFilterCollection->setReservoirView(this); - CAF_PDM_InitFieldNoDefault(&meshMode, "MeshMode", "Grid lines", "", "", ""); + caf::AppEnum defaultMeshType = NO_MESH; + if (preferences->defaultGridLines) defaultMeshType = FULL_MESH; + CAF_PDM_InitField(&meshMode, "MeshMode", defaultMeshType, "Grid lines", "", "", ""); CAF_PDM_InitFieldNoDefault(&surfaceMode, "SurfaceMode", "Grid surface", "", "", ""); CAF_PDM_InitField(&maximumFrameRate, "MaximumFrameRate", 10, "Maximum frame rate","", "", "");