Modul ui_radiobuttons.py vytváří interaktivní voliče režimů (radiobuttony) v hlavní GUI aplikaci. Slouží ke změně provozního stavu jednotlivých kanálů (celkem 8 řádků × 4 volby).
Ukázka GUI řádku radiobuttonů (zmenšeno na 25 %):
Modul obstarává:
Vytvoří matici 8 řádků × 4 radiobuttonů. Každý radiobutton reprezentuje volbu režimu:
Funkce vrací dvojici:
Radiobuttony automaticky volají callback on_radio_change().
Funkce se spustí pokaždé, když uživatel změní radiobutton. Informuje hlavní aplikaci o změně volbou callbacku:
Hlavní aplikace pak provede logiku:
Umožní hlavní aplikaci předat svoji funkci, která bude volána při změně radiobuttonu. Velmi důležité pro propojení GUI s logikou a BLE komunikací.
Vrátí aktuální stav radiobuttonů jako seznam osmi hodnot (1–4).
Pomocná funkce nastaví ve všech osmi řádcích volbu Reset (4). Používá se při inicializaci GUI.
Po změně radiobuttonu se pomocí:
obarví příslušný obdélník do barvy odpovídající zvolenému režimu:
Tím je vizuálně jasné, který kanál je v jakém stavu.
V hlavní aplikaci se modul inicializuje takto:
Po zavolání on_radio_change se zavolá funkce radio_event_handler() z main.py, která zajistí: