From c9ee447061ac864412f338a6832094bd4a5ebfec Mon Sep 17 00:00:00 2001
From: Marko Mecina <marko.mecina@univie.ac.at>
Date: Fri, 9 May 2025 18:04:03 +0200
Subject: [PATCH] extend packet drag'n'drop display format options

+ add UTC time info in packet view
---
 Ccs/ccs_main_config.cfg |  2 +-
 Ccs/poolview_sql.py     | 13 +++++++++++--
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/Ccs/ccs_main_config.cfg b/Ccs/ccs_main_config.cfg
index 3d287a6..eb055a4 100644
--- a/Ccs/ccs_main_config.cfg
+++ b/Ccs/ccs_main_config.cfg
@@ -23,7 +23,7 @@ level = WARNING
 max_logs = 30
 
 [ccs-viewer]
-drag_report_fmt = False
+drag_report_fmt = 0
 
 [ccs-monitor]
 interval = 1
diff --git a/Ccs/poolview_sql.py b/Ccs/poolview_sql.py
index c647a5a..a59a5e1 100644
--- a/Ccs/poolview_sql.py
+++ b/Ccs/poolview_sql.py
@@ -46,7 +46,8 @@ TM_HEADER_LEN, TC_HEADER_LEN, PEC_LEN = [packet_config.TM_HEADER_LEN, packet_con
 
 Telemetry = {'PUS': DbTelemetry, 'RMAP': RMapTelemetry, 'FEE': FEEDataTelemetry}
 
-REPORTFORMAT = cfg.get('ccs-viewer', 'drag_report_fmt').lower() == 'true'  # format drag-action data for test report
+REPORTFORMAT = int(cfg.get('ccs-viewer', 'drag_report_fmt'))#.lower() == 'true'  # format drag-action data for test report
+SHOW_UTC = True
 
 
 class TMPoolView(Gtk.Window):
@@ -704,8 +705,10 @@ class TMPoolView(Gtk.Window):
 
             rawpkt = row.first().raw
 
-            if REPORTFORMAT:
+            if REPORTFORMAT == 1:
                 data = cfl.pktinfo_report(rawpkt)
+            elif REPORTFORMAT == 2:
+                data = cfl.Tmformatted(rawpkt, textmode=True, nocal=not self.calibrated_switch.get_active())
             else:
                 data = str(rawpkt)
 
@@ -2131,6 +2134,7 @@ class TMPoolView(Gtk.Window):
             datamodel.clear()
             nocalibration = not self.calibrated_switch.get_active()
             try:
+
                 if self.UDEF:
                     data = cfl.Tmformatted(tm, textmode=False, udef=True, nocal=nocalibration, floatfmt=floatfmt)
                     buf = Gtk.TextBuffer(text=cfl.Tm_header_formatted(tm) + '\n{}\n'.format(data[1]))
@@ -2140,6 +2144,11 @@ class TMPoolView(Gtk.Window):
                     buf = Gtk.TextBuffer(text=cfl.Tm_header_formatted(tm) + '\n{}\n'.format(data[1]))
                     self._feed_tm_data_view_model(datamodel, data[0])
 
+                if SHOW_UTC:
+                    if not (tm[0] >> 4 & 1):
+                        t_utc = '<span foreground="grey">' + cfl.cuc_to_utc(cfl.get_cuctime(tm)) + '</span>\n'
+                        buf.insert_markup(buf.get_end_iter(), t_utc, -1)
+
             except Exception as error:
                 buf = Gtk.TextBuffer(text='Error in decoding packet data:\n{}\n'.format(error))
 
-- 
GitLab