summaryrefslogtreecommitdiff
path: root/sfx2/source/doc/templatedlg.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2/source/doc/templatedlg.cxx')
-rw-r--r--sfx2/source/doc/templatedlg.cxx21
1 files changed, 21 insertions, 0 deletions
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 0e7fe291c2b9..decb401df636 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -310,6 +310,9 @@ IMPL_LINK_NOARG(SfxTemplateManagerDlg,TBXViewHdl)
case TBI_TEMPLATE_IMPORT:
OnTemplateImport();
break;
+ case TBI_TEMPLATE_FOLDER_DEL:
+ OnFolderDelete();
+ break;
default:
break;
}
@@ -418,7 +421,10 @@ IMPL_LINK(SfxTemplateManagerDlg, TVFolderStateHdl, const ThumbnailViewItem*, pIt
if (pItem->isSelected())
{
if (maSelFolders.empty())
+ {
mpViewBar->EnableItem(TBI_TEMPLATE_IMPORT,true);
+ mpViewBar->ShowItem(TBI_TEMPLATE_FOLDER_DEL);
+ }
maSelFolders.insert(pItem);
}
@@ -427,7 +433,10 @@ IMPL_LINK(SfxTemplateManagerDlg, TVFolderStateHdl, const ThumbnailViewItem*, pIt
maSelFolders.erase(pItem);
if (maSelFolders.empty())
+ {
mpViewBar->EnableItem(TBI_TEMPLATE_IMPORT,false);
+ mpViewBar->HideItem(TBI_TEMPLATE_FOLDER_DEL);
+ }
}
return 0;
@@ -762,6 +771,18 @@ void SfxTemplateManagerDlg::OnTemplateDelete ()
}
}
+void SfxTemplateManagerDlg::OnFolderDelete()
+{
+ std::set<const ThumbnailViewItem*>::const_iterator pIter;
+ for (pIter = maSelFolders.begin(); pIter != maSelFolders.end();)
+ {
+ if (maView->removeRegion((*pIter)->mnId))
+ maSelFolders.erase(pIter++);
+ else
+ ++pIter;
+ }
+}
+
void SfxTemplateManagerDlg::centerTopButtons()
{
Point aFirstBtnPos = aButtonAll.GetPosPixel();