Zpět na projekty
TUIX v0.6Beta

Naposledy aktualizováno: 2026-08-14

API životního cyklu a správy objektů (tuix.core.object)

Balíček `tuix.core.object` poskytuje nativní alokaci životního cyklu objektů, správu unikátních UID, překlad ukazatelů, uvolňování paměti, diagnostické snapshoty a propojení s buffery. Settery a gettery jednotlivých widgetů jsou přehledně kategorizovány v sekci Vestavěné widgety.

Vytváření objektů a životní cyklus

FunkceParametry a popisNávratová hodnota a poznámky
objects.create_object(builder_name, scene_name, width_mod, height_mod, margin_top_mod=0.0, margin_left_mod=0.0) -> intAlokuje nový objekt se zadaným builderem ve scéně s proporcionálními rozměry (0.0 až 1.0).Vrací kladné celé číslo UID objektu (> 0), nebo 0 při chybě.
objects.create_object_ex(builder_name, scene_name, width_mod, height_mod, margin_top_mod, margin_left_mod, user_data=0) -> intRozšířená funkce tvorby objektu umožňující navázání vlastního nativního ukazatele user_data.Vrací kladné celé číslo UID objektu, nebo 0 při chybě.
objects.get_object_by_uid(uid: int)Přeloží celočíselné UID objektu na nativní ukazatel objektu (`obj_ptr`).Předávejte vrácený `obj_ptr` setterům a getterům jednotlivých widgetů.
objects.tuix_object_free_ptr(obj_ptr) -> NoneExplicitně uvolní paměť nativního objektu a uvolní jeho přiřazený buffer.Používejte pro dynamické rušení widgetů uvnitř scén.

Diagnostika objektů a inspekce bufferů

FunkcePopis
objects.get_object_snapshot_by_uid(uid: int) -> dictVrací vláknově bezpečný slovníkový snapshot metadat objektu (uid, builder_name, scene_name, buffer_uid, visible, enabled).
objects.get_object_snapshot(obj_ptr) -> dictVrací slovníkový snapshot podle ukazatele objektu.
objects.tuix_object_get_buffer(obj_ptr) -> intVrací adresu nativního buffer handlu přiřazeného k tomuto objektu.
objects.tuix_object_get_uid(obj_ptr) -> intPřečte unikátní UID z nativního ukazatele objektu.
objects.tuix_object_get_scene(obj_ptr) -> bytesVrací bajty názvu scény vlastnící tento objekt.

Příklad použití

from tuix.core import object as objects, content_builder, scene

# Create object in scene
uid = objects.create_object(content_builder.BUTTON, b'Main', 0.3, 0.1, 0.1, 0.1)
btn = objects.get_object_by_uid(uid)

# Inspect snapshot
snap = objects.get_object_snapshot_by_uid(uid)
print('Object snapshot:', snap)

# Free object when done
objects.tuix_object_free_ptr(btn)