KetraTerm
API · DevelopmentAll versions

Package-level declarations

Types

Link copied to clipboard
data class CellSelection(val anchorColumn: Int, val anchorRow: Int, val caretColumn: Int, val caretRow: Int, val isBlock: Boolean = false)

Half-open terminal cell selection in visible render-cache coordinates.

Link copied to clipboard

Host-provided non-render services for SwingTerminal.

Link copied to clipboard
class SwingHyperlink(val sourceRange: SwingHyperlinkTextRange, val dependencyRange: SwingHyperlinkTextRange, val action: SwingHyperlinkAction, val uri: String? = null, val presentation: SwingHyperlinkPresentation = SwingHyperlinkPresentation.DEFAULT, val activation: SwingHyperlinkActivation = SwingHyperlinkActivation.MODIFIER, val consumedThrough: SwingHyperlinkTextPosition = dependencyRange.end, val providerOrder: Int = 0)

Immutable discovered occurrence, independent of viewport/action-array positions.

Link copied to clipboard
fun interface SwingHyperlinkAction

Host-owned navigation and optional hover behavior for a discovered hyperlink.

Link copied to clipboard

Host activation policy, applied independently of visibility and link appearance.

Link copied to clipboard

Text dependency and ordering required by a detector.

Link copied to clipboard
class SwingHyperlinkDetectionRequest(lineTexts: List<String>, firstAbsoluteRows: LongArray, lastAbsoluteRows: LongArray = firstAbsoluteRows, val context: SwingHyperlinkDetectionContext = SwingHyperlinkDetectionContext.INDEPENDENT_LINE, val bindingEpoch: Long = 0, val sourceEpoch: Long = 0, val providerEpoch: Long = 0, val analysisEpoch: Long = 0, val firstRetainedRow: Long = 0, firstLineIds: LongArray = firstAbsoluteRows)

Owned immutable logical text and absolute row anchors for one discovery batch.

Link copied to clipboard

Host discovery outside terminal mutation, painting and pointer handling.

Link copied to clipboard
data class SwingHyperlinkPresentation(val normal: SwingHyperlinkStyle? = null, val hovered: SwingHyperlinkStyle? = null, val active: SwingHyperlinkStyle? = null, val followed: SwingHyperlinkStyle? = null, val isVisible: Boolean = false)

Prepared provider styles; theme/framework lookup happens before construction, never in paint.

Link copied to clipboard
data class SwingHyperlinkStyle(val foregroundArgb: Int? = null, val backgroundArgb: Int? = null, val underlineArgb: Int? = null, val underlineStyle: Int? = null, val underlineThickness: Int = 1)

Resolved, host-neutral colors and decoration. Null fields inherit terminal presentation.

Link copied to clipboard
data class SwingHyperlinkTextPosition(val absoluteRow: Long, val offset: Int) : Comparable<SwingHyperlinkTextPosition>

A UTF-16 offset in a logical line anchored at its first absolute physical row.

Link copied to clipboard

Half-open logical-text range; an end offset may include the line's trailing newline.

Link copied to clipboard

Bridges a top-origin Swing scrollbar to the shared terminal viewport.

Link copied to clipboard

Destination for scrollbar positions mapped to terminal rows.

Link copied to clipboard

Reusable Swing terminal component.

Link copied to clipboard

Hyperlink context available to a terminal context menu.

Link copied to clipboard

Host-owned terminal context-menu hook.

Link copied to clipboard

Context-menu request delivered to a Swing terminal host.

Link copied to clipboard

Host-owned keyboard action hook for SwingTerminal.

Link copied to clipboard
fun interface SwingTerminalMessages

Host message lookup for reusable Swing presentation.

Link copied to clipboard

Host-owned handling of an enabled local middle-button paste gesture.

Link copied to clipboard

One-use paste authority captured for a local middle-button press.

Link copied to clipboard

Custom host font resolver policy.

Link copied to clipboard

Observes committed selection changes synchronously on the Swing EDT.

Link copied to clipboard

Immutable selection range in one component binding and terminal layout.

Link copied to clipboard
fun interface TerminalUiDispatcher

Host scheduler used by the reusable Swing terminal for UI-thread work.

Link copied to clipboard

Allocation-free callback for host scrollbar adapters.

Link copied to clipboard
data class TerminalViewportState(val historySize: Int, val scrollbackOffset: Double, val renderOffset: Int, val visibleRows: Int, val requestedRows: Int, val visualScrollOffsetPixels: Double = scrollbackOffset, val visualScrollRangePixels: Int = historySize, val viewportHeightPixels: Int = visibleRows, val contentHeightPixels: Int = requestedRows, val cellHeightPixels: Int = 1)

Host-facing snapshot of the terminal viewport's scrollback position.