Index: src/app/qgisapp.h =================================================================== --- src/app/qgisapp.h (revision 13686) +++ src/app/qgisapp.h (working copy) @@ -359,6 +359,9 @@ //! returns pointer to map legend QgsLegend *legend(); + //! emit initializationCompleted signal + void completeInitialization(); + public slots: //! Zoom to full extent void zoomFull(); @@ -742,6 +745,10 @@ @note added in version 1.4*/ void composerWillBeRemoved( QgsComposerView* v ); + /**This signal is emitted when QGIS' initialization is complete + @note added in version 1.6*/ + void initializationCompleted(); + private: /** This method will open a dialog so the user can select the sublayers * to load Index: src/app/main.cpp =================================================================== --- src/app/main.cpp (revision 13686) +++ src/app/main.cpp (working copy) @@ -774,5 +774,8 @@ mypSplash->finish( qgis ); delete mypSplash; + + qgis->completeInitialization(); + return myApp.exec(); } Index: src/app/qgisapp.cpp =================================================================== --- src/app/qgisapp.cpp (revision 13686) +++ src/app/qgisapp.cpp (working copy) @@ -6771,3 +6771,8 @@ QgsNetworkAccessManager::instance()->setProxy( proxy ); #endif } + +void QgisApp::completeInitialization() +{ + emit initializationCompleted(); +} Index: src/app/qgisappinterface.cpp =================================================================== --- src/app/qgisappinterface.cpp (revision 13686) +++ src/app/qgisappinterface.cpp (working copy) @@ -39,8 +39,12 @@ this, SIGNAL( currentLayerChanged( QgsMapLayer * ) ) ); connect( qgis, SIGNAL( currentThemeChanged( QString ) ), this, SIGNAL( currentThemeChanged( QString ) ) ); - connect( qgis, SIGNAL( composerAdded( QgsComposerView* ) ), this, SIGNAL( composerAdded( QgsComposerView* ) ) ); - connect( qgis, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ), this, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ) ); + connect( qgis, SIGNAL( composerAdded( QgsComposerView* ) ), + this, SIGNAL( composerAdded( QgsComposerView* ) ) ); + connect( qgis, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ), + this, SIGNAL( composerWillBeRemoved( QgsComposerView* ) ) ); + connect( qgis, SIGNAL( initializationCompleted() ), + this, SIGNAL( initializationCompleted() ) ); } QgisAppInterface::~QgisAppInterface() Index: src/gui/qgisinterface.h =================================================================== --- src/gui/qgisinterface.h (revision 13686) +++ src/gui/qgisinterface.h (working copy) @@ -309,6 +309,9 @@ /**This signal is emitted before a new composer instance is going to be removed @note added in version 1.4*/ void composerWillBeRemoved( QgsComposerView* v ); + /**This signal is emitted when the initialization is complete + @note added in version 1.6*/ + void initializationCompleted(); }; // FIXME: also in core/qgis.h