Zpět na projekty
TUIX v0.1Alfa

Naposledy aktualizováno: 2026-05-20

Reference API stylů

Kompletní API reference pro třídu Styles, dostupnou přes engine.styles.

set_type(type: str)

Nastaví typ renderu. Platné hodnoty: 'adaptive', 'strict'. Pro neznámý typ vyhodí ValueError.

set_style(style: str)

Přepne aktivní preset styl. Výchozí preset je 'classic'. Další presety lze registrovat přes define_style(). Pro neznámý styl vyhodí ValueError.

set_custom_style(*, key, option=None, value)

Přepíše jednu vlastnost stylu. Chování závisí na klíči:

Kategorie klíčeKlíčePřijímané hodnoty
Pouze RGBbackground, prompt_background, border, text_color, unselected_text, selected_background, selected_textRGB trojice (r, g, b)
Bool/RGBshadow, text_background, unselected_backgroundFalse nebo RGB trojice. shadow přijímá i True (auto-blend)
VolbytextVyžaduje option parametr ('bold', 'italic', 'underline', 'dim') + bool hodnota

Automaticky spustí přepočet cache stylů.

remove_custom_style(key, option=None)

Resetuje vlastní přepisy zpět na None (použije preset). Přijímá jeden klíč nebo seznam klíčů. U klíče 'text' předávejte option jako string nebo seznam option názvů.

engine.styles.remove_custom_style('border')
engine.styles.remove_custom_style(['shadow', 'selected_text'])
engine.styles.remove_custom_style('text', option=['bold', 'dim'])

define_style(*, name, config)

Registruje nový preset styl. Konfigurační slovník musí mít přesně stejné klíče jako classic preset. Pokud klíče nesedí, vyhodí ValueError. Název nesmí kolidovat s existujícím presetem.

cached_styles

Read-only slovník obsahující plně vyřešené styly (preset + vlastní přepisy). Toto čte RenderEngine při kreslení komponent. Automaticky se aktualizuje pomocí _cache_styles() po jakékoli změně stylu.

Utility funkce

Tyto modulové funkce podporují systém stylů:

FunkceSignaturaPopis
text_colortext_color(r, g, b) -> strVrací ANSI escape kód pro 24-bit barvu popředí
background_colorbackground_color(r, g, b) -> strVrací ANSI escape kód pro 24-bit barvu pozadí
is_rgbis_rgb(value) -> boolOvěří, že hodnota je 3-tice int/float v rozsahu 0–255
blend_shadowblend_shadow(bg, fg, intensity=0.3) -> tupleMíchá dvě RGB barvy pro stínové efekty
visual_widthvisual_width(s) -> intVrací vizuální šířku řetězce pomocí wcwidth (CJK, emoji)