Zpět na projekty
TUIX v0.2.0Beta

Naposledy aktualizováno: 2026-05-20

Příklady

Repozitář obsahuje pět ukázkových skriptů ve složce examples/, které předvádějí jednotlivé typy widgetů i rozvržení s více widgety.

Animace progressbaru

examples/ex_progressbar.py — Dva progress bary animované různou rychlostí s vlastním stylem.

python examples/ex_progressbar.py
  • Pruh A se plní plnou rychlostí (0 → 100 % za 100 snímků)
  • Pruh B se plní poloviční rychlostí (0 → 50 %)
  • Vlastní znaky ('#'/'-') a RGB barvy pro každý pruh
  • ESC pro předčasné ukončení

Menu voleb

examples/ex_choice.py — Výběr barevné palety s pěti možnostmi.

python examples/ex_choice.py
  • 6 barevných možností s předdefinovanými RGB hodnotami
  • Šipky pro navigaci, Enter pro potvrzení
  • Vypíše vybraný název barvy a RGB do stdout
  • ESC pro zrušení

Kreslení na plátně

examples/ex_canvas.py — Animovaný skákající míček s real-time grafikou.

python examples/ex_canvas.py
  • Plátno na celou obrazovku s orámováním
  • Skákající míček s HSL cyklováním barev
  • Počítadlo FPS v reálném čase v pravém horním rohu
  • Míček se odráží uvnitř vnitřní oblasti s obracením rychlosti na hranách
  • Běží, dokud není stisknuta libovolná klávesa

Rozvržení s více widgety

examples/ex_multi_widget.py — Tři widgety zobrazené současně.

python examples/ex_multi_widget.py
  • Progressbar (nahoře): plní se 5 sekund jako odpočet
  • Widget Volba (vlevo): 4 možnosti (Option A/B/C/D)
  • Widget Input (vpravo): textový vstup se zástupným textem
  • Po ukončení se vypíše souhrn výsledků všech widgetů
  • ESC pro vynucené ukončení
Omezení routování vstupuVe verzi v0.2.0 dostávají widgety Volba i Input stejný stisk klávesy. Jde o známé omezení — routování focusu je plánováno pro v0.2.1.

Kompletní ukázka widgetů

examples/builders.py — Sekvenční demo všech čtyř typů widgetů.

python examples/builders.py
  • Progressbar: animuje se od 0 do 100 % s vlastním stylem '#'/ '-'
  • Choice: výběr pěti barev s ovládáním klávesnicí
  • Input: textový vstup s placeholderem 'Type your name...'
  • Canvas: kreslí rámečky, kruhy, čáry, obdélníky, text a sprite smajlíka

Ukázka demonstruje kompletní životní cyklus widgetu: init → register → create scene → input → create object → configure → render loop → get result → cleanup.