mod: simplify Container and Element creation with updated zterm behavior
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 1m9s
Some checks failed
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 1m9s
This commit is contained in:
13
src/main.zig
13
src/main.zig
@@ -28,22 +28,31 @@ pub fn main() !void {
|
||||
// skip own executable name
|
||||
_ = arg_it.skip();
|
||||
}
|
||||
// tui creation
|
||||
errdefer |err| log.err("Application Error: {any}", .{err});
|
||||
|
||||
var threaded_io: std.Io.Threaded = .init(allocator);
|
||||
errdefer threaded_io.deinit();
|
||||
const io = threaded_io.io();
|
||||
errdefer |err| log.err("Application Error: {any}", .{err});
|
||||
|
||||
var renderer = zterm.Renderer.Buffered.init(allocator);
|
||||
defer renderer.deinit();
|
||||
|
||||
var app: App = .init(io, .init);
|
||||
|
||||
var root = try tui_diff.Container(App, allocator);
|
||||
var element_root: tui_diff.elements.Root(App) = .init;
|
||||
var element_tree: tui_diff.elements.Tree(App) = .init;
|
||||
var changes: [3]tui_diff.elements.Change(App) = @splat(.init);
|
||||
var scrollable_diffs = try tui_diff.elements.Diff(App, allocator, &changes);
|
||||
// NOTE scrollable should provide deinit function (*zterm*)
|
||||
// -> `Container` of `Scrollable` does not pass through the `minSize` request to its children!
|
||||
|
||||
var root = try tui_diff.Container(App, allocator, &element_root, &element_tree, &scrollable_diffs);
|
||||
defer root.deinit(); // also de-initializes the children
|
||||
|
||||
try app.start();
|
||||
defer app.stop() catch |err| log.err("Failed to stop application: {any}", .{err});
|
||||
// defer app.model.deinit();
|
||||
|
||||
// event loop
|
||||
loop: while (true) {
|
||||
|
||||
Reference in New Issue
Block a user