API Reference ExTermbox v1.1.4
View SourceModules
Elixir bindings for the termbox library, providing a way to control the terminal and draw simple UIs.
Handles buffering of incoming data chunks from the Unix Domain Socket. Extracts complete lines terminated by newline characters.
Represents a termbox cell, a character at a position, along with the cell's background and foreground colors.
Defines constants from the termbox library. These can be used e.g. to set a formatting attributes or to identify keys passed in an event.
Represents a termbox event. This can be a key press, click, or window resize.
This module implements an event manager that notifies subscribers of keyboard, mouse and resize events received from the termbox API.
Handles the initialization sequence within the PortHandler GenServer. This module encapsulates the logic for parsing port output, managing timeouts, and establishing the UDS connection.
Handles the initial setup and supervision of Termbox resources.
GenServer responsible for managing the Erlang Port connected to the C helper process and the Unix Domain Socket (UDS) communication.
Handles handle_call/3
callbacks and logic for ExTermbox.PortHandler
.
Handles the initialization logic (init/1
callback and related messages) for ExTermbox.PortHandler
.
Handles Port exit ({:EXIT, port, reason}
) messages for ExTermbox.PortHandler
.
Handles Unix Domain Socket interactions (:tcp_*
messages) for ExTermbox.PortHandler
.
Defines the state structure for the ExTermbox.PortHandler GenServer.
Handles the terminate/2
callback for ExTermbox.PortHandler
.
Represents a position on the screen by encoding a pair of cartesian
coordinates. The origin is the top-left-most character on the screen
(0, 0)
, while x and y increase from left to right and top to bottom,
respectively.
Manages the lifecycle of the C helper process and the PortHandler GenServer.
Defines the protocol for communication between Elixir and the C Termbox helper. Includes parsing/formatting functions.