[QGIS Commit] r12385 - in trunk/qgis/src/app: . attributetable

svn_qgis at osgeo.org svn_qgis at osgeo.org
Wed Dec 9 11:43:38 EST 2009


Author: jef
Date: 2009-12-09 11:43:38 -0500 (Wed, 09 Dec 2009)
New Revision: 12385

Modified:
   trunk/qgis/src/app/attributetable/qgsattributetabledialog.cpp
   trunk/qgis/src/app/qgisapp.cpp
   trunk/qgis/src/app/qgisapp.h
Log:
confirmation/undo/redo for #1650

Modified: trunk/qgis/src/app/attributetable/qgsattributetabledialog.cpp
===================================================================
--- trunk/qgis/src/app/attributetable/qgsattributetabledialog.cpp	2009-12-09 16:42:56 UTC (rev 12384)
+++ trunk/qgis/src/app/attributetable/qgsattributetabledialog.cpp	2009-12-09 16:43:38 UTC (rev 12385)
@@ -235,7 +235,7 @@
 
 void QgsAttributeTableDialog::on_mDeleteSelectedButton_clicked()
 {
-  mLayer->deleteSelectedFeatures();
+  QgisApp::instance()->deleteSelected( mLayer );
 }
 
 void QgsAttributeTableDialog::on_cbxShowSelectedOnly_toggled( bool theFlag )

Modified: trunk/qgis/src/app/qgisapp.cpp
===================================================================
--- trunk/qgis/src/app/qgisapp.cpp	2009-12-09 16:42:56 UTC (rev 12384)
+++ trunk/qgis/src/app/qgisapp.cpp	2009-12-09 16:43:38 UTC (rev 12385)
@@ -3496,11 +3496,15 @@
   mMapLegend->legendLayerShowProperties();
 }
 
-void QgisApp::deleteSelected()
+void QgisApp::deleteSelected( QgsMapLayer *layer )
 {
-  QgsMapLayer *layer = mMapLegend->currentLayer();
   if ( !layer )
   {
+    layer = mMapLegend->currentLayer();
+  }
+
+  if ( !layer )
+  {
     QMessageBox::information( this, tr( "No Layer Selected" ),
                               tr( "To delete features, you must select a vector layer in the legend" ) );
     return;
@@ -3633,13 +3637,13 @@
   //and place action into print composers menu
   mPrintComposersMenu->addAction( newComposerObject->windowAction() );
   newComposerObject->open();
-  emit composerAdded(newComposerObject->view());
+  emit composerAdded( newComposerObject->view() );
   return newComposerObject;
 }
 
 void QgisApp::deleteComposer( QgsComposer* c )
 {
-  emit composerWillBeRemoved(c->view());
+  emit composerWillBeRemoved( c->view() );
   mPrintComposers.remove( c );
   mPrintComposersMenu->removeAction( c->windowAction() );
   delete c;

Modified: trunk/qgis/src/app/qgisapp.h
===================================================================
--- trunk/qgis/src/app/qgisapp.h	2009-12-09 16:42:56 UTC (rev 12384)
+++ trunk/qgis/src/app/qgisapp.h	2009-12-09 16:43:38 UTC (rev 12385)
@@ -379,6 +379,9 @@
 
     void loadOGRSublayers( QString layertype, QString uri, QStringList list );
 
+    /**Deletes the selected attributes for the currently selected vector layer*/
+    void deleteSelected( QgsMapLayer *layer = 0 );
+
   protected:
 
     //! Handle state changes (WindowTitleChange)
@@ -512,8 +515,6 @@
     void captureLine();
     //! activates the capture polygon tool
     void capturePolygon();
-    /**Deletes the selected attributes for the currently selected vector layer*/
-    void deleteSelected();
     //! activates the move feature tool
     void moveFeature();
     //! activates the reshape features tool
@@ -674,8 +675,8 @@
        @note added in version 1.4*/
     void composerAdded( QgsComposerView* v );
 
-     /**This signal is emitted before a new composer instance is going to be removed
-       @note added in version 1.4*/
+    /**This signal is emitted before a new composer instance is going to be removed
+      @note added in version 1.4*/
     void composerWillBeRemoved( QgsComposerView* v );
 
 



More information about the QGIS-commit mailing list