summaryrefslogtreecommitdiff
path: root/editeng/source
diff options
context:
space:
mode:
Diffstat (limited to 'editeng/source')
-rw-r--r--editeng/source/editeng/editeng.cxx17
-rw-r--r--editeng/source/editeng/impedit.hxx1
-rw-r--r--editeng/source/editeng/impedit4.cxx20
3 files changed, 22 insertions, 16 deletions
diff --git a/editeng/source/editeng/editeng.cxx b/editeng/source/editeng/editeng.cxx
index c91497172b82..c9c9941f89a0 100644
--- a/editeng/source/editeng/editeng.cxx
+++ b/editeng/source/editeng/editeng.cxx
@@ -977,22 +977,7 @@ void EditEngine::SetEndPasteOrDropHdl( const Link<PasteOrDropInfos&,void>& rLink
std::unique_ptr<EditTextObject> EditEngine::CreateTextObject( sal_Int32 nPara, sal_Int32 nParas )
{
- DBG_ASSERT(0 <= nPara && nPara < getImpl().GetEditDoc().Count(), "CreateTextObject: Startpara out of Range");
- DBG_ASSERT(nParas <= getImpl().GetEditDoc().Count() - nPara, "CreateTextObject: Endpara out of Range");
-
- ContentNode* pStartNode = getImpl().GetEditDoc().GetObject(nPara);
- ContentNode* pEndNode = getImpl().GetEditDoc().GetObject(nPara + nParas - 1);
- DBG_ASSERT( pStartNode, "Start-Paragraph does not exist: CreateTextObject" );
- DBG_ASSERT( pEndNode, "End-Paragraph does not exist: CreateTextObject" );
-
- if ( pStartNode && pEndNode )
- {
- EditSelection aTmpSel;
- aTmpSel.Min() = EditPaM( pStartNode, 0 );
- aTmpSel.Max() = EditPaM( pEndNode, pEndNode->Len() );
- return getImpl().CreateTextObject(aTmpSel);
- }
- return nullptr;
+ return getImpl().CreateTextObject(nPara, nParas);
}
void EditEngine::RemoveParagraph( sal_Int32 nPara )
diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx
index 066de62dc742..61c8f94ac0a2 100644
--- a/editeng/source/editeng/impedit.hxx
+++ b/editeng/source/editeng/impedit.hxx
@@ -1037,6 +1037,7 @@ public:
void Write( SvStream& rOutput, EETextFormat eFormat );
void Write(SvStream& rOutput, EETextFormat eFormat, const EditSelection& rSel);
+ std::unique_ptr<EditTextObject> CreateTextObject(sal_Int32 nPara, sal_Int32 nParas);
std::unique_ptr<EditTextObject> CreateTextObject();
std::unique_ptr<EditTextObject> CreateTextObject(const EditSelection& rSel);
void SetText( const EditTextObject& rTextObject );
diff --git a/editeng/source/editeng/impedit4.cxx b/editeng/source/editeng/impedit4.cxx
index b0a46db93e71..c0e499e6f1bf 100644
--- a/editeng/source/editeng/impedit4.cxx
+++ b/editeng/source/editeng/impedit4.cxx
@@ -1028,6 +1028,26 @@ std::unique_ptr<EditTextObject> ImpEditEngine::GetEmptyTextObject()
return CreateTextObject( aEmptySel );
}
+std::unique_ptr<EditTextObject> ImpEditEngine::CreateTextObject( sal_Int32 nPara, sal_Int32 nParas )
+{
+ DBG_ASSERT(0 <= nPara && nPara < maEditDoc.Count(), "CreateTextObject: Startpara out of Range");
+ DBG_ASSERT(nParas <= maEditDoc.Count() - nPara, "CreateTextObject: Endpara out of Range");
+
+ ContentNode* pStartNode = maEditDoc.GetObject(nPara);
+ ContentNode* pEndNode = maEditDoc.GetObject(nPara + nParas - 1);
+ DBG_ASSERT( pStartNode, "Start-Paragraph does not exist: CreateTextObject" );
+ DBG_ASSERT( pEndNode, "End-Paragraph does not exist: CreateTextObject" );
+
+ if ( pStartNode && pEndNode )
+ {
+ EditSelection aTmpSel;
+ aTmpSel.Min() = EditPaM( pStartNode, 0 );
+ aTmpSel.Max() = EditPaM( pEndNode, pEndNode->Len() );
+ return CreateTextObject(aTmpSel);
+ }
+ return nullptr;
+}
+
std::unique_ptr<EditTextObject> ImpEditEngine::CreateTextObject()
{
EditSelection aCompleteSelection;