summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorPranav Kant <pranavk@collabora.co.uk>2017-01-18 17:47:46 +0530
committerAndras Timar <andras.timar@collabora.com>2017-02-17 16:54:45 +0100
commitbf08e991d4d0b6fcdda1e0d13d11b5c9abdffdea (patch)
tree0750570c1137a43be689975fe940ee9258c9b1c5 /sw
parent71f228e7668fc21cf6e15238fae1ff92e41fa2a8 (diff)
lok: Unique annotation Ids to SwPostItFields
Change-Id: I6dd5186eb18ca99a75a5cb73263cc6bfcc7ff345 Reviewed-on: https://gerrit.libreoffice.org/33467 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 85959fccad7392646675a515afd09aadaaa9ed17)
Diffstat (limited to 'sw')
-rw-r--r--sw/inc/docufld.hxx7
-rw-r--r--sw/source/core/fields/docufld.cxx8
2 files changed, 12 insertions, 3 deletions
diff --git a/sw/inc/docufld.hxx b/sw/inc/docufld.hxx
index 636abaa80a7d..65130c21972c 100644
--- a/sw/inc/docufld.hxx
+++ b/sw/inc/docufld.hxx
@@ -444,14 +444,18 @@ class SW_DLLPUBLIC SwPostItField : public SwField
DateTime aDateTime;
OutlinerParaObject* mpText;
rtl::Reference<SwTextAPIObject> m_xTextObject;
+ sal_uInt32 m_nPostItId;
public:
+ static sal_uInt32 m_nLastPostItId;
+
SwPostItField( SwPostItFieldType*,
const OUString& rAuthor,
const OUString& rText,
const OUString& rInitials,
const OUString& rName,
- const DateTime& rDate);
+ const DateTime& rDate,
+ const sal_uInt32 nPostItId = 0);
SwPostItField(const SwPostItField&) = delete;
SwPostItField* operator=(const SwPostItField&) = delete;
@@ -464,6 +468,7 @@ public:
const DateTime& GetDateTime() const { return aDateTime; }
inline const Date GetDate() const { return Date(aDateTime.GetDate()); }
inline const tools::Time GetTime() const { return aDateTime.GetTime(); }
+ inline sal_uInt32 GetPostItId() const { return m_nPostItId; }
/// Author
virtual OUString GetPar1() const override;
diff --git a/sw/source/core/fields/docufld.cxx b/sw/source/core/fields/docufld.cxx
index a6ce6892c1ee..08e970a8fca2 100644
--- a/sw/source/core/fields/docufld.cxx
+++ b/sw/source/core/fields/docufld.cxx
@@ -1644,12 +1644,15 @@ SwFieldType* SwPostItFieldType::Copy() const
// PostIt field
+sal_uInt32 SwPostItField::m_nLastPostItId = 1;
+
SwPostItField::SwPostItField( SwPostItFieldType* pT,
const OUString& rAuthor,
const OUString& rText,
const OUString& rInitials,
const OUString& rName,
- const DateTime& rDateTime )
+ const DateTime& rDateTime,
+ const sal_uInt32 nPostItId)
: SwField( pT )
, sText( rText )
, sAuthor( rAuthor )
@@ -1658,6 +1661,7 @@ SwPostItField::SwPostItField( SwPostItFieldType* pT,
, aDateTime( rDateTime )
, mpText( nullptr )
{
+ m_nPostItId = nPostItId == 0 ? m_nLastPostItId++ : nPostItId;
}
SwPostItField::~SwPostItField()
@@ -1683,7 +1687,7 @@ OUString SwPostItField::GetDescription() const
SwField* SwPostItField::Copy() const
{
SwPostItField* pRet = new SwPostItField( static_cast<SwPostItFieldType*>(GetTyp()), sAuthor, sText, sInitials, sName,
- aDateTime);
+ aDateTime, m_nPostItId);
if (mpText)
pRet->SetTextObject( new OutlinerParaObject(*mpText) );