Skip to content

Commit 60fda2a

Browse files
author
mhugent
committedDec 14, 2010
Notify plugins about composer addition / deletion also when loading a composer template
git-svn-id: http://svn.osgeo.org/qgis/trunk@14909 c8812cc2-4d05-0410-92ff-de0c093fc19c
1 parent f117323 commit 60fda2a

File tree

3 files changed

+13
-1
lines changed

3 files changed

+13
-1
lines changed
 

‎src/app/composer/qgscomposer.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -959,6 +959,8 @@ void QgsComposer::on_mActionLoadFromTemplate_triggered()
959959
return;
960960
}
961961

962+
emit composerWillBeRemoved( mView );
963+
962964
QDomDocument templateDocument;
963965
if ( !templateDocument.setContent( &templateFile, false ) )
964966
{
@@ -968,6 +970,7 @@ void QgsComposer::on_mActionLoadFromTemplate_triggered()
968970

969971
deleteItems();
970972
readXML( templateDocument );
973+
emit composerAdded( mView );
971974
}
972975

973976
void QgsComposer::on_mActionMoveItemContent_triggered()

‎src/app/composer/qgscomposer.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,10 @@ class QgsComposer: public QMainWindow, private Ui::QgsComposerBase
103103
//! Is emitted every time the view zoom has changed
104104
void zoomLevelChanged();
105105

106+
void composerAdded( QgsComposerView* v );
107+
//!Composer deletes the old composerview when loading a template
108+
void composerWillBeRemoved( QgsComposerView* v );
109+
106110

107111
public slots:
108112
//! Zoom to full extent of the paper

‎src/app/qgisapp.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -903,7 +903,7 @@ void QgisApp::createActions()
903903
mActionSelect->setEnabled( false );
904904

905905
QString selectOptionTip( tr( ", hold shift to select by containment" ) + singleSelectOptTip );
906-
906+
907907
mActionSelectRectangle = new QAction( getThemeIcon( "mActionSelectRectangle.png" ), tr( "Select features by rectangle" ), this );
908908
shortcuts->registerAction( mActionSelectRectangle );
909909
mActionSelectRectangle->setStatusTip( tr( "Select features by rectangle" ) + selectOptionTip );
@@ -4220,12 +4220,15 @@ QgsComposer* QgisApp::createNewComposer()
42204220
mLastComposerId++;
42214221
//create new composer object
42224222
QgsComposer* newComposerObject = new QgsComposer( this, tr( "Composer %1" ).arg( mLastComposerId ) );
4223+
42234224
//add it to the map of existing print composers
42244225
mPrintComposers.insert( newComposerObject );
42254226
//and place action into print composers menu
42264227
mPrintComposersMenu->addAction( newComposerObject->windowAction() );
42274228
newComposerObject->open();
42284229
emit composerAdded( newComposerObject->view() );
4230+
connect( newComposerObject, SIGNAL( composerAdded( QgsComposerView* ) ), this, SIGNAL( composerAdded( QgsComposerView* ) ) );
4231+
connect( newComposerObject, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ), this, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ) );
42294232
return newComposerObject;
42304233
}
42314234

@@ -4262,6 +4265,8 @@ bool QgisApp::loadComposersFromProject( const QDomDocument& doc )
42624265
composer->close();
42634266
}
42644267
emit composerAdded( composer->view() );
4268+
connect( composer, SIGNAL( composerAdded( QgsComposerView* ) ), this, SIGNAL( composerAdded( QgsComposerView* ) ) );
4269+
connect( composer, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ), this, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ) );
42654270
}
42664271
return true;
42674272
}

0 commit comments

Comments
 (0)
Please sign in to comment.