summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorRafael Dominguez <venccsralph@gmail.com>2012-08-12 17:14:16 -0430
committerRafael Dominguez <venccsralph@gmail.com>2012-08-12 22:14:25 -0430
commit2b5ce6190066ed030cc221c4cfa236a8e4e4747e (patch)
tree06a2636b2d1662dd1ec325538e25ddf613f3b972 /sfx2
parentd10b5d34a266f1e1793109a629804cd54f665258 (diff)
Display error msg when moving a template from a repository fails.
Change-Id: I5f483bcb0e216a6337e0bf70399916bd2da3faec
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/inc/sfx2/templateabstractview.hxx2
-rw-r--r--sfx2/inc/sfx2/templatelocalview.hxx4
-rw-r--r--sfx2/source/control/templateabstractview.cxx5
-rw-r--r--sfx2/source/control/templatelocalview.cxx12
-rw-r--r--sfx2/source/doc/templatedlg.cxx18
5 files changed, 36 insertions, 5 deletions
diff --git a/sfx2/inc/sfx2/templateabstractview.hxx b/sfx2/inc/sfx2/templateabstractview.hxx
index 24edcd7909c0..1555ebbd4315 100644
--- a/sfx2/inc/sfx2/templateabstractview.hxx
+++ b/sfx2/inc/sfx2/templateabstractview.hxx
@@ -76,6 +76,8 @@ public:
sal_uInt16 getOverlayRegionId () const;
+ const OUString& getOverlayName () const;
+
// Check if the overlay is visible or not.
bool isOverlayVisible () const;
diff --git a/sfx2/inc/sfx2/templatelocalview.hxx b/sfx2/inc/sfx2/templatelocalview.hxx
index f3d4ec612099..d59519699600 100644
--- a/sfx2/inc/sfx2/templatelocalview.hxx
+++ b/sfx2/inc/sfx2/templatelocalview.hxx
@@ -51,9 +51,9 @@ public:
bool moveTemplates (std::set<const ThumbnailViewItem*> &rItems, const sal_uInt16 nTargetItem, bool bCopy);
- void copyFrom (const sal_uInt16 nRegionItemId, const BitmapEx &rThumbnail, const OUString &rPath);
+ bool copyFrom (const sal_uInt16 nRegionItemId, const BitmapEx &rThumbnail, const OUString &rPath);
- void copyFrom (TemplateLocalViewItem *pItem, const rtl::OUString &rPath);
+ bool copyFrom(TemplateLocalViewItem *pItem, const rtl::OUString &rPath);
bool exportTo (const sal_uInt16 nItemId, const sal_uInt16 nRegionItemId, const OUString &rName);
diff --git a/sfx2/source/control/templateabstractview.cxx b/sfx2/source/control/templateabstractview.cxx
index 4ce28f694ea5..cb42286d85aa 100644
--- a/sfx2/source/control/templateabstractview.cxx
+++ b/sfx2/source/control/templateabstractview.cxx
@@ -80,6 +80,11 @@ sal_uInt16 TemplateAbstractView::getOverlayRegionId() const
return mpItemView->getId();
}
+const OUString &TemplateAbstractView::getOverlayName() const
+{
+ return mpItemView->getName();
+}
+
bool TemplateAbstractView::isOverlayVisible () const
{
return mpItemView->IsVisible();
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index e4c07c75bf43..02168ce06bce 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -528,7 +528,7 @@ bool TemplateLocalView::moveTemplates(std::set<const ThumbnailViewItem *> &rItem
return ret;
}
-void TemplateLocalView::copyFrom(const sal_uInt16 nRegionItemId, const BitmapEx &rThumbnail,
+bool TemplateLocalView::copyFrom(const sal_uInt16 nRegionItemId, const BitmapEx &rThumbnail,
const OUString &rPath)
{
sal_uInt16 nRegionId = nRegionItemId - 1;
@@ -568,14 +568,18 @@ void TemplateLocalView::copyFrom(const sal_uInt16 nRegionItemId, const BitmapEx
pItem->maTemplates.push_back(aTemplate);
lcl_updateThumbnails(pItem);
+
+ return true;
}
break;
}
}
+
+ return false;
}
-void TemplateLocalView::copyFrom (TemplateLocalViewItem *pItem, const rtl::OUString &rPath)
+bool TemplateLocalView::copyFrom (TemplateLocalViewItem *pItem, const rtl::OUString &rPath)
{
sal_uInt16 nId = 0;
sal_uInt16 nDocId = 0;
@@ -606,7 +610,11 @@ void TemplateLocalView::copyFrom (TemplateLocalViewItem *pItem, const rtl::OUStr
lcl_updateThumbnails(pItem);
CalculateItemPositions();
+
+ return true;
}
+
+ return false;
}
bool TemplateLocalView::exportTo(const sal_uInt16 nItemId, const sal_uInt16 nRegionItemId, const OUString &rName)
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index b0461e7be82b..4291b6140e67 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -1243,16 +1243,32 @@ void SfxTemplateManagerDlg::remoteMoveTo(const sal_uInt16 nMenuId)
if (nItemId)
{
+ OUString aTemplateList;
+
std::set<const ThumbnailViewItem*>::const_iterator aIter;
for (aIter = maSelTemplates.begin(); aIter != maSelTemplates.end(); ++aIter)
{
const TemplateSearchViewItem *pItem =
static_cast<const TemplateSearchViewItem*>(*aIter);
- maView->copyFrom(nItemId,pItem->maPreview1,pItem->getPath());
+ if(!maView->copyFrom(nItemId,pItem->maPreview1,pItem->getPath()))
+ {
+ if (aTemplateList.isEmpty())
+ aTemplateList = pItem->maTitle;
+ else
+ aTemplateList = aTemplateList + "\n" + pItem->maTitle;
+ }
}
maView->Invalidate(INVALIDATE_NOERASE);
+
+ if (!aTemplateList.isEmpty())
+ {
+ OUString aMsg(SfxResId(STR_MSG_ERROR_REMOTE_MOVE).toString());
+ aMsg = aMsg.replaceFirst("$1",mpOnlineView->getOverlayName());
+ aMsg = aMsg.replaceFirst("$2",maView->GetItemText(nItemId));
+ ErrorBox(this,WB_OK,aMsg.replaceFirst("$1",aTemplateList)).Execute();
+ }
}
}