void QgsComposerManager::on_mAddButton_clicked() { QgsComposer* newComposer = 0; newComposer = QgisApp::instance()->createNewComposer(); if ( !newComposer ) { return; } if ( mTemplate->currentIndex() > 0 ) { QDomDocument templateDoc; QFile templateFile( mTemplate->itemData( mTemplate->currentIndex() ).toString() ); if ( templateFile.open( QIODevice::ReadOnly ) ) { if ( templateDoc.setContent( &templateFile, false ) ) { newComposer->readXML( templateDoc ); } } } QListWidgetItem* item = new QListWidgetItem( newComposer->title(), mComposerListWidget ); item->setFlags( Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable ); mItemComposerMap.insert( item, newComposer ); }