diff --git a/python/gui/auto_generated/qgsadvanceddigitizingfloater.sip.in b/python/gui/auto_generated/qgsadvanceddigitizingfloater.sip.in index b72ad8606aa..fb79180d879 100644 --- a/python/gui/auto_generated/qgsadvanceddigitizingfloater.sip.in +++ b/python/gui/auto_generated/qgsadvanceddigitizingfloater.sip.in @@ -30,7 +30,7 @@ feature. It proxies display and actions to :py:class:`QgsMapToolAdvancedDigitizi %End public: - enum FloaterItem + enum class FloaterItem { XCoordinate, YCoordinate, diff --git a/src/gui/qgsadvanceddigitizingdockwidget.cpp b/src/gui/qgsadvanceddigitizingdockwidget.cpp index 99aae6690b1..87b92274ed2 100644 --- a/src/gui/qgsadvanceddigitizingdockwidget.cpp +++ b/src/gui/qgsadvanceddigitizingdockwidget.cpp @@ -280,7 +280,8 @@ QgsAdvancedDigitizingDockWidget::QgsAdvancedDigitizingDockWidget( QgsMapCanvas * mFloater->setItemVisibility( QgsAdvancedDigitizingFloater::FloaterItem::XCoordinate, checked ); mFloater->setItemVisibility( QgsAdvancedDigitizingFloater::FloaterItem::YCoordinate, checked ); } ); - action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/XYShowInFloater" ), true ).toBool() ); + // There is no separate menu option for X and Y so let's check for X only. + action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/XCoordinateShowInFloater" ), true ).toBool() ); } { @@ -291,7 +292,7 @@ QgsAdvancedDigitizingDockWidget::QgsAdvancedDigitizingDockWidget( QgsMapCanvas * { mFloater->setItemVisibility( QgsAdvancedDigitizingFloater::FloaterItem::ZCoordinate, checked ); } ); - action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/ZShowInFloater" ), true ).toBool() ); + action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/ZCoordinateShowInFloater" ), true ).toBool() ); } { @@ -302,7 +303,7 @@ QgsAdvancedDigitizingDockWidget::QgsAdvancedDigitizingDockWidget( QgsMapCanvas * { mFloater->setItemVisibility( QgsAdvancedDigitizingFloater::FloaterItem::MCoordinate, checked ); } ); - action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/MShowInFloater" ), true ).toBool() ); + action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/MCoordinateShowInFloater" ), true ).toBool() ); } { @@ -313,7 +314,7 @@ QgsAdvancedDigitizingDockWidget::QgsAdvancedDigitizingDockWidget( QgsMapCanvas * { mFloater->setItemVisibility( QgsAdvancedDigitizingFloater::FloaterItem::CommonAngleSnapping, checked ); } ); - action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/CommonAngleShowInFloater" ), false ).toBool() ); + action->setChecked( QgsSettings().value( QStringLiteral( "/Cad/CommonAngleSnappingShowInFloater" ), false ).toBool() ); } { diff --git a/src/gui/qgsadvanceddigitizingfloater.cpp b/src/gui/qgsadvanceddigitizingfloater.cpp index 6a8c47b736f..22ae243dc9b 100644 --- a/src/gui/qgsadvanceddigitizingfloater.cpp +++ b/src/gui/qgsadvanceddigitizingfloater.cpp @@ -18,7 +18,6 @@ #include #include "qgsadvanceddigitizingfloater.h" -#include "qgsmessagelog.h" #include "qgsmapcanvas.h" #include "qgssettings.h" #include "qgsfocuswatcher.h" @@ -176,7 +175,8 @@ void QgsAdvancedDigitizingFloater::setActive( bool active ) void QgsAdvancedDigitizingFloater::setItemVisibility( const QgsAdvancedDigitizingFloater::FloaterItem &item, bool visible ) { - QgsSettings().setValue( QStringLiteral( "/Cad/%1ShowInFloater" ).arg( QMetaEnum::fromType().valueToKey( item ) ), visible ); + const QMetaEnum enumData { QMetaEnum::fromType() }; + QgsSettings().setValue( QStringLiteral( "/Cad/%1ShowInFloater" ).arg( enumData.valueToKey( static_cast( item ) ) ), visible ); mItemsVisibility.setFlag( item, visible ); switch ( item ) { diff --git a/src/gui/qgsadvanceddigitizingfloater.h b/src/gui/qgsadvanceddigitizingfloater.h index 5ad7b8611d8..b4acc1ffb10 100644 --- a/src/gui/qgsadvanceddigitizingfloater.h +++ b/src/gui/qgsadvanceddigitizingfloater.h @@ -44,16 +44,16 @@ class GUI_EXPORT QgsAdvancedDigitizingFloater : public QWidget, private Ui::QgsA public: //! Available floater items - enum FloaterItem + enum class FloaterItem : int { - XCoordinate, - YCoordinate, - MCoordinate, - ZCoordinate, - Angle, - CommonAngleSnapping, - Distance, - Bearing, + XCoordinate = 1 << 1, + YCoordinate = 1 << 2, + MCoordinate = 1 << 3, + ZCoordinate = 1 << 4, + Angle = 1 << 5, + CommonAngleSnapping = 1 << 6, + Distance = 1 << 7, + Bearing = 1 << 8, }; Q_DECLARE_FLAGS( FloaterItems, FloaterItem ) Q_FLAG( FloaterItem )