[Libreoffice-commits] core.git: include/svl svl/source

Miklos Vajna vmiklos at collabora.co.uk
Thu Aug 4 14:37:17 UTC 2016


 include/svl/undo.hxx     |    5 +++++
 svl/source/undo/undo.cxx |    8 ++++++++
 2 files changed, 13 insertions(+)

New commits:
commit 33a5ab1eb74d140265b471fb33ca98aca7cfb1a6
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Thu Aug 4 15:55:45 2016 +0200

    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 at collabora.co.uk>
    Tested-by: Jenkins <ci at libreoffice.org>

diff --git a/include/svl/undo.hxx b/include/svl/undo.hxx
index 032738e..789fd17 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 a198f27..7ccafe3 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);
 }
 


More information about the Libreoffice-commits mailing list