Module surface

Module surface 

Source
Expand description

Provides a flexible, customizable surface container component for UI elements.

This module defines the surface component and its configuration via SurfaceArgs. The surface acts as a visual and interactive container, supporting background color, shape, shadow, border, padding, and optional ripple effects for user interaction.

Typical use cases include wrapping content to visually separate it from the background, providing elevation or emphasis, and enabling interactive feedback (e.g., ripple on click). It is commonly used as the foundational layer for buttons, dialogs, editors, and other interactive or visually distinct UI elements.

The surface can be configured for both static and interactive scenarios, with support for hover and click callbacks, making it suitable for a wide range of UI composition needs.

Structs§

SurfaceArgs
SurfaceArgsBuilder
Builder for SurfaceArgs.

Enums§

SurfaceArgsBuilderError
Error type for SurfaceArgsBuilder
SurfaceStyle
Defines the visual style of the surface (fill, outline, or both).

Functions§

surface
Renders a styled rectangular (or elliptic / capsule) container and optionally provides interactive click + ripple feedback.