[QGIS Commit] r14909 - in trunk/qgis/src/app: . composer
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Tue Dec 14 10:22:57 EST 2010
Author: mhugent
Date: 2010-12-14 07:22:57 -0800 (Tue, 14 Dec 2010)
New Revision: 14909
Modified:
trunk/qgis/src/app/composer/qgscomposer.cpp
trunk/qgis/src/app/composer/qgscomposer.h
trunk/qgis/src/app/qgisapp.cpp
Log:
Notify plugins about composer addition / deletion also when loading a composer template
Modified: trunk/qgis/src/app/composer/qgscomposer.cpp
===================================================================
--- trunk/qgis/src/app/composer/qgscomposer.cpp 2010-12-14 08:21:43 UTC (rev 14908)
+++ trunk/qgis/src/app/composer/qgscomposer.cpp 2010-12-14 15:22:57 UTC (rev 14909)
@@ -959,6 +959,8 @@
return;
}
+ emit composerWillBeRemoved( mView );
+
QDomDocument templateDocument;
if ( !templateDocument.setContent( &templateFile, false ) )
{
@@ -968,6 +970,7 @@
deleteItems();
readXML( templateDocument );
+ emit composerAdded( mView );
}
void QgsComposer::on_mActionMoveItemContent_triggered()
Modified: trunk/qgis/src/app/composer/qgscomposer.h
===================================================================
--- trunk/qgis/src/app/composer/qgscomposer.h 2010-12-14 08:21:43 UTC (rev 14908)
+++ trunk/qgis/src/app/composer/qgscomposer.h 2010-12-14 15:22:57 UTC (rev 14909)
@@ -103,7 +103,11 @@
//! Is emitted every time the view zoom has changed
void zoomLevelChanged();
+ void composerAdded( QgsComposerView* v );
+ //!Composer deletes the old composerview when loading a template
+ void composerWillBeRemoved( QgsComposerView* v );
+
public slots:
//! Zoom to full extent of the paper
void on_mActionZoomAll_triggered();
Modified: trunk/qgis/src/app/qgisapp.cpp
===================================================================
--- trunk/qgis/src/app/qgisapp.cpp 2010-12-14 08:21:43 UTC (rev 14908)
+++ trunk/qgis/src/app/qgisapp.cpp 2010-12-14 15:22:57 UTC (rev 14909)
@@ -903,7 +903,7 @@
mActionSelect->setEnabled( false );
QString selectOptionTip( tr( ", hold shift to select by containment" ) + singleSelectOptTip );
-
+
mActionSelectRectangle = new QAction( getThemeIcon( "mActionSelectRectangle.png" ), tr( "Select features by rectangle" ), this );
shortcuts->registerAction( mActionSelectRectangle );
mActionSelectRectangle->setStatusTip( tr( "Select features by rectangle" ) + selectOptionTip );
@@ -4220,12 +4220,15 @@
mLastComposerId++;
//create new composer object
QgsComposer* newComposerObject = new QgsComposer( this, tr( "Composer %1" ).arg( mLastComposerId ) );
+
//add it to the map of existing print composers
mPrintComposers.insert( newComposerObject );
//and place action into print composers menu
mPrintComposersMenu->addAction( newComposerObject->windowAction() );
newComposerObject->open();
emit composerAdded( newComposerObject->view() );
+ connect( newComposerObject, SIGNAL( composerAdded( QgsComposerView* ) ), this, SIGNAL( composerAdded( QgsComposerView* ) ) );
+ connect( newComposerObject, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ), this, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ) );
return newComposerObject;
}
@@ -4262,6 +4265,8 @@
composer->close();
}
emit composerAdded( composer->view() );
+ connect( composer, SIGNAL( composerAdded( QgsComposerView* ) ), this, SIGNAL( composerAdded( QgsComposerView* ) ) );
+ connect( composer, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ), this, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ) );
}
return true;
}
More information about the QGIS-commit
mailing list