A clock UI element that can display both analog and digital time.
Supports both 12-hour and 24-hour formats, real-time or custom time,
and various customization options.
Attributes:
diameter (int): Diameter of the analog clock face.
use_real_time (bool): Whether to use the system's real time.
show_numbers (bool): Whether to show numbers on the analog clock.
time_style (str): '12hr' or '24hr' format.
mode (str): 'analog', 'digital', or 'both'.
custom_time (datetime): Custom time to display (if not using real time).
def __init__(self: Any, x: int, y: int, diameter: int = 100, font_name: Optional[str] = None, font_size: int = 16, use_real_time: bool = True, show_numbers: bool = True, time_style: Literal['12hr', '24hr'] = '24hr', mode: Literal['analog', 'digital', 'both'] = 'analog', root_point: Tuple[float, float] = (0, 0), theme: ThemeType = None, element_id: Optional[str] = None) -> Any
def font(self: Any) -> Any
def small_font(self: Any) -> Any
def update_theme(self: Any, theme_type: ThemeType) -> Any
def set_face_color(self: Any, color: Tuple[int, int, int]) -> Any
def set_border_color(self: Any, color: Tuple[int, int, int]) -> Any
def set_hand_colors(self: Any, hour: Tuple[int, int, int], minute: Tuple[int, int, int], second: Tuple[int, int, int]) -> Any
def set_number_color(self: Any, color: Tuple[int, int, int]) -> Any
def set_digital_text_color(self: Any, color: Tuple[int, int, int]) -> Any
def set_time(self: Any, time_struct: time.struct_time) -> Any
def set_time_from_string(self: Any, time_str: str, format_str: str = '%H:%M:%S') -> Any
def get_time_string(self: Any) -> str
def update(self: Any, dt: float, inputState: InputState) -> Any
def render(self: Any, renderer: Renderer) -> Any
def _render_analog_clock(self: Any, renderer: Renderer, x: int, y: int) -> Any
def _draw_clock_numbers(self: Any, renderer: Renderer, center_x: int, center_y: int, radius: int) -> Any
def _draw_tick_marks(self: Any, renderer: Renderer, center_x: int, center_y: int, radius: int) -> Any
def _draw_hand(self: Any, renderer: Renderer, center_x: int, center_y: int, angle: float, length: float, width: int, color: Tuple[int, int, int]) -> Any
def _render_digital_clock(self: Any, renderer: Renderer, x: int, y: int) -> Any