Skip to main content

bench/
bench.rs

1use ferrum_flow::*;
2use gpui::{AppContext as _, Application, WindowOptions};
3
4fn main() {
5    Application::new().run(|cx| {
6        let mut graph = Graph::new();
7
8        for j in 0..100 {
9            for i in 0..100 {
10                graph
11                    .create_node("")
12                    .position(200.0 * i as f32, 200.0 * j as f32)
13                    .input()
14                    .output()
15                    .build(&mut graph);
16            }
17        }
18
19        cx.open_window(WindowOptions::default(), |_, cx| {
20            cx.new(|fc| {
21                let mut flow = FlowCanvas::new(graph, fc)
22                    .plugin(SelectionPlugin::new())
23                    .plugin(NodeInteractionPlugin::new())
24                    .plugin(ViewportPlugin::new())
25                    .plugin(Background::new())
26                    .plugin(NodePlugin::new())
27                    .plugin(PortInteractionPlugin::new())
28                    .plugin(EdgePlugin::new())
29                    .plugin(DeletePlugin::new())
30                    .plugin(HistoryPlugin::new());
31                flow.init_plugins();
32                flow
33            })
34        })
35        .unwrap();
36    });
37}