mirror of
https://github.com/slint-ui/slint.git
synced 2025-08-04 18:58:36 +00:00
Implements @radial-gradient(circle, ...)
Only the circle is implemented so far. Part of #263
This commit is contained in:
parent
7a1e5bef93
commit
b4ebd88d35
21 changed files with 418 additions and 56 deletions
|
@ -2178,6 +2178,17 @@ fn compile_expression(expr: &llr::Expression, ctx: &EvaluationContext) -> String
|
|||
stops_it.join(", "), angle, stops.len()
|
||||
)
|
||||
}
|
||||
Expression::RadialGradient{ stops} => {
|
||||
let mut stops_it = stops.iter().map(|(color, stop)| {
|
||||
let color = compile_expression(color, ctx);
|
||||
let position = compile_expression(stop, ctx);
|
||||
format!("slint::private_api::GradientStop{{ {}, {}, }}", color, position)
|
||||
});
|
||||
format!(
|
||||
"[&] {{ const slint::private_api::GradientStop stops[] = {{ {} }}; return slint::Brush(slint::private_api::RadialGradientBrush(stops, {})); }}()",
|
||||
stops_it.join(", "), stops.len()
|
||||
)
|
||||
}
|
||||
Expression::EnumerationValue(value) => {
|
||||
format!(
|
||||
"slint::cbindgen_private::{}::{}",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue