mirror of
https://github.com/DioxusLabs/dioxus
synced 2024-12-22 10:33:07 +00:00
67a6fa9eb8
* work on seperating tree struture from realdom * intial update to new mutations * handle height * update to taffy 0.2 * add as_varient functions to OwnedAttributeValue * make get node parent mut optionally return a parent * work on upward pass * add more code for parrellel passes * make resolve passes public * more work on parallel passes * fix deadlock and add more tests * move height into the tree instead of the realdom * make passes exicute in parallel instead of executing invidual passes in parellel * fix some warnings * add up dependant test * clean up examples * work on intigrating state with passes * update to new mutations * work on implementing macro * make the macro compile * more progress on macro * mark cloned nodes as dirty * update persistant_iterator utility * fix mask generation * update tui with new mutations * more progress updating tui * some basic tui examples working * don't push template nodes onto the stack * update hover example * update benchmark * update more examples * fix root node layout * ignore out of bounds renders * update color picker example * update all events example * update remaining examples * update tests * tests passing * move persistant iterator test * update examples * fix gaps in layout * fix formatting * fix memory leak
113 lines
3 KiB
Rust
113 lines
3 KiB
Rust
use dioxus::prelude::*;
|
|
|
|
fn main() {
|
|
dioxus_tui::launch(app);
|
|
}
|
|
|
|
fn app(cx: Scope) -> Element {
|
|
let alpha = use_state(&cx, || 100);
|
|
|
|
cx.render(rsx! {
|
|
div {
|
|
width: "100%",
|
|
height: "100%",
|
|
flex_direction: "column",
|
|
onwheel: move |evt| alpha.set((**alpha + evt.inner().delta().strip_units().y as i64).min(100).max(0)),
|
|
|
|
p {
|
|
background_color: "black",
|
|
flex_direction: "column",
|
|
justify_content: "center",
|
|
align_items: "center",
|
|
color: "green",
|
|
"hi"
|
|
"hi"
|
|
"hi"
|
|
}
|
|
|
|
li {
|
|
background_color: "red",
|
|
flex_direction: "column",
|
|
justify_content: "center",
|
|
align_items: "center",
|
|
"bib"
|
|
"bib"
|
|
"bib"
|
|
"bib"
|
|
"bib"
|
|
"bib"
|
|
"bib"
|
|
"bib"
|
|
}
|
|
li {
|
|
background_color: "blue",
|
|
flex_direction: "column",
|
|
justify_content: "center",
|
|
align_items: "center",
|
|
"zib"
|
|
"zib"
|
|
"zib"
|
|
"zib"
|
|
"zib"
|
|
"zib"
|
|
}
|
|
p {
|
|
background_color: "yellow",
|
|
"asd"
|
|
}
|
|
p {
|
|
background_color: "green",
|
|
"asd"
|
|
}
|
|
p {
|
|
background_color: "white",
|
|
"asd"
|
|
}
|
|
p {
|
|
background_color: "cyan",
|
|
"asd"
|
|
}
|
|
div {
|
|
font_weight: "bold",
|
|
color: "#666666",
|
|
p {
|
|
"bold"
|
|
}
|
|
p {
|
|
font_weight: "normal",
|
|
" normal"
|
|
}
|
|
}
|
|
p {
|
|
font_style: "italic",
|
|
color: "red",
|
|
"italic"
|
|
}
|
|
p {
|
|
text_decoration: "underline",
|
|
color: "rgba(255, 255, 255)",
|
|
"underline"
|
|
}
|
|
p {
|
|
text_decoration: "line-through",
|
|
color: "hsla(10, 100%, 70%)",
|
|
"line-through"
|
|
}
|
|
div{
|
|
position: "absolute",
|
|
top: "1px",
|
|
background_color: "rgba(255, 0, 0, 50%)",
|
|
width: "100%",
|
|
p {
|
|
color: "rgba(255, 255, 255, {alpha}%)",
|
|
background_color: "rgba(100, 100, 100, {alpha}%)",
|
|
"rgba(255, 255, 255, {alpha}%)"
|
|
}
|
|
p {
|
|
color: "rgba(255, 255, 255, 100%)",
|
|
"rgba(255, 255, 255, 100%)"
|
|
}
|
|
}
|
|
}
|
|
})
|
|
}
|