Crate iced_nativesource ·
A renderer-agnostic native GUI runtime.
iced_core and builds a native runtime on top of it,
- A custom layout engine, greatly inspired by
- Event handling for all the built-in widgets
- A renderer-agnostic API
To achieve this, it introduces a couple of reusable interfaces:
Widgettrait, which is used to implement new widgets: from layout requirements to event and drawing logic.
- A bunch of
Renderertraits, meant to keep the crate renderer-agnostic.
The strategy to use this crate depends on your particular use case. If you want to:
- Implement a custom shell or integrate it in your own system, check out the
- Build a new renderer, see the renderer module.
- Build a custom widget, start at the
pub use iced_futures::futures;
pub use executor::Executor;
pub use clipboard::Clipboard;
pub use command::Command;
pub use event::Event;
pub use layout::Layout;
pub use overlay::Overlay;
pub use program::Program;
pub use renderer::Renderer;
pub use subscription::Subscription;
pub use user_interface::UserInterface;
pub use widget::Widget;
- Align and position widgets.
- Change the appearance of an application.
- Access the clipboard.
- Run asynchronous actions.
- Handle events of a user interface.
- Choose your preferred executor to power a runtime.
- Load and draw raster graphics.
- Track keyboard events.
- Position your widgets properly.
- Track mouse events.
- Display interactive elements on top of other widgets.
- Build interactive programs using The Elm Architecture.
- Write your own renderer.
- Listen to external events in your application.
- Load and draw vector graphics.
- Access the native system.
- Draw and interact with text.
- Use the built-in theme and styles.
- Keep track of time, both in native and web platforms!
- Build touch events.
- Implement your own event loop to drive a user interface.
- Use the built-in widgets or create your own.
- Build window-based GUI applications.
- Creates a
Colorwith shorter and cleaner syntax.
- Creates a
Columnwith the given children.
- Creates a
Rowwith the given children.
- A color in the sRGB color space.
- A bunch of time measurements for debugging purposes.
- A generic
- The hasher used to compare layouts.
- An amount of space to pad for each side of a box
- An amount of logical pixels.
- A 2D point.
- A rectangle.
- A connection to the state of a shell.
- An amount of space in 2 dimensions.
- A 2D vector.
- Alignment on the axis of a container.
- The background of some element.
- The strategy used to fit the contents of a widget to its bounding box.
- A font.
- The strategy used to fill space in a specific dimension.
- A built-in theme.
- A native runtime with a generic executor and receiver of results.