Skip to content

Commit a45bf79

Browse files

File tree

3 files changed

+14
-0
lines changed

3 files changed

+14
-0
lines changed
 

‎src/app/legend/qgslegendlayerfile.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -476,6 +476,12 @@ void QgsLegendLayerFile::toggleEditing()
476476

477477
}
478478

479+
bool QgsLegendLayerFile::isEditing()
480+
{
481+
QgsVectorLayer* vlayer = dynamic_cast<QgsVectorLayer*>(mLyr.layer());
482+
return vlayer && vlayer->isEditable();
483+
}
484+
479485
void QgsLegendLayerFile::layerNameChanged()
480486
{
481487
QString name = mLyr.layer()->name();

‎src/app/legend/qgslegendlayerfile.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,9 @@ class QgsLegendLayerFile : public QgsLegendItem
8989
/**Toggle editing for layer*/
9090
void toggleEditing();
9191

92+
/**Return editing status for layer*/
93+
bool isEditing();
94+
9295
/**Toggle show in overview*/
9396
void showInOverview();
9497

‎src/app/qgisapp.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3774,6 +3774,11 @@ void QgisApp::inOverview()
37743774

37753775
void QgisApp::removeLayer()
37763776
{
3777+
QgsLegendLayerFile* currentLayerFile = mMapLegend->currentLayerFile();
3778+
if(currentLayerFile && currentLayerFile->isEditing() )
3779+
{
3780+
currentLayerFile->toggleEditing();
3781+
}
37773782
mMapLegend->legendLayerRemove();
37783783
}
37793784

0 commit comments

Comments
 (0)
Please sign in to comment.