Skip to content

Commit 7b28760

Browse files
committed
Move map view crs setting to menu
1 parent 843a72e commit 7b28760

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed

src/app/qgsmapcanvasdockwidget.cpp

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ QgsMapCanvasDockWidget::QgsMapCanvasDockWidget( const QString &name, QWidget *pa
4343

4444
mMainWidget->layout()->addWidget( mMapCanvas );
4545

46-
connect( mActionSetCrs, &QAction::triggered, this, &QgsMapCanvasDockWidget::setMapCrs );
4746
connect( mActionSyncView, &QAction::toggled, this, &QgsMapCanvasDockWidget::syncView );
4847

4948
QMenu *menu = new QMenu();
@@ -54,6 +53,11 @@ QgsMapCanvasDockWidget::QgsMapCanvasDockWidget( const QString &name, QWidget *pa
5453
toolButton->setIcon( QgsApplication::getThemeIcon( QStringLiteral( "/mActionMapSettings.svg" ) ) );
5554
mToolbar->addWidget( toolButton );
5655

56+
connect( mActionSetCrs, &QAction::triggered, this, &QgsMapCanvasDockWidget::setMapCrs );
57+
connect( mMapCanvas, &QgsMapCanvas::destinationCrsChanged, this, &QgsMapCanvasDockWidget::mapCrsChanged );
58+
mapCrsChanged();
59+
menu->addAction( mActionSetCrs );
60+
5761
QgsMapSettingsAction *settingsAction = new QgsMapSettingsAction( menu );
5862
menu->addAction( settingsAction );
5963
mScaleCombo = settingsAction->scaleCombo();
@@ -188,6 +192,13 @@ void QgsMapCanvasDockWidget::mapExtentChanged()
188192
syncView( true );
189193
}
190194

195+
void QgsMapCanvasDockWidget::mapCrsChanged()
196+
{
197+
mActionSetCrs->setText( tr( "Change Map CRS (%1)" ).arg( mMapCanvas->mapSettings().destinationCrs().isValid() ?
198+
mMapCanvas->mapSettings().destinationCrs().authid() :
199+
tr( "No projection" ) ) );
200+
}
201+
191202
QgsMapSettingsAction::QgsMapSettingsAction( QWidget *parent )
192203
: QWidgetAction( parent )
193204
{

src/app/qgsmapcanvasdockwidget.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ class APP_EXPORT QgsMapCanvasDockWidget : public QgsDockWidget, private Ui::QgsM
6161
void setMapCrs();
6262
void syncView( bool enabled );
6363
void mapExtentChanged();
64+
void mapCrsChanged();
6465

6566
private:
6667

src/ui/qgsmapcanvasdockwidgetbase.ui

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@
4141
<property name="floatable">
4242
<bool>false</bool>
4343
</property>
44-
<addaction name="mActionSetCrs"/>
4544
<addaction name="mActionSyncView"/>
4645
</widget>
4746
</item>

0 commit comments

Comments
 (0)