diff options
author | Rafael Dominguez <venccsralph@gmail.com> | 2013-03-26 20:44:44 -0430 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2013-04-08 07:37:24 +0000 |
commit | 951f7341f8449a79dc9e0f3bae5e4d650ecb3314 (patch) | |
tree | 9df3e549e24000cb731dd24ecdb548f1837e6702 /sfx2 | |
parent | 2231019888a670198e481b9f5771c356e4a73ffe (diff) |
Fix deleting templates through Template Manager.
Change-Id: I79c16eb264d957b510a8bf8ee2009e1f55190a0b
Reviewed-on: https://gerrit.libreoffice.org/3239
Reviewed-by: Miklos Vajna <vmiklos@suse.cz>
Tested-by: Miklos Vajna <vmiklos@suse.cz>
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/doc/templatedlg.cxx | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx index 6951df3b49fa..75449d0ddfc2 100644 --- a/sfx2/source/doc/templatedlg.cxx +++ b/sfx2/source/doc/templatedlg.cxx @@ -1079,30 +1079,19 @@ void SfxTemplateManagerDlg::OnTemplateDelete () else { sal_uInt16 nRegionItemId = maView->getCurRegionItemId(); + std::set<const ThumbnailViewItem*,selection_cmp_fn> aSelTemplates = maSelTemplates; //Avoid invalid iterators std::set<const ThumbnailViewItem*,selection_cmp_fn>::const_iterator pIter; - for (pIter = maSelTemplates.begin(); pIter != maSelTemplates.end();) + for (pIter = aSelTemplates.begin(); pIter != aSelTemplates.end(); ++pIter) { - if (maView->removeTemplate((*pIter)->mnId,nRegionItemId)) - maSelTemplates.erase(pIter++); - else + if (!maView->removeTemplate((*pIter)->mnId,nRegionItemId)) { if (aTemplateList.isEmpty()) aTemplateList = (*pIter)->maTitle; else aTemplateList = aTemplateList + "\n" + (*pIter)->maTitle; - - ++pIter; } } - - if (maSelTemplates.empty()) - { - mpTemplateBar->SetItemDown(TBI_TEMPLATE_DELETE,false); - mpTemplateBar->Show(false); - mpViewBar->Show(); - mpActionBar->Show(); - } } if (!aTemplateList.isEmpty()) |