summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-05-27 09:06:48 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-05-27 09:32:45 +0200
commit4721729fba32a02683ecc930b630491599f8c6c5 (patch)
tree6dc6498ee82077cddb7366c4d94c0c8542abdd78 /sw
parent69578bf06d206e234ea8fd4a5f8331edfd9eb590 (diff)
SwXParaFrameEnumeration: ignore textboxes
Change-Id: Ia4441a06c29447d4a4f4cbe6250248a0f68831f1
Diffstat (limited to 'sw')
-rw-r--r--sw/source/core/unocore/unoobj2.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/sw/source/core/unocore/unoobj2.cxx b/sw/source/core/unocore/unoobj2.cxx
index cc43ec69e6b3..4660ce1fee0c 100644
--- a/sw/source/core/unocore/unoobj2.cxx
+++ b/sw/source/core/unocore/unoobj2.cxx
@@ -27,6 +27,7 @@
#include <frmfmt.hxx>
#include <doc.hxx>
#include <IDocumentUndoRedo.hxx>
+#include <textboxhelper.hxx>
#include <ndtxt.hxx>
#include <ndnotxt.hxx>
#include <unocrsr.hxx>
@@ -181,10 +182,17 @@ void CollectFrameAtNode( SwClient& rClnt, const SwNodeIndex& rIdx,
{
const SwSortedObjs *pObjs = pCFrm->GetDrawObjs();
if( pObjs )
+ {
+ std::list<SwFrmFmt*> aTextBoxes = SwTextBoxHelper::findTextBoxes(pDoc);
for( sal_uInt16 i = 0; i < pObjs->Count(); ++i )
{
SwAnchoredObject* pAnchoredObj = (*pObjs)[i];
SwFrmFmt& rFmt = pAnchoredObj->GetFrmFmt();
+
+ // Filter out textboxes, which are not interesting at an UNO level.
+ if (std::find(aTextBoxes.begin(), aTextBoxes.end(), &rFmt) != aTextBoxes.end())
+ continue;
+
if ( rFmt.GetAnchor().GetAnchorId() == nChkType )
{
// create SwDepend and insert into array
@@ -199,6 +207,7 @@ void CollectFrameAtNode( SwClient& rClnt, const SwNodeIndex& rIdx,
rFrames.push_back(entry);
}
}
+ }
}
else
{