1use fltk::{enums::ColorDepth, prelude::*, *};
2
3fn main() {
4 let app = app::App::default();
5 let mut wind = window::Window::default().with_size(400, 400);
6 let mut frame = frame::Frame::default_fill();
7 wind.make_resizable(true);
8 wind.end();
9 wind.show();
10 frame.draw(move |f| {
11 let mut fb: Vec<u8> = vec![0u8; (f.w() * f.h() * 4) as usize];
12 for (iter, pixel) in fb.chunks_exact_mut(4).enumerate() {
13 let x = iter % f.w() as usize;
14 let y = iter / f.w() as usize;
15 let (red, green, blue) = utils::hex2rgb((x ^ y) as u32);
16 pixel.copy_from_slice(&[red, green, blue, 255]);
17 }
18 let mut image = image::RgbImage::new(&fb, f.w(), f.h(), ColorDepth::Rgba8)
19 .unwrap()
20 .to_srgb_image()
21 .unwrap()
22 .blur(50)
23 .unwrap()
24 .convert(ColorDepth::Rgb8)
25 .unwrap();
26 image.draw(f.x(), f.y(), f.w(), f.h());
27 });
28
29 app.run().unwrap();
30}