a73x

124b4c98

Make comparison panel helper explicitly four-panel

a73x   2026-04-09 08:22

Commit message
Make comparison panel helper explicitly four-panel

src/main.zig
Old New
@@ -481,12 +481,10 @@ fn comparisonSpecimenLines() []const []const u8 {
481 }; 481 };
482 } 482 }
483 483
484 fn comparisonPanelOrigins(panel_count: usize, panel_cols: u32, top_margin_rows: u32) [4][2]f32 { 484 fn comparisonPanelOrigins(panel_cols: u32, top_margin_rows: u32) [4][2]f32 {
485 var origins = [_][2]f32{.{ 0.0, @floatFromInt(top_margin_rows) }} ** 4; 485 var origins = [_][2]f32{.{ 0.0, @floatFromInt(top_margin_rows) }} ** 4;
486 const count = @min(panel_count, origins.len);
487
488 var idx: usize = 0; 486 var idx: usize = 0;
489 while (idx < count) : (idx += 1) { 487 while (idx < origins.len) : (idx += 1) {
490 origins[idx] = .{ 488 origins[idx] = .{
491 @floatFromInt(idx * @as(usize, panel_cols)), 489 @floatFromInt(idx * @as(usize, panel_cols)),
492 @floatFromInt(top_margin_rows), 490 @floatFromInt(top_margin_rows),
@@ -1751,7 +1749,7 @@ test "glyphTopOffset uses baseline rather than cell height" {
1751 } 1749 }
1752 1750
1753 test "comparisonPanelOrigins splits four panels left to right" { 1751 test "comparisonPanelOrigins splits four panels left to right" {
1754 const origins = comparisonPanelOrigins(4, 80, 24); 1752 const origins = comparisonPanelOrigins(80, 24);
1755 try std.testing.expectEqual(@as(f32, 0), origins[0][0]); 1753 try std.testing.expectEqual(@as(f32, 0), origins[0][0]);
1756 try std.testing.expect(origins[1][0] > origins[0][0]); 1754 try std.testing.expect(origins[1][0] > origins[0][0]);
1757 try std.testing.expect(origins[2][0] > origins[1][0]); 1755 try std.testing.expect(origins[2][0] > origins[1][0]);