summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2018-07-05 21:48:49 +0200
committerSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2018-07-06 07:44:16 +0200
commit8905ae9f0fc8b0e4a95113fd81e88d4e7db57bcc (patch)
tree99b2561abcb835e0851b7063dee9d0a3338b996c
parent3aa4edb1028bfafff38efda8843f8ebe43a38155 (diff)
Writer: Insert signature line at current cursor position
Change-Id: Ic7cbcd409372a2d8222f57e67e1109a74f6f5ce3 Reviewed-on: https://gerrit.libreoffice.org/57026 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
-rw-r--r--cui/source/dialogs/SignatureLineDialog.cxx13
1 files changed, 8 insertions, 5 deletions
diff --git a/cui/source/dialogs/SignatureLineDialog.cxx b/cui/source/dialogs/SignatureLineDialog.cxx
index 3089830ef7a4..7cf512d83265 100644
--- a/cui/source/dialogs/SignatureLineDialog.cxx
+++ b/cui/source/dialogs/SignatureLineDialog.cxx
@@ -30,6 +30,8 @@
#include <com/sun/star/text/TextContentAnchorType.hpp>
#include <com/sun/star/text/XTextContent.hpp>
#include <com/sun/star/text/XTextDocument.hpp>
+#include <com/sun/star/text/XTextViewCursor.hpp>
+#include <com/sun/star/text/XTextViewCursorSupplier.hpp>
using namespace css;
using namespace css::uno;
@@ -174,11 +176,12 @@ void SignatureLineDialog::Apply()
const Reference<XTextDocument> xTextDocument(m_xModel, UNO_QUERY);
if (xTextDocument.is())
{
- // Insert into document
- Reference<XTextRange> const xEnd
- = Reference<XTextDocument>(m_xModel, UNO_QUERY)->getText()->getEnd();
- Reference<XTextContent> const xShapeContent(xShapeProps, UNO_QUERY);
- xShapeContent->attach(xEnd);
+ Reference<XText> xText = xTextDocument->getText();
+ Reference<XTextContent> xTextContent(xShape, UNO_QUERY_THROW);
+ Reference<XTextViewCursorSupplier> xViewCursorSupplier(m_xModel->getCurrentController(),
+ UNO_QUERY_THROW);
+ Reference<XTextViewCursor> xCursor = xViewCursorSupplier->getViewCursor();
+ xText->insertTextContent(xCursor, xTextContent, true);
return;
}