Merge branch 'master' into improvement/docs
This commit is contained in:
commit
42e775fece
36 changed files with 683 additions and 383 deletions
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_native"
|
||||
version = "0.1.0-alpha"
|
||||
version = "0.1.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2018"
|
||||
description = "A renderer-agnostic library for native GUIs"
|
||||
|
|
@ -8,6 +8,6 @@ license = "MIT"
|
|||
repository = "https://github.com/hecrj/iced"
|
||||
|
||||
[dependencies]
|
||||
iced_core = { version = "0.1.0-alpha", path = "../core", features = ["command"] }
|
||||
iced_core = { version = "0.1.0", path = "../core", features = ["command"] }
|
||||
twox-hash = "1.5"
|
||||
raw-window-handle = "0.3"
|
||||
|
|
|
|||
35
native/README.md
Normal file
35
native/README.md
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
# `iced_native`
|
||||
[][documentation]
|
||||
[](https://crates.io/crates/iced_native)
|
||||
[](https://github.com/hecrj/iced/blob/master/LICENSE)
|
||||
[](https://iced.zulipchat.com)
|
||||
|
||||
`iced_native` takes [`iced_core`] and builds a native runtime on top of it, featuring:
|
||||
- A custom layout engine, greatly inspired by [`druid`]
|
||||
- Event handling for all the built-in widgets
|
||||
- A renderer-agnostic API
|
||||
|
||||
To achieve this, it introduces a bunch of reusable interfaces:
|
||||
- A `Widget` trait, which is used to implement new widgets: from layout requirements to event and drawing logic.
|
||||
- A bunch of `Renderer` traits, meant to keep the crate renderer-agnostic.
|
||||
- A `Windowed` trait, leveraging [`raw-window-handle`], which can be implemented by graphical renderers that target _windows_. Window-based shells (like [`iced_winit`]) can use this trait to stay renderer-agnostic.
|
||||
|
||||

|
||||
|
||||
[documentation]: https://docs.rs/iced_native
|
||||
[`iced_core`]: ../core
|
||||
[`iced_winit`]: ../winit
|
||||
[`druid`]: https://github.com/xi-editor/druid
|
||||
[`raw-window-handle`]: https://github.com/rust-windowing/raw-window-handle
|
||||
|
||||
## Installation
|
||||
Add `iced_native` as a dependency in your `Cargo.toml`:
|
||||
|
||||
```toml
|
||||
iced_native = "0.1.0"
|
||||
```
|
||||
|
||||
__Iced moves fast and the `master` branch can contain breaking changes!__ If
|
||||
you want to learn about a specific release, check out [the release list].
|
||||
|
||||
[the release list]: https://github.com/hecrj/iced/releases
|
||||
|
|
@ -108,11 +108,7 @@ where
|
|||
let layout = if hash == cache.hash {
|
||||
cache.layout
|
||||
} else {
|
||||
let layout_start = std::time::Instant::now();
|
||||
let layout = renderer.layout(&root);
|
||||
dbg!(std::time::Instant::now() - layout_start);
|
||||
|
||||
layout
|
||||
renderer.layout(&root)
|
||||
};
|
||||
|
||||
UserInterface {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue