No documentation
def __init__(self: Any, x: int, y: int, width: int, height: int, options: List[str], font_size: int = 20, font_name: Optional[str] = None, root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def _create_arrow_surfaces(self: Any) -> Any
def font(self: Any) -> Any
def next_option(self: Any) -> Any
def previous_option(self: Any) -> Any
def set_selected_index(self: Any, index: int) -> Any
def set_on_selection_changed(self: Any, callback: Callable[[int, str], None]) -> Any
def update(self: Any, dt: Any, inputState: Any) -> Any
def render(self: Any, renderer: Any) -> Any
def _render_select_content(self: Any, renderer: Any, actual_x: int, actual_y: int, theme: Any) -> Any
def _draw_fallback_arrows(self: Any, renderer: Any, actual_x: int, actual_y: int, arrow_color: Any) -> Any
No documentation
def __init__(self: Any, x: int, y: int, width: int = 60, height: int = 30, checked: bool = False, root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def toggle(self: Any) -> Any
def set_checked(self: Any, checked: bool) -> Any
def set_on_toggle(self: Any, callback: Callable[[bool], None]) -> Any
def update(self: Any, dt: Any, inputState: Any) -> Any
def _get_colors(self: Any) -> Any
def render(self: Any, renderer: Any) -> Any
No documentation
def __init__(self: Any, x: int, y: int, width: int, height: int, min_val: float = 0, max_val: float = 100, value: float = 50, orientation: Literal['horizontal', 'vertical'] = 'horizontal', root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def set_on_value_changed(self: Any, callback: Callable[[float], None]) -> Any
def set_theme(self: Any, theme_type: ThemeType) -> Any
def _get_colors(self: Any) -> Any
def set_value(self: Any, value: float) -> Any
def update(self: Any, dt: Any, inputState: Any) -> Any
def render(self: Any, renderer: Any) -> Any
No documentation
def __init__(self: Any, x: int, y: int, width: int, height: int, options: List[str] = None, font_size: int = 20, font_name: Optional[str] = None, root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, max_visible_options: int = 10, element_id: Optional[str] = None, searchable: bool = False) -> Any
def get_selected(self: Any) -> Tuple[int, str]
def _create_search_box(self: Any) -> Any
def _on_search_text_changed(self: Any, text: str) -> Any
def _update_filtered_options(self: Any) -> Any
def font(self: Any) -> Any
def set_options(self: Any, options: List[str], selected_index: int = 0) -> Any
def set_theme(self: Any, theme_type: ThemeType) -> Any
def _get_colors(self: Any) -> Any
def _get_visible_options(self: Any) -> List[int]
def on_scroll(self: Any, event: pygame.event.Event) -> Any
def _get_scrollbar_track_rect(self: Any, actual_x: int, actual_y: int) -> Tuple[int, int, int, int]
def _get_scrollbar_thumb_rect(self: Any, actual_x: int, actual_y: int) -> Tuple[int, int, int, int]
def update(self: Any, dt: float, inputState: InputState) -> Any
def render(self: Any, renderer: Renderer) -> Any
def _draw_arrow_polygon(self: Any, renderer: Any, points: Any, color: Any) -> Any
def _render_expanded_options(self: Any, renderer: Any, actual_x: Any, actual_y: Any, theme: Any) -> Any
def add_option(self: Any, option: str) -> Any
def remove_option(self: Any, option: str) -> Any
def set_selected_index(self: Any, index: int) -> Any
def set_on_selection_changed(self: Any, callback: Callable[[int, str], None]) -> Any
No documentation
def __init__(self: Any, x: int, y: int, width: int, height: int, min_value: int, max_value: int, value: int, min_length: int = 1, max_length: int = 10, step: int = 1, root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def value(self: Any) -> int
def get_value(self: Any) -> int
def value(self: Any, new_value: int) -> Any
def _format_value(self: Any) -> str
def increment(self: Any) -> Any
def decrement(self: Any) -> Any
def _setup_control_areas(self: Any) -> Any
def _get_button_colors(self: Any, theme: Any) -> Any
def update(self: Any, dt: Any, inputState: Any) -> Any
def render(self: Any, renderer: Any) -> Any
No documentation
on_toggle: Callable[[bool], None] = None
def __init__(self: Any, x: int, y: int, width: int, height: int, checked: bool, label: Optional[str] = None, label_position: str = 'right', root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def set_on_toggle(self: Any, callback: Callable[[bool], None]) -> Any
def get_state(self: Any) -> bool
def value(self: Any) -> bool
def _get_colors(self: Any) -> Tuple[Tuple[int, int, int], Tuple[int, int, int], Tuple[int, int, int], Tuple[int, int, int]]
def toggle(self: Any) -> Any
def update(self: Any, dt: Any, inputState: Any) -> Any
def render(self: Any, renderer: Any) -> Any
A compact/expandable color picker supporting RGB, HSL, or HSV.
Fully theme‑aware.
_properties: Any = {**UIElement._properties, 'color': {'name': 'color', 'key': 'color', 'type': Color, 'editable': True, 'description': 'Current selected color'}, 'color_system': {'name': 'color system', 'key': 'color_system', 'type': str, 'editable': False, 'description': 'RGB, HSL or HSV'}, 'expanded': {'name': 'expanded', 'key': 'expanded', 'type': bool, 'editable': True, 'description': 'Show expanded panel'}, 'show_alpha': {'name': 'show alpha', 'key': 'show_alpha', 'type': bool, 'editable': True, 'description': 'Show alpha slider'}}
def __init__(self: Any, x: int, y: int, width: int = 280, closed_height: int = 32, expanded_height: int = 196, color_system: Literal['rgb', 'hsl', 'hsv'] = 'rgb', initial_color: Optional[Color] = None, show_alpha: bool = False, root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def _build_ui(self: Any) -> Any
def _add_child_to_expanded(self: Any, child: UIElement) -> Any
def _set_expanded_visible(self: Any, visible: bool) -> Any
def _create_hue_gradient(self: Any, expanded_top_margin: int) -> Any
def _create_rainbow_surface(self: Any, w: int, h: int) -> pygame.Surface
def _hue_to_rgb(hue: float) -> Tuple[int, int, int]
def _apply_theme_to_children(self: Any) -> Any
def update_theme(self: Any, theme_type: ThemeType) -> Any
def _toggle_expanded(self: Any) -> Any
def _update_gradient_position(self: Any) -> Any
def _update_closed_display(self: Any) -> Any
def _sync_sliders_from_color(self: Any) -> Any
def _on_slider_changed(self: Any, component: str, value: float) -> Any
def _on_hex_changed(self: Any, hex_str: str) -> Any
def _color_to_hex(self: Any) -> str
def _rgb_to_hsl(r: int, g: int, b: int) -> Tuple[float, float, float]
def _hsl_to_rgb(h: float, s: float, l: float) -> Tuple[int, int, int]
def _rgb_to_hsv(r: int, g: int, b: int) -> Tuple[float, float, float]
def _hsv_to_rgb(h: float, s: float, v: float) -> Tuple[int, int, int]
def render(self: Any, renderer: Any) -> Any
def color(self: Any) -> Color
def color(self: Any, new_color: Color) -> Any
def set_on_color_changed(self: Any, callback: Callable[[Color], None]) -> Any
def expand(self: Any) -> Any
def collapse(self: Any) -> Any
def update(self: Any, dt: float, inputState: InputState) -> Any