Wire Sud upload/download into the brewpi_gui client

Adds File menu actions to save the running Sud's schedule to a local
sud.json and to replace it from one, via the Sud websocket channel's
new Download/Upload messages. File dialogs are opened up front on the
GUI thread; the actual read/write happens off the websocket recv
callback, which runs on a worker thread and must not touch Qt itself.

main_window.py is regenerated from brewpi.ui via pyuic5 5.15.11, which
also picks up an unrelated pre-existing drift (the default URI had
fallen out of sync with the .ui source).
This commit is contained in:
2026-06-20 22:18:49 +02:00
parent db57f3305c
commit bb94e065f4
3 changed files with 64 additions and 2 deletions
+18
View File
@@ -3675,6 +3675,8 @@
<property name="title">
<string>&amp;File</string>
</property>
<addaction name="actionSudDownload"/>
<addaction name="actionSudUpload"/>
</widget>
<widget class="QMenu" name="menu_Help">
<property name="title">
@@ -3726,6 +3728,22 @@
<string>Stop</string>
</property>
</action>
<action name="actionSudDownload">
<property name="text">
<string>&amp;Download Sud...</string>
</property>
<property name="toolTip">
<string>Save the running Sud's schedule to a local sud.json</string>
</property>
</action>
<action name="actionSudUpload">
<property name="text">
<string>&amp;Upload Sud...</string>
</property>
<property name="toolTip">
<string>Replace the running Sud's schedule with a local sud.json</string>
</property>
</action>
</widget>
<resources/>
<connections/>