7#ifndef GHOSTTY_VT_TERMINAL_H
8#define GHOSTTY_VT_TERMINAL_H
192 GHOSTTY_SCROLL_VIEWPORT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
231 GHOSTTY_TERMINAL_SCREEN_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
595 GHOSTTY_TERMINAL_OPT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
871 GHOSTTY_TERMINAL_DATA_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
937 uint32_t cell_width_px,
938 uint32_t cell_height_px);
1091 size_t* out_written);
GHOSTTY_API GhosttyResult ghostty_terminal_set(GhosttyTerminal terminal, GhosttyTerminalOption option, const void *value)
GHOSTTY_API GhosttyResult ghostty_terminal_point_from_grid_ref(GhosttyTerminal terminal, const GhosttyGridRef *ref, GhosttyPointTag tag, GhosttyPointCoordinate *out)
GHOSTTY_API GhosttyResult ghostty_terminal_get(GhosttyTerminal terminal, GhosttyTerminalData data, void *out)
GHOSTTY_API void ghostty_terminal_reset(GhosttyTerminal terminal)
bool(* GhosttyTerminalColorSchemeFn)(GhosttyTerminal terminal, void *userdata, GhosttyColorScheme *out_scheme)
GHOSTTY_API void ghostty_terminal_scroll_viewport(GhosttyTerminal terminal, GhosttyTerminalScrollViewport behavior)
GHOSTTY_API GhosttyResult ghostty_terminal_get_multi(GhosttyTerminal terminal, size_t count, const GhosttyTerminalData *keys, void **values, size_t *out_written)
bool(* GhosttyTerminalSizeFn)(GhosttyTerminal terminal, void *userdata, GhosttySizeReportSize *out_size)
void(* GhosttyTerminalWritePtyFn)(GhosttyTerminal terminal, void *userdata, const uint8_t *data, size_t len)
struct GhosttyTerminalImpl * GhosttyTerminal
GHOSTTY_API GhosttyResult ghostty_terminal_new(const GhosttyAllocator *allocator, GhosttyTerminal *terminal, GhosttyTerminalOptions options)
GhosttyTerminalScrollViewportTag
GHOSTTY_API void ghostty_terminal_free(GhosttyTerminal terminal)
GHOSTTY_API GhosttyResult ghostty_terminal_mode_set(GhosttyTerminal terminal, GhosttyMode mode, bool value)
void(* GhosttyTerminalBellFn)(GhosttyTerminal terminal, void *userdata)
void(* GhosttyTerminalTitleChangedFn)(GhosttyTerminal terminal, void *userdata)
bool(* GhosttyTerminalDeviceAttributesFn)(GhosttyTerminal terminal, void *userdata, GhosttyDeviceAttributes *out_attrs)
GHOSTTY_API void ghostty_terminal_vt_write(GhosttyTerminal terminal, const uint8_t *data, size_t len)
GHOSTTY_API GhosttyResult ghostty_terminal_grid_ref(GhosttyTerminal terminal, GhosttyPoint point, GhosttyGridRef *out_ref)
GHOSTTY_API GhosttyResult ghostty_terminal_resize(GhosttyTerminal terminal, uint16_t cols, uint16_t rows, uint32_t cell_width_px, uint32_t cell_height_px)
GhosttyString(* GhosttyTerminalXtversionFn)(GhosttyTerminal terminal, void *userdata)
GHOSTTY_API GhosttyResult ghostty_terminal_mode_get(GhosttyTerminal terminal, GhosttyMode mode, bool *out_value)
GhosttyString(* GhosttyTerminalEnquiryFn)(GhosttyTerminal terminal, void *userdata)
@ GHOSTTY_SCROLL_VIEWPORT_BOTTOM
@ GHOSTTY_SCROLL_VIEWPORT_DELTA
@ GHOSTTY_SCROLL_VIEWPORT_TOP
@ GHOSTTY_TERMINAL_SCREEN_ALTERNATE
@ GHOSTTY_TERMINAL_SCREEN_PRIMARY
@ GHOSTTY_TERMINAL_DATA_COLOR_BACKGROUND_DEFAULT
@ GHOSTTY_TERMINAL_DATA_WIDTH_PX
@ GHOSTTY_TERMINAL_DATA_COLOR_BACKGROUND
@ GHOSTTY_TERMINAL_DATA_COLOR_PALETTE_DEFAULT
@ GHOSTTY_TERMINAL_DATA_COLS
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_FILE
@ GHOSTTY_TERMINAL_DATA_TITLE
@ GHOSTTY_TERMINAL_DATA_CURSOR_VISIBLE
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_TEMP_FILE
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_STORAGE_LIMIT
@ GHOSTTY_TERMINAL_DATA_ROWS
@ GHOSTTY_TERMINAL_DATA_SCROLLBACK_ROWS
@ GHOSTTY_TERMINAL_DATA_TOTAL_ROWS
@ GHOSTTY_TERMINAL_DATA_CURSOR_PENDING_WRAP
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_SHARED_MEM
@ GHOSTTY_TERMINAL_DATA_INVALID
@ GHOSTTY_TERMINAL_DATA_COLOR_FOREGROUND_DEFAULT
@ GHOSTTY_TERMINAL_DATA_KITTY_KEYBOARD_FLAGS
@ GHOSTTY_TERMINAL_DATA_COLOR_CURSOR_DEFAULT
@ GHOSTTY_TERMINAL_DATA_COLOR_FOREGROUND
@ GHOSTTY_TERMINAL_DATA_SCROLLBAR
@ GHOSTTY_TERMINAL_DATA_CURSOR_Y
@ GHOSTTY_TERMINAL_DATA_ACTIVE_SCREEN
@ GHOSTTY_TERMINAL_DATA_CURSOR_X
@ GHOSTTY_TERMINAL_DATA_MOUSE_TRACKING
@ GHOSTTY_TERMINAL_DATA_PWD
@ GHOSTTY_TERMINAL_DATA_COLOR_PALETTE
@ GHOSTTY_TERMINAL_DATA_KITTY_GRAPHICS
@ GHOSTTY_TERMINAL_DATA_CURSOR_STYLE
@ GHOSTTY_TERMINAL_DATA_HEIGHT_PX
@ GHOSTTY_TERMINAL_DATA_COLOR_CURSOR
@ GHOSTTY_TERMINAL_OPT_ENQUIRY
@ GHOSTTY_TERMINAL_OPT_TITLE_CHANGED
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_STORAGE_LIMIT
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_SHARED_MEM
@ GHOSTTY_TERMINAL_OPT_APC_MAX_BYTES_KITTY
@ GHOSTTY_TERMINAL_OPT_COLOR_CURSOR
@ GHOSTTY_TERMINAL_OPT_COLOR_FOREGROUND
@ GHOSTTY_TERMINAL_OPT_SIZE
@ GHOSTTY_TERMINAL_OPT_USERDATA
@ GHOSTTY_TERMINAL_OPT_COLOR_PALETTE
@ GHOSTTY_TERMINAL_OPT_COLOR_SCHEME
@ GHOSTTY_TERMINAL_OPT_XTVERSION
@ GHOSTTY_TERMINAL_OPT_DEVICE_ATTRIBUTES
@ GHOSTTY_TERMINAL_OPT_PWD
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_TEMP_FILE
@ GHOSTTY_TERMINAL_OPT_WRITE_PTY
@ GHOSTTY_TERMINAL_OPT_BELL
@ GHOSTTY_TERMINAL_OPT_COLOR_BACKGROUND
@ GHOSTTY_TERMINAL_OPT_TITLE
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_FILE
@ GHOSTTY_TERMINAL_OPT_APC_MAX_BYTES
#define GHOSTTY_ENUM_TYPED