TUIX v0.2.0Beta
API scén
Modul scenes (tuix.core.scenes) spravuje vytváření, rušení a čištění scén.
scenes.init_scene(name)
from tuix.core import scenes
result = scenes.init_scene(b"main")| Parametr | Typ | Popis |
|---|---|---|
| name | bytes | Unikátní název scény |
| Návratová hodnota | Popis |
|---|---|
| int | 0 při úspěchu, 1 pokud název scény již existuje |
Vytvoří novou scénu se zadaným názvem. Scény používají exponenciální růst pro interní pole bufferů (počáteční kapacita 4, zdvojnásobení při přetečení). Duplicitní názvy jsou odmítnuty.
scenes.free_scene(name)
scenes.free_scene(b"main")| Parametr | Typ | Popis |
|---|---|---|
| name | bytes | Název scény k odstranění |
Zruší scénu a uvolní všechny její buffery a související paměť. Po tomto volání nelze scénu použít.
scenes.clear_scene(name)
scenes.clear_scene(b"main")| Parametr | Typ | Popis |
|---|---|---|
| name | bytes | Název scény k vyčištění |
Uvolní všechny buffery ve scéně, ale ponechá strukturu scény alokovanou. Použijte to pro odstranění všech widgetů ze scény bez zrušení samotné scény. Po vyčištění lze do scény přidat nové widgety.
Příklad: přepínání scén
from tuix.core import scenes, registry
# Create two scenes
scenes.init_scene(b"menu")
scenes.init_scene(b"game")
# Start with menu
registry.registry.current_scene_name = b"menu"
# ... create widgets in both scenes ...
# Switch to game scene (instant, next frame renders it)
registry.registry.current_scene_name = b"game"
# Later, clean up
scenes.free_scene(b"menu")
scenes.free_scene(b"game")