Commit Graph

49 Commits

Author SHA1 Message Date
Egor Savkin 928db9963d Add paramtree view, without updates
Signed-off-by: Egor Savkin <es@m-labs.hk>

Fix signal blocker argument -atse
2024-02-14 11:31:41 +08:00
atse b8d0cdabd3 Swap order connected first 2024-02-14 11:31:41 +08:00
atse 6c11a0536c Arrange context menu items to be in order 2024-02-14 11:31:41 +08:00
atse e5b0583a91 Disable auto fan box if adjusted while auto 2024-02-14 11:31:41 +08:00
atse 71076510a2 Steal fan group and port??? Somehow 2024-02-14 11:31:41 +08:00
atse 463ee4105c Context menu by QToolButton 2024-02-14 11:31:41 +08:00
atse 30f6c4f829 Correct order once the tec_client disconnects to
stop watching the client first
2024-02-14 11:31:41 +08:00
atse 981c28ac27 Conslidate connect & disconnect actions 2024-02-14 11:31:41 +08:00
atse 5ced33594c Change name of button slot 2024-02-14 11:31:41 +08:00
atse b4a5e90f2e Turn on_connection_changed to coroutine
Further compresses the connect
2024-02-14 11:31:41 +08:00
atse 82438ee4a5 Simplify stuff a bit 2024-02-14 11:31:41 +08:00
atse e727f8b06b Change statement order up a bit 2024-02-14 11:31:41 +08:00
atse 27ce311111 Init client_watcher once 2024-02-14 11:31:41 +08:00
atse 659d0d0835 Init client once
No none-ing
2024-02-14 11:31:41 +08:00
atse fa60439e39 Put the connecting task in aioclient 2024-02-14 11:31:41 +08:00
atse 7e56f2d879 Rearrange bottom bar for new context menu 2024-02-14 11:31:41 +08:00
atse 917a2546cc Remove is running loop variable
Just use Task.done()
2024-02-14 11:31:41 +08:00
atse fd83ee23e1 Catch a more specific exception 2024-02-14 11:31:41 +08:00
atse 115c7eb800 Add stop connection button
Stuff to add to stop button
2024-02-14 11:31:41 +08:00
atse fca4b061ee Fix Slot decorators and types 2024-02-14 11:31:41 +08:00
atse 9f839f4bd9 Handle UI when fan_pwm is 0 2024-02-14 11:31:41 +08:00
atse ac77c457ec Fix fan warning wording 2024-02-14 11:31:41 +08:00
atse 54bb740a41 Only warn about fan pwm when not at full strength 2024-02-14 11:31:41 +08:00
atse 47dbe95045 Replace fan group highlighting with warning icon
Highlighting is too confusing
2024-02-14 11:31:41 +08:00
atse 8045d8c93d Grammar 2024-02-14 11:31:41 +08:00
atse 3d801666fa Update fan slider value immediately after fan auto 2024-02-14 11:31:41 +08:00
atse 5e105884d1 Use slider signal argument to set fan value 2024-02-14 11:31:41 +08:00
atse 1849711c62 Set client to none if failed to connect
Fixes connect button behaviour after accidental disconnect
2024-02-14 11:31:41 +08:00
atse 84018c3ebc Start running only when task is running 2024-02-14 11:31:41 +08:00
atse 1fd49360d0 Lock connection details while connecting
Fix connect button behaviour
2024-02-14 11:31:41 +08:00
atse a55589415d Cancel task to stop watch 2024-02-14 11:31:41 +08:00
atse c261ca2447 Disconnect client too on close 2024-02-14 11:31:41 +08:00
atse c476ad9f7d Close client_watcher on closeEvent not aboutToQuit
Mirrors
2024-02-14 11:31:41 +08:00
atse d0d33f42da Rearrange client_watcher to hold its own task 2024-02-14 11:31:41 +08:00
atse 608573c03c Update fan too 2024-02-14 11:31:41 +08:00
atse ec9ce6537c More helpful tooltip 2024-02-14 11:31:41 +08:00
atse 6b4b576518 Fix hardware revision showing major.major 2024-02-14 11:31:41 +08:00
atse 142fe1043c Remove unused 'as' clause 2024-02-14 11:31:41 +08:00
atse 3544f1ebdf Get rid of global client 2024-02-14 11:31:41 +08:00
atse e33f8430f2 Remove client_watcher global 2024-02-14 11:31:41 +08:00
atse 9cf33abe06 Gather client_watcher managment into connect 2024-02-14 11:31:41 +08:00
atse 0252c7b0e4 Invert logic, connect first 2024-02-14 11:31:41 +08:00
atse c6ca2b3490 Make Ui_MainWindow a superclass of our main window
Gets rid of the global ui.
2024-02-14 11:31:41 +08:00
atse 299ef7dcc3 Get rid of app global
QApplication is a singleton, no need for global
2024-02-14 11:31:41 +08:00
atse f469d8fee3 Stop polling drift
Just waiting for the update_s doesn't take into account the time to
execute update_params, and causes time drift.
2024-02-14 11:31:41 +08:00
atse f546a3c61b Finish moving over to qasync
Also:
-Add aioclient

The old client is synchronous and blocking, and the only way to achieve
true asynchronous IO is to create a new client that interfaces with
asyncio.

-Make the GUI `nix run`-able
2024-02-14 11:31:41 +08:00
Egor Savkin 0ad77047f1 Try move from Qthreads to qasync
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-02-14 11:31:41 +08:00
Egor Savkin 3de6f233f9 Create client watcher, that would poll Thermostat for config
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-02-14 11:31:41 +08:00
Egor Savkin 069280feb6 Create basic GUI, that would connect and control thermostat's fan
Signed-off-by: Egor Savkin <es@m-labs.hk>
2024-02-14 11:31:41 +08:00