aboutsummaryrefslogtreecommitdiff
path: root/vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-04-04 19:22:04 +0300
committerCan Celik <ogulcancelik@gmail.com>2026-04-05 01:23:06 +0300
commit41dd733ca7123c9ac4bfc6c781697a660e95b052 (patch)
tree3fc91815ca139ef2e0b281bba0abda4ef15175f4 /vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig
parent55c138263e190a1e79d4b997bfb9397306c0ec1f (diff)
feat: finish ghostty pane backend integration
Diffstat (limited to 'vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig')
-rw-r--r--vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig49
1 files changed, 49 insertions, 0 deletions
diff --git a/vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig b/vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig
new file mode 100644
index 00000000..f1d7fe95
--- /dev/null
+++ b/vendor/libghostty-vt/pkg/macos/text/paragraph_style.zig
@@ -0,0 +1,49 @@
+const std = @import("std");
+const assert = std.debug.assert;
+const Allocator = std.mem.Allocator;
+const foundation = @import("../foundation.zig");
+const graphics = @import("../graphics.zig");
+const text = @import("../text.zig");
+const c = @import("c.zig").c;
+
+// https://developer.apple.com/documentation/coretext/ctparagraphstyle?language=objc
+pub const ParagraphStyle = opaque {
+ pub fn create(
+ settings: []const ParagraphStyleSetting,
+ ) Allocator.Error!*ParagraphStyle {
+ return @ptrCast(@constCast(c.CTParagraphStyleCreate(
+ @ptrCast(settings.ptr),
+ settings.len,
+ )));
+ }
+
+ pub fn release(self: *ParagraphStyle) void {
+ foundation.CFRelease(self);
+ }
+};
+
+/// https://developer.apple.com/documentation/coretext/ctparagraphstylesetting?language=objc
+pub const ParagraphStyleSetting = extern struct {
+ spec: ParagraphStyleSpecifier,
+ value_size: usize,
+ value: *const anyopaque,
+};
+
+/// https://developer.apple.com/documentation/coretext/ctparagraphstylespecifier?language=objc
+pub const ParagraphStyleSpecifier = enum(c_uint) {
+ base_writing_direction = 13,
+};
+
+/// https://developer.apple.com/documentation/uikit/nswritingdirectionattributename?language=objc
+pub const WritingDirection = enum(c_int) {
+ natural = -1,
+ ltr = 0,
+ rtl = 1,
+ lro = 2,
+ rlo = 3,
+};
+
+test ParagraphStyle {
+ const p = try ParagraphStyle.create(&.{});
+ defer p.release();
+}