diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-08-04 15:55:45 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-08-04 14:36:43 +0000 |
commit | 33a5ab1eb74d140265b471fb33ca98aca7cfb1a6 (patch) | |
tree | 4f488db18aa2da3ae791c07257d30daf564ffafc | |
parent | 5a5db03acc605a02c76c0f2977079b3dcf48de22 (diff) |
svl: track creation time of SfxUndoAction instances
It's not yet clear how to expose this on the UI, though.
Change-Id: Iee6737922d36e896653b4fae557442747dda1b8b
Reviewed-on: https://gerrit.libreoffice.org/27878
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
-rw-r--r-- | include/svl/undo.hxx | 5 | ||||
-rw-r--r-- | svl/source/undo/undo.cxx | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/include/svl/undo.hxx b/include/svl/undo.hxx index 032738e57851..789fd171910e 100644 --- a/include/svl/undo.hxx +++ b/include/svl/undo.hxx @@ -21,6 +21,7 @@ #include <svl/svldllapi.h> #include <rtl/ustring.hxx> +#include <tools/datetime.hxx> #include <limits> #include <memory> @@ -61,11 +62,15 @@ public: virtual sal_uInt16 GetId() const; /// ID of the view shell that created this undo action. virtual sal_Int32 GetViewShellId() const; + /// Timestamp when this undo item was created. + const DateTime& GetDateTime() const; virtual void dumpAsXml(struct _xmlTextWriter* pWriter) const; private: SfxUndoAction( const SfxUndoAction& ) = delete; SfxUndoAction& operator=( const SfxUndoAction& ) = delete; + + DateTime m_aDateTime; }; diff --git a/svl/source/undo/undo.cxx b/svl/source/undo/undo.cxx index a198f271b415..7ccafe3638ae 100644 --- a/svl/source/undo/undo.cxx +++ b/svl/source/undo/undo.cxx @@ -26,6 +26,7 @@ #include <comphelper/flagguard.hxx> #include <tools/diagnose_ex.h> #include <libxml/xmlwriter.h> +#include <unotools/datetime.hxx> #include <vector> #include <list> @@ -51,6 +52,7 @@ SfxUndoAction::~SfxUndoAction() SfxUndoAction::SfxUndoAction() + : m_aDateTime(DateTime::SYSTEM) { } @@ -77,6 +79,11 @@ sal_Int32 SfxUndoAction::GetViewShellId() const return -1; } +const DateTime& SfxUndoAction::GetDateTime() const +{ + return m_aDateTime; +} + OUString SfxUndoAction::GetRepeatComment(SfxRepeatTarget&) const { return GetComment(); @@ -130,6 +137,7 @@ void SfxUndoAction::dumpAsXml(xmlTextWriterPtr pWriter) const xmlTextWriterWriteAttribute(pWriter, BAD_CAST("symbol"), BAD_CAST(typeid(*this).name())); xmlTextWriterWriteAttribute(pWriter, BAD_CAST("comment"), BAD_CAST(GetComment().toUtf8().getStr())); xmlTextWriterWriteAttribute(pWriter, BAD_CAST("viewShellId"), BAD_CAST(OString::number(GetViewShellId()).getStr())); + xmlTextWriterWriteAttribute(pWriter, BAD_CAST("dateTime"), BAD_CAST(utl::toISO8601(m_aDateTime.GetUNODateTime()).toUtf8().getStr())); xmlTextWriterEndElement(pWriter); } |