summaryrefslogtreecommitdiff
path: root/src/inspector
diff options
context:
space:
mode:
authorMitchell Hashimoto <mitchell.hashimoto@gmail.com>2024-03-14 10:57:27 -0700
committerMitchell Hashimoto <mitchell.hashimoto@gmail.com>2024-03-22 20:28:04 -0700
commitb677460258de8ca58170ec5a7ffe4203fb28128b (patch)
tree833ed89b148022a0f9b83c5aea57268e42fbcdb9 /src/inspector
parent55b4e49cb6225fab5c5b72b43c074bc7e8395362 (diff)
inspector: add page system details
Diffstat (limited to 'src/inspector')
-rw-r--r--src/inspector/Inspector.zig61
-rw-r--r--src/inspector/main.zig1
2 files changed, 62 insertions, 0 deletions
diff --git a/src/inspector/Inspector.zig b/src/inspector/Inspector.zig
index 1f36dd3b4..d44d6786b 100644
--- a/src/inspector/Inspector.zig
+++ b/src/inspector/Inspector.zig
@@ -491,6 +491,67 @@ fn renderScreenWindow(self: *Inspector) void {
}
} // table
} // kitty graphics
+
+ if (cimgui.c.igCollapsingHeader_TreeNodeFlags(
+ "Internal Terminal State",
+ cimgui.c.ImGuiTreeNodeFlags_DefaultOpen,
+ )) {
+ const pages = &screen.pages;
+
+ {
+ _ = cimgui.c.igBeginTable(
+ "##terminal_state",
+ 2,
+ cimgui.c.ImGuiTableFlags_None,
+ .{ .x = 0, .y = 0 },
+ 0,
+ );
+ defer cimgui.c.igEndTable();
+
+ {
+ cimgui.c.igTableNextRow(cimgui.c.ImGuiTableRowFlags_None, 0);
+ {
+ _ = cimgui.c.igTableSetColumnIndex(0);
+ cimgui.c.igText("Memory Usage");
+ }
+ {
+ _ = cimgui.c.igTableSetColumnIndex(1);
+ cimgui.c.igText("%d bytes", pages.page_size);
+ }
+ }
+
+ {
+ cimgui.c.igTableNextRow(cimgui.c.ImGuiTableRowFlags_None, 0);
+ {
+ _ = cimgui.c.igTableSetColumnIndex(0);
+ cimgui.c.igText("Memory Limit");
+ }
+ {
+ _ = cimgui.c.igTableSetColumnIndex(1);
+ cimgui.c.igText("%d bytes", pages.max_size);
+ }
+ }
+
+ {
+ cimgui.c.igTableNextRow(cimgui.c.ImGuiTableRowFlags_None, 0);
+ {
+ _ = cimgui.c.igTableSetColumnIndex(0);
+ cimgui.c.igText("Viewport Location");
+ }
+ {
+ _ = cimgui.c.igTableSetColumnIndex(1);
+ cimgui.c.igText("%s", @tagName(pages.viewport).ptr);
+ }
+ }
+ } // table
+ //
+ if (cimgui.c.igCollapsingHeader_TreeNodeFlags(
+ "Active Page",
+ cimgui.c.ImGuiTreeNodeFlags_DefaultOpen,
+ )) {
+ inspector.page.render(&pages.pages.last.?.data);
+ }
+ } // terminal state
}
/// The modes window shows the currently active terminal modes and allows
diff --git a/src/inspector/main.zig b/src/inspector/main.zig
index c80384182..ee871f200 100644
--- a/src/inspector/main.zig
+++ b/src/inspector/main.zig
@@ -2,6 +2,7 @@ const std = @import("std");
pub const cell = @import("cell.zig");
pub const cursor = @import("cursor.zig");
pub const key = @import("key.zig");
+pub const page = @import("page.zig");
pub const termio = @import("termio.zig");
pub const Cell = cell.Cell;