Quellcode durchsuchen

app/wallet: improve titles

x vor 1 Monat
Ursprung
Commit
1e1820c542
1 geänderte Dateien mit 27 neuen und 1 gelöschten Zeilen
  1. 27 1
      bin/app/src/app/schema/wallet/util.rs

+ 27 - 1
bin/app/src/app/schema/wallet/util.rs

@@ -151,6 +151,32 @@ pub async fn create_title(
     text: &str,
     y: &mut f32,
 ) -> SceneNodePtr {
+    // Background gradient
+    let bg_node = create_vector_art(&format!("{}_bg", name));
+    let prop = bg_node.get_property("rect").unwrap();
+    prop.set_default_f32(0, 0.).unwrap();
+    prop.set_default_f32(1, *y).unwrap();
+    prop.set_default_expr(2, expr::load_var("w")).unwrap();
+    prop.set_default_f32(3, (TITLE_PADDING * 2. + TITLE_FONTSIZE) / 2.).unwrap();
+    bg_node.set_property_u32(atom, Role::App, "z_index", 1).unwrap();
+    let mut shape = VectorShape::new();
+    shape.add_smooth_vertical_gradient(
+        expr::const_f32(0.),
+        expr::const_f32(0.),
+        expr::load_var("w"),
+        expr::load_var("h"),
+        [0., 0.9059, 0.9216, 0.20],
+        [0., 0.8784, 1., 0.],
+        8,
+        0.2,
+    );
+    bg_node.set_property_shape(atom, Role::App, "shape", shape).unwrap();
+    let bg_node = bg_node
+        .setup(|me| VectorArt::new(me, app.renderer.clone(), app.redraw_trigger.clone()))
+        .await;
+    layer.link(bg_node);
+
+    // Title text
     let node = create_text(name);
     let prop = node.get_property("rect").unwrap();
     prop.set_default_f32(0, PADDING_X).unwrap();
@@ -160,7 +186,7 @@ pub async fn create_title(
     node.get_property("font_size").unwrap().set_default_f32(0, TITLE_FONTSIZE).unwrap();
     node.set_property_str(atom, Role::App, "text", text).unwrap();
     let prop = node.get_property("text_color").unwrap();
-    prop.set_default_f32_multi(&[1., 1., 1., 1.]).unwrap();
+    prop.set_default_f32_multi(&[0.6471, 0.8667, 0.8157, 1.]).unwrap();
     node.set_property_u32(atom, Role::App, "z_index", 2).unwrap();
     let node = node
         .setup(|me| {