@@ -584,6 +584,7 @@ QgisApp::~QgisApp()
584
584
delete mMapTools .mAddIsland ;
585
585
delete mMapTools .mNodeTool ;
586
586
delete mMapTools .mMoveLabel ;
587
+ delete mMapTools .mRotateLabel ;
587
588
delete mMapTools .mChangeLabelProperties ;
588
589
589
590
delete mPythonUtils ;
@@ -3955,6 +3956,8 @@ void QgisApp::labeling()
3955
3956
// alter labeling - save the changes
3956
3957
labelGui.layerSettings ().writeToLayer ( vlayer );
3957
3958
3959
+ activateDeactivateLayerRelatedActions ( layer );
3960
+
3958
3961
// trigger refresh
3959
3962
if ( mMapCanvas )
3960
3963
{
@@ -6171,6 +6174,10 @@ void QgisApp::activateDeactivateLayerRelatedActions( QgsMapLayer* layer )
6171
6174
mActionCaptureLine ->setVisible ( false );
6172
6175
mActionCapturePolygon ->setVisible ( false );
6173
6176
6177
+ mActionMoveLabel ->setEnabled ( false );
6178
+ mActionRotateLabel ->setEnabled ( false );
6179
+ mActionChangeLabelProperties ->setEnabled ( false );
6180
+
6174
6181
return ;
6175
6182
}
6176
6183
@@ -6247,11 +6254,29 @@ void QgisApp::activateDeactivateLayerRelatedActions( QgsMapLayer* layer )
6247
6254
dprovider->capabilities () & QgsVectorDataProvider::AddFeatures );
6248
6255
6249
6256
mActionMergeFeatureAttributes ->setEnabled ( layerHasSelection );
6257
+
6258
+ if ( layer->customProperty ( " labeling" ).toString () == QString ( " pal" ) )
6259
+ {
6260
+ int colX, colY, colAng;
6261
+ mActionMoveLabel ->setEnabled ( qobject_cast<QgsMapToolMoveLabel*>( mMapTools .mMoveLabel ) && qobject_cast<QgsMapToolMoveLabel*>( mMapTools .mMoveLabel )->layerIsMoveable ( layer, colX, colY ) );
6262
+ mActionRotateLabel ->setEnabled ( qobject_cast<QgsMapToolRotateLabel*>( mMapTools .mRotateLabel ) && qobject_cast<QgsMapToolRotateLabel*>( mMapTools .mMoveLabel )->layerIsRotatable ( layer, colAng ) );
6263
+ mActionChangeLabelProperties ->setEnabled ( true );
6264
+ }
6265
+ else
6266
+ {
6267
+ mActionMoveLabel ->setEnabled ( false );
6268
+ mActionRotateLabel ->setEnabled ( false );
6269
+ mActionChangeLabelProperties ->setEnabled ( false );
6270
+ }
6250
6271
}
6251
6272
else
6252
6273
{
6253
6274
mActionMergeFeatures ->setEnabled ( false );
6254
6275
mActionMergeFeatureAttributes ->setEnabled ( false );
6276
+
6277
+ mActionMoveLabel ->setEnabled ( false );
6278
+ mActionRotateLabel ->setEnabled ( false );
6279
+ mActionChangeLabelProperties ->setEnabled ( false );
6255
6280
}
6256
6281
6257
6282
// moving enabled if geometry changes are supported
0 commit comments