From 737350f85c5bd015f20238c55324394387aeb1fe Mon Sep 17 00:00:00 2001 From: Joshua Padman Date: Wed, 22 May 2024 21:54:03 +1000 Subject: [PATCH] PNG and SVG examples - Updated assets The original icon.png had unknown origins, prior to inclusion in winit. Replaced with assets that were already in the repository and do not require attribution per https://github.com/lapce/floem/pull/116#issuecomment-1752165921 --- examples/window-icon/Cargo.toml | 3 +- examples/window-icon/assets/ferris.png | Bin 0 -> 58413 bytes examples/window-icon/assets/ferris.svg | 30 +++++++++++++ examples/window-icon/assets/icon.png | Bin 2950 -> 0 bytes examples/window-icon/src/main.rs | 58 +++++++++++++++++++++---- 5 files changed, 82 insertions(+), 9 deletions(-) create mode 100644 examples/window-icon/assets/ferris.png create mode 100644 examples/window-icon/assets/ferris.svg delete mode 100644 examples/window-icon/assets/icon.png diff --git a/examples/window-icon/Cargo.toml b/examples/window-icon/Cargo.toml index 16ad6090..0e5f316d 100644 --- a/examples/window-icon/Cargo.toml +++ b/examples/window-icon/Cargo.toml @@ -6,4 +6,5 @@ edition = "2021" [dependencies] im.workspace = true floem = { path = "../.." } -image = "0.25.1" +image = "0.25" +nsvg = "0.5" \ No newline at end of file diff --git a/examples/window-icon/assets/ferris.png b/examples/window-icon/assets/ferris.png new file mode 100644 index 0000000000000000000000000000000000000000..966085970588fa148f40d161fa765a53b4705784 GIT binary patch literal 58413 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/window-icon/assets/icon.png b/examples/window-icon/assets/icon.png deleted file mode 100644 index aa3fbf3cfc18a3723cca4de446cf6f6079216b50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2950 zcmV;13wiX3P)U&%Q{5STEZaN&pSO8DKxK2iQtgppLmA zSQtS6KZRCSgCSvl2~-6Xpa_P_fa$fWf1yZi$9Z% z`gZ^+WK>oQG%1*0;!qj#Bbka~o`7yrC~QZ7rF954ZPHB}Q`j_~I|Di0E+91n<)mF_ z4I9u990ouL1$>7Etkk}!^oqtm1r`B4Py%HOY)6or7U#~c%?!+p($gQOi`OE@CwXDT zI$m46{cHYq=_h=#vjDgmC;_Gdoq;+4s!CuXh^vBMI*T}S5ar9#cy@$MFw_gB-V`_` z3LO%V=1nlVYdbS9Rzzamy#^>w%&mQUJiy@^T5{+~3v?b&h4(9HA%K7w@ z?Ht&E69Ng@uJQHMbIJts^ft8{1J# zn|vG7rawe^`2-4k^rWyyFE(u4!pPx0IM>h$@V)CQsYX>`bE<%y0wj{xC4%JuxYGWU zz3;r%V&U0V{WVp;d5}-Hyvwo||H$m8f5Z2SZ)MjPJ9&KO9b{&t(H@C2W9prh1#(%s zWIp+wbE&U8!<6wiGv(gfsH<(nBV{p4bpWUe*!(smQYm;B&<>0i1VakgMpfVr;7(xk z^!rEi=cP0GrnZr#E7o%0@L6&@r7>%I86$@Dr9BesC~b~Ier_f&uG&E7ymSWKT*#nX zdh$P;_fj$a56W){aX4XJ%QPtzN(mMO6v5D=z;ZoRBA-YZ%GF6~eD={k4xg;!#=<8 zl;Torl;u?qGJN`K22T1bC$@Y>RaQF5NE6se_{Xvl;#cq4N@{CRPJ&=)3RQu1z;>P1 z#%%!Qd$v#fzSldf$m1cY6i*d)BWBsOSvEi^pOxr8W)`Nml6ZJ9;7vKBUT4L`EB$Xlc}4~j zu#_U96i9*B)bUtxY}3Tl4HCA)x^vA4DacIs5^Zba`NQ2w)SsgL;HS)pm=w899vS~T zPUrW-jJ0v=4TJf@mubfwdpIaTRq0!)PGm@I%LeW#@_70dd%Z-Qj)6y}9-$PcvI+?s zZirlFq(>qTe#6vR%hY?|sdhmUm&hEj)J#XTUwc*Oh zLkOwSaI%KuQL0EU6q4x=Cf(0{-6b9^M@^iB-d<@$`ZS)PxOOiQ(@Sn^J+_^I^GAF{nl>Zl z?39Q*B;)54>o9bP*GnR${gtJJKyz&FKJpJrzWJO_dzZ4Y&scsxwvzL|dYk)t41#Ec z@|sVWZYVOPz!H+E=_NOOk&FIZESH}F7Y;JMW{09r$xM-qwV|2wd3v`1rtA2#AMXu5 zkCfli9zZ${&Ax2j``%;kor0DGPGGrIC}DFOr?r z1w9t#vt9uje0j)3goN&5)~?sABVVjF4mH$0gdJ%l7q_>#gs4KBP-F)2d*5}@A?pqR@vZpdZA?74j-2); zgyZ1R4N=r~9_+{Jcst!&YH8Kova@Ld(UE+9 z@WGB~6SH)Yj8)f+npJwV^`z?Ca9l)94?u7iJL!KV3SMK2N6J=mIt zLXgx90HTHmPcll2G+0}{2>Oo!E53n+rNOI1si@rXurl2%{E=ogck^O#OZ_1trWadi z095>FDO2~o!{`&A5HY++<={w(LXaMB#TFV7!+RCD5&}m^+{qZ4viT~%NG%)rsBCbck7cBMlKe)ms!W(Xn}TB3CGX{-d3_P@^$4{abP(nQ4Y;IiVxbr-hK5GWiW zk*XtQ9U-q-ODO~j!%kw_2~KABVr|jAZ0~y~2nosfi!2OOq#6?laUCxJWaW-094TMG z@Q~F~#}AHv#K@W*WJj8DTX9S~fg>cgkf}*mA(cWpHja=abd!kT;Y6q2Z0t9VFS`vU z;m$-P+RsVlJY+AreNzVw2no{NieC@;jyEHVjLu)IBmW-n*2S*4j%>cs#LIWoWRy?lR)<^C{`>W~U z=B;%rf7*sph+s&lg{A5$_xu(!x{5B;adO=S=7hXR#v&LBVgN#RMTm^lzYeGtlye@X w4gjBHv4zEfYgH|z$a&{|8ejg&cM|ab1#qdYa^R8!B>(^b07*qoM6N<$f+^~Co&W#< diff --git a/examples/window-icon/src/main.rs b/examples/window-icon/src/main.rs index 7b4efdef..4806f2ad 100644 --- a/examples/window-icon/src/main.rs +++ b/examples/window-icon/src/main.rs @@ -1,15 +1,51 @@ use floem::{ + close_window, event::{Event, EventListener}, keyboard::{Key, NamedKey}, kurbo::Size, - views::Decorators, - window::{Icon, WindowConfig}, + new_window, + views::{button, label, v_stack, Decorators}, + window::{Icon, WindowConfig, WindowId}, Application, IntoView, View, }; use std::path::Path; +fn sub_window_view(id: WindowId) -> impl IntoView { + v_stack(( + label(move || String::from("This window has an icon from an SVG file.")) + .style(|s| s.font_size(30.0)), + button(|| "Close this window").on_click_stop(move |_| { + close_window(id); + }), + )) + .style(|s| { + s.flex_col() + .items_center() + .justify_center() + .width_full() + .height_full() + .gap(0.0, 10.0) + }) +} + fn app_view() -> impl IntoView { - let view = "Show Window Icon".style(|s| s.font_size(30.0)).style(|s| { + let view = v_stack(( + label(move || String::from("This window has an icon from a PNG file")) + .style(|s| s.font_size(30.0)), + button(|| "Open another window").on_click_stop(|_| { + let svg_icon = load_svg_icon(include_str!("../assets/ferris.svg")); + new_window( + sub_window_view, + Some( + WindowConfig::default() + .size(Size::new(600.0, 150.0)) + .title("Window Icon Sub Example") + .window_icon(svg_icon), + ), + ); + }), + )) + .style(|s| { s.flex_col() .items_center() .justify_center() @@ -29,8 +65,8 @@ fn app_view() -> impl IntoView { } fn main() { - let path = concat!(env!("CARGO_MANIFEST_DIR"), "./assets/icon.png"); - let icon = load_icon(Path::new(path)); + let png_icon_path = concat!(env!("CARGO_MANIFEST_DIR"), "./assets/ferris.png"); + let png_icon = load_png_icon(Path::new(png_icon_path)); Application::new() .window( @@ -38,14 +74,14 @@ fn main() { Some( WindowConfig::default() .size(Size::new(800.0, 250.0)) - .title("Window Size Example") - .window_icon(icon), + .title("Window Icon Example") + .window_icon(png_icon), ), ) .run(); } -fn load_icon(path: &Path) -> Icon { +fn load_png_icon(path: &Path) -> Icon { let (icon_rgba, icon_width, icon_height) = { let image = image::open(path) .expect("Failed to open icon path") @@ -56,3 +92,9 @@ fn load_icon(path: &Path) -> Icon { }; Icon::from_rgba(icon_rgba, icon_width, icon_height).expect("Failed to open icon") } + +fn load_svg_icon(svg: &str) -> Icon { + let svg = nsvg::parse_str(svg, nsvg::Units::Pixel, 96.0).unwrap(); + let (icon_width, icon_height, icon_rgba) = svg.rasterize_to_raw_rgba(1.0).unwrap(); + Icon::from_rgba(icon_rgba, icon_width, icon_height).expect("Failed to open icon") +}