mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-19 10:16:12 +03:00
29 lines
973 B
Zig
29 lines
973 B
Zig
const std = @import("std");
|
|
const assert = std.debug.assert;
|
|
const testing = std.testing;
|
|
const terminal = @import("../main.zig");
|
|
|
|
/// A render placement is a way to position a Kitty graphics image onto
|
|
/// the screen. It is broken down into the fields that make it easier to
|
|
/// position the image using a renderer.
|
|
pub const Placement = struct {
|
|
/// The top-left corner of the image in grid coordinates.
|
|
top_left: terminal.Pin,
|
|
|
|
/// The offset in pixels from the top-left corner of the grid cell.
|
|
offset_x: u32 = 0,
|
|
offset_y: u32 = 0,
|
|
|
|
/// The source rectangle of the image to render. This doesn't have to
|
|
/// match the size the destination size and the renderer is expected
|
|
/// to scale the image to fit the destination size.
|
|
source_x: u32 = 0,
|
|
source_y: u32 = 0,
|
|
source_width: u32 = 0,
|
|
source_height: u32 = 0,
|
|
|
|
/// The final width/height of the image in pixels.
|
|
dest_width: u32 = 0,
|
|
dest_height: u32 = 0,
|
|
};
|