vcl/inc/calendar.hxx            |    2 ++
 vcl/source/control/calendar.cxx |   13 +++++++++++++
 2 files changed, 15 insertions(+)

New commits:
commit b61b6fa6ee97a735ba30a4b725075b4c0fffbdd5
Author:     Szymon Kłos <szymon.k...@collabora.com>
AuthorDate: Thu Jul 6 15:15:50 2023 +0200
Commit:     Szymon Kłos <szymon.k...@collabora.com>
CommitDate: Fri Jul 7 12:00:24 2023 +0200

    jsdialog: dump calendar data
    
    Change-Id: I51d5e553c5ec1ba9fa5fd63844621368f3cedbd8
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154133
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Szymon Kłos <szymon.k...@collabora.com>

diff --git a/vcl/inc/calendar.hxx b/vcl/inc/calendar.hxx
index 5d757e056170..9c96b83708e5 100644
--- a/vcl/inc/calendar.hxx
+++ b/vcl/inc/calendar.hxx
@@ -220,6 +220,8 @@ public:
 
     void            SetSelectHdl( const Link<Calendar*,void>& rLink ) { 
maSelectHdl = rLink; }
     void            SetActivateHdl( const Link<Calendar*,void>& rLink ) { 
maActivateHdl = rLink; }
+
+    virtual void    DumpAsPropertyTree(tools::JsonWriter&) override;
 };
 
 #endif // INCLUDED_VCL_CALENDAR_HXX
diff --git a/vcl/source/control/calendar.cxx b/vcl/source/control/calendar.cxx
index 5f437ff0300e..cce0bce63a3a 100644
--- a/vcl/source/control/calendar.cxx
+++ b/vcl/source/control/calendar.cxx
@@ -33,6 +33,7 @@
 #include <com/sun/star/i18n/CalendarDisplayIndex.hpp>
 #include <com/sun/star/i18n/CalendarFieldIndex.hpp>
 #include <sal/log.hxx>
+#include <tools/json_writer.hxx>
 
 #include <calendar.hxx>
 #include <svdata.hxx>
@@ -1521,6 +1522,18 @@ Size Calendar::GetOptimalSize() const
     return CalcWindowSizePixel();
 }
 
+void Calendar::DumpAsPropertyTree(tools::JsonWriter& rJsonWriter)
+{
+    Control::DumpAsPropertyTree(rJsonWriter);
+
+    auto aDate = GetFirstSelectedDate();
+
+    rJsonWriter.put("type", "calendar");
+    rJsonWriter.put("day", aDate.GetDay());
+    rJsonWriter.put("month", aDate.GetMonth());
+    rJsonWriter.put("year", aDate.GetYear());
+}
+
 namespace
 {
     class ImplCFieldFloat final

Reply via email to