Configuration class for tooltip appearance and behavior.
Allows easy customization of tooltips without passing multiple parameters.
def __init__(self: Any, text: str = '', font_size: int = 14, padding: int = 8, corner_radius: int = 4, offset_x: int = 10, offset_y: int = 10, show_delay: float = 0.5, max_width: int = 300, theme: ThemeType = None) -> Any
Tooltip element that displays helpful information when hovering over UI elements.
Automatically adjusts position to stay within screen boundaries.
def __init__(self: Any, config: TooltipConfig = None, element_id: Optional[str] = None) -> Any
def _calculate_size(self: Any) -> Any
def _wrap_text(self: Any, text: str, font: Any) -> List[str]
def set_text(self: Any, text: str) -> Any
def set_config(self: Any, config: TooltipConfig) -> Any
def set_target(self: Any, element: UIElement) -> Any
def update_tooltip(self: Any, inputState: InputState, dt: float, screen_width: int, screen_height: int) -> bool
def _update_position(self: Any, screen_width: int, screen_height: int, mouse_pos: Tuple[int, int]) -> Any
def render(self: Any, renderer: Any) -> Any
def _render_wrapped_text(self: Any, renderer: Any, x: int, y: int, theme: Any) -> Any
Manages tooltips globally to ensure proper display and positioning.
Supports multiple tooltips for different UI elements.
_instance: Any = None
_tooltips: Dict[str, Tooltip] = {}
_active_tooltip: Optional[Tooltip] = None
def __new__(cls: Any) -> Any
def register_tooltip(cls: Any, element: UIElement, tooltip: Tooltip) -> Any
def unregister_tooltip(cls: Any, element: UIElement) -> Any
def update(cls: Any, engine: 'LunaEngine', dt: float) -> Any
def get_tooltip_to_render(cls: Any, engine: 'LunaEngine') -> List[Tooltip]
def render(cls: Any, renderer: Any) -> Any
def clear_all(cls: Any) -> Any