Debug: Add csv export method.

opt-result
Pierre-Antoine 2026-07-08 17:55:31 +02:00
parent 1306977954
commit ee95f0e89e
3 changed files with 24 additions and 6 deletions

View File

@ -19,7 +19,7 @@
import logging
from functools import reduce
from tools import trace, timer, _timers, _calls
from tools import trace, timer, _timers, _calls, reset_timers
from PyQt5.QtCore import (
Qt, QVariant, QAbstractTableModel,
@ -59,6 +59,10 @@ class TableModel(PamhyrTableModel):
self._setup_lst()
self.layoutChanged.emit()
def reset_timers(self):
reset_timers()
self.update_lst()
def data(self, index, role):
row = index.row()
column = index.column()
@ -72,3 +76,7 @@ class TableModel(PamhyrTableModel):
return self._lst[row][2]
return QVariant()
def to_csv(self):
data = "\n".join(map(lambda x: f"{x[0]},{x[1]},{x[2]}", self._lst))
return f"""name,time,calls\n{data}\n"""

View File

@ -140,7 +140,7 @@ class TimerWindow(PamhyrWindow):
self._alarm.start(2000)
def setup_connections(self):
self.find(QAction, "action_reset").triggered.connect(self.reset)
# self.find(QAction, "action_reset").triggered.connect(self.reset)
self.find(QAction, "action_export").triggered.connect(self.export)
self._alarm.timeout.connect(self.update)
@ -148,8 +148,19 @@ class TimerWindow(PamhyrWindow):
def update(self):
self._table.update_lst()
def reset(self):
return
# def reset(self):
# self._table.reset_timers()
def export(self):
return
self.file_dialog(
select_file="AnyFile",
callback=lambda f: self.export_to(f[0]),
default_suffix=".csv",
file_filter=["CSV file (*.csv)"],
)
def export_to(self, filename):
csv = self._table.to_csv()
with open(filename, 'w', newline='') as csvfile:
csvfile.write(csv)

View File

@ -41,7 +41,6 @@
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
<addaction name="action_reset"/>
<addaction name="action_export"/>
</widget>
<action name="action_export">