From e70cc85db606612a85891372a0f495fe872e4777 Mon Sep 17 00:00:00 2001 From: jonjenssen Date: Fri, 10 Mar 2023 18:32:09 +0100 Subject: [PATCH] Add a few more tiny scales. Allow user to input doubles in preferences. --- ApplicationLibCode/Application/RiaDefines.cpp | 2 +- .../Application/RiaGuiApplication.cpp | 9 ++++----- .../Application/RiaPreferences.cpp | 16 +++++++++++++--- ApplicationLibCode/Application/RiaPreferences.h | 4 ++-- 4 files changed, 20 insertions(+), 11 deletions(-) diff --git a/ApplicationLibCode/Application/RiaDefines.cpp b/ApplicationLibCode/Application/RiaDefines.cpp index b753229ca6..6c0e972f11 100644 --- a/ApplicationLibCode/Application/RiaDefines.cpp +++ b/ApplicationLibCode/Application/RiaDefines.cpp @@ -355,5 +355,5 @@ QString RiaDefines::stringListSeparator() //-------------------------------------------------------------------------------------------------- std::vector RiaDefines::viewScaleOptions() { - return { 0.05, 0.1, 0.2, 0.5, 1.0, 2.0, 3.0, 4.0, 5.0, 10.0, 15.0, 20.0, 50.0 }; + return { 0.005, 0.01, 0.05, 0.1, 0.2, 0.5, 1.0, 2.0, 3.0, 4.0, 5.0, 10.0, 15.0, 20.0, 50.0 }; } diff --git a/ApplicationLibCode/Application/RiaGuiApplication.cpp b/ApplicationLibCode/Application/RiaGuiApplication.cpp index b7caa5bd64..459580aa76 100644 --- a/ApplicationLibCode/Application/RiaGuiApplication.cpp +++ b/ApplicationLibCode/Application/RiaGuiApplication.cpp @@ -1403,8 +1403,8 @@ void RiaGuiApplication::applyGuiPreferences( const RiaPreferences* existingViewsWithCustomColors = true; } if ( m_preferences->defaultScaleFactorZ() != oldPreferences->defaultScaleFactorZ() && - rim3dView->scaleZ() != static_cast( oldPreferences->defaultScaleFactorZ() ) && - rim3dView->scaleZ() != static_cast( m_preferences->defaultScaleFactorZ() ) ) + rim3dView->scaleZ() != oldPreferences->defaultScaleFactorZ() && + rim3dView->scaleZ() != m_preferences->defaultScaleFactorZ() ) { existingViewsWithCustomZScale = true; } @@ -1471,10 +1471,9 @@ void RiaGuiApplication::applyGuiPreferences( const RiaPreferences* rim3dView->applyBackgroundColorAndFontChanges(); } - if ( oldPreferences && - ( applySettingsToAllViews || rim3dView->scaleZ() == static_cast( oldPreferences->defaultScaleFactorZ() ) ) ) + if ( oldPreferences && ( applySettingsToAllViews || rim3dView->scaleZ() == oldPreferences->defaultScaleFactorZ() ) ) { - rim3dView->setScaleZ( static_cast( m_preferences->defaultScaleFactorZ() ) ); + rim3dView->setScaleZ( m_preferences->defaultScaleFactorZ() ); rim3dView->updateScaling(); if ( rim3dView == activeViewWindow() ) { diff --git a/ApplicationLibCode/Application/RiaPreferences.cpp b/ApplicationLibCode/Application/RiaPreferences.cpp index e0c7206dd5..fe61f1819a 100644 --- a/ApplicationLibCode/Application/RiaPreferences.cpp +++ b/ApplicationLibCode/Application/RiaPreferences.cpp @@ -45,6 +45,7 @@ #include #include #include +#include namespace caf { @@ -149,7 +150,7 @@ RiaPreferences::RiaPreferences() "The viewer background color for new views", "" ); - CAF_PDM_InitField( &m_defaultScaleFactorZ, "defaultScaleFactorZ", 5, "Default Z Scale Factor" ); + CAF_PDM_InitField( &m_defaultScaleFactorZ, "defaultScaleFactorZ", 5.0, "Default Z Scale Factor" ); CAF_PDM_InitFieldNoDefault( &defaultSceneFontSize, "defaultSceneFontSizePt", "Viewer Font Size" ); CAF_PDM_InitFieldNoDefault( &defaultAnnotationFontSize, "defaultAnnotationFontSizePt", "Annotation Font Size" ); @@ -301,7 +302,7 @@ void RiaPreferences::defineEditorAttribute( const caf::PdmFieldHandle* field, QS myAttr->minimumContentsLength = 2; } } - if ( field == &m_multiLateralWellPattern ) + else if ( field == &m_multiLateralWellPattern ) { caf::PdmUiLineEditorAttribute* myAttr = dynamic_cast( attribute ); if ( myAttr ) @@ -309,6 +310,14 @@ void RiaPreferences::defineEditorAttribute( const caf::PdmFieldHandle* field, QS myAttr->validator = new RiaValidRegExpValidator( RiaPreferences::current()->defaultMultiLateralWellNamePattern() ); } } + else if ( field == &m_defaultScaleFactorZ ) + { + auto myAttr = dynamic_cast( attribute ); + if ( myAttr ) + { + myAttr->validator = new QDoubleValidator( 0.000001, 100000.0, 6 ); + } + } } //-------------------------------------------------------------------------------------------------- @@ -836,8 +845,9 @@ RiaDefines::RINavigationPolicy RiaPreferences::navigationPolicy() const //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -int RiaPreferences::defaultScaleFactorZ() const +double RiaPreferences::defaultScaleFactorZ() const { + if ( m_defaultScaleFactorZ < 0.000001 ) return 0.000001; return m_defaultScaleFactorZ(); } diff --git a/ApplicationLibCode/Application/RiaPreferences.h b/ApplicationLibCode/Application/RiaPreferences.h index 986923d366..9af51b9741 100644 --- a/ApplicationLibCode/Application/RiaPreferences.h +++ b/ApplicationLibCode/Application/RiaPreferences.h @@ -103,7 +103,7 @@ public: // 3D view RiaDefines::MeshModeType defaultMeshModeType() const; RiaDefines::RINavigationPolicy navigationPolicy() const; - int defaultScaleFactorZ() const; + double defaultScaleFactorZ() const; bool showLegendBackground() const; bool showInfoBox() const; bool showGridBox() const; @@ -212,7 +212,7 @@ private: // 3d view caf::PdmField> m_defaultMeshModeType; caf::PdmField> m_navigationPolicy; - caf::PdmField m_defaultScaleFactorZ; + caf::PdmField m_defaultScaleFactorZ; caf::PdmField m_showLegendBackground; caf::PdmField m_enableFaultsByDefault; caf::PdmField m_showInfoBox;