Commit Graph

511 Commits

Author SHA1 Message Date
atse e82e561d14 Get rid of timeout on readline 2024-10-07 17:48:24 +08:00
atse 7ec7ae7329 Put send_command in CtrlPanel 2024-10-07 17:48:24 +08:00
atse 9f0064a61c Extra bail removed 2024-10-07 17:48:24 +08:00
atse d8c7db3f66 return hwrev when start_session 2024-10-07 17:48:24 +08:00
atse 254e391a09 state str 2024-10-07 17:48:24 +08:00
atse f6276cdd74 params update concurrently 2024-10-07 17:48:24 +08:00
atse b380d66750 Stuff non-UI changes in Thermostat model 2024-10-07 17:48:24 +08:00
atse 56c3e30c6b Base Thermostat connectivity UI changes to state 2024-10-07 17:48:24 +08:00
atse 5c6652cdcb Remove wait_for
OSError raised anyways
2024-10-07 17:48:24 +08:00
atse bfc3543972 Actually its OSError 2024-10-07 17:48:24 +08:00
atse eb9189247f {start,end}_session -> [dis]connect 2024-10-07 17:48:24 +08:00
atse 05dd0afe03 Simplify on_connect_btn_clicked
Raise if OSError
2024-10-07 17:48:24 +08:00
atse af53926b01 Connecting task moved? 2024-10-07 17:48:24 +08:00
atse 371ddcdc5b AsyncIO version Client -> AsyncioClient 2024-10-07 17:48:24 +08:00
atse f66d029915 Exclusively use the Thermostat object as a medium
All calls to the Thermostat should be forwarded by the medium.
2024-10-07 17:48:24 +08:00
atse cf39eee997 Integrate WrappedClient into Thermostat model 2024-10-07 17:48:24 +08:00
atse 87ef1caf47 Should not stop cancelling read if timeout'd 2024-10-07 17:48:24 +08:00
atse 9d271f97a2 Fix Autotuner state for forceful disconnect 2024-10-07 17:48:24 +08:00
atse 6c09ce1be0 _ 2024-10-07 17:48:24 +08:00
atse 8ab93591a3 Make connection loss handling more elegant
Show an info box on connection lost informing the user that the
Thermostat was forcefully disconnected.
2024-10-07 17:48:24 +08:00
atse 31bdbf93c4 ================gui_dev-fix_asyncio=============== 2024-10-07 17:48:24 +08:00
atse c2952f881f Use new style super() 2024-10-07 17:48:24 +08:00
atse 810237bccf Move command line host:port setting handling
To main
2024-10-07 17:48:24 +08:00
atse f9b1bf8c6c aioclient: Add missing readline for saving
Saving all channels returns multiple JSON objects, read the extra {}.
2024-10-07 17:48:24 +08:00
atse 23aafeba08 import order rearrange 2024-10-07 17:48:24 +08:00
atse 334c4dbdce This is bail 2024-10-07 17:48:24 +08:00
atse 56b2ecfc9b thermostat: Properly register task
Also Thermostat.task -> Thermostat._update_params_task
2024-10-07 17:48:24 +08:00
atse de583c38c4 ip -> host 2024-10-07 17:48:24 +08:00
atse 5f69cb55e7 Lazy evaluating for debug string command 2024-10-07 17:48:24 +08:00
atse 4ccddf9f20 Add pytec runnables 2024-10-07 17:48:24 +08:00
atse 28bcdd4926 PYTHON shell 2024-10-07 17:48:24 +08:00
atse 585c33cabb Exactlier wording 2024-10-07 17:48:24 +08:00
atse 7696a07b4a unused 2024-10-07 17:48:24 +08:00
atse 2eb7eb40a2 encoding 2024-10-07 17:48:24 +08:00
atse 206b825e88 Just catch asyncio.TimeoutError
Will just change to TimeoutError once we switch to Python 3.11 in the
flake.
2024-10-07 17:48:24 +08:00
atse 4a038d04d1 Remove exception too general 2024-10-07 17:48:24 +08:00
atse 8599c5be4e Use asserts to check for connectivity 2024-10-07 17:48:24 +08:00
atse 99777d75ce Add back the parent 2024-10-07 17:48:24 +08:00
atse b6696c2b09 Fix method call 2024-10-07 17:48:24 +08:00
atse d9aab02456 README: Proofread 2024-10-07 17:48:24 +08:00
atse 35a447e980 Swap order arounda bit more 2024-10-07 17:48:24 +08:00
atse f19809c852 Formatting 2024-10-07 17:48:24 +08:00
atse c804c7bedb Use qtextras 2024-10-07 17:48:24 +08:00
atse 78477163fb flake update 2024-10-07 17:48:24 +08:00
atse dcc4a4578a flake.nix: nixfmt-rfc-style 2024-10-07 17:48:24 +08:00
atse a531978d96 Merge branch 'gui_dev-ctrl_panel' into newlol 2024-10-07 17:26:26 +08:00
atse c9aa0eaab8 ctrl_panel: Reformat SpinBox text always if valid
The parameter SpinBoxes previously would only update if the interpreted
value was changed, missing cases where the text would have changed but
the value stays the same, e.g. removing trailing decimal zeros.
2024-10-07 16:13:56 +08:00
atse ed6cee4394 ctrl_panel: Move postfilter into its own group 2024-10-07 16:13:56 +08:00
atse e1bd960900 ctrl_panel: Use new locking mechanism from Kirdy 2024-10-07 16:13:56 +08:00
atse aed0c484dd ctrl_panel: Fix editing fields with unit "°C"
A faulty regular expression within PyQtGraph causes any Parameter with a
suffix that doesn't begin with an alphanumeric character (as matched
with \w) to act abnormally. For instance, entering "100 °C" into the
input boxes gets interpreted as 10 °C.

Patch the FLOAT_REGEX in PyQtGraph to simply match for any character in
the suffix group.
2024-10-07 16:13:56 +08:00