ttx 0.1.0
Loading...
Searching...
No Matches
ttx::terminal::Cell Struct Reference

Represents a on-screen terminal cell. More...

#include <ttx/terminal/cell.h>

Public Member Functions

auto is_multi_cell () const
 
auto is_primary_in_multi_cell () const
 
auto is_nonprimary_in_multi_cell () const
 
auto is_empty () const
 

Public Attributes

u16 graphics_rendition_id { 0 }
 0 means default
 
u16 hyperlink_id { 0 }
 0 means none
 
u16 multi_cell_id { 0 }
 0 means none (single cell)
 
u16 text_size: 12 { 0 }
 The size in bytes of the text in this cell (0 means no text)
 
u16 left_boundary_of_multicell: 1 { 0 }
 1 indicates this cell is in the furthest left column of a multicell.
 
u16 explicitly_sized: 1 { 0 }
 1 indicates must be rendered using explicit sizing
 
u16 complex_grapheme_cluster: 1 { 0 }
 1 indicates this cell consists of multiple non-zero width code points
 
u16 stale: 1 { false }
 1 indicates the cell has ben rendered
 

Static Public Attributes

static constexpr auto max_text_size = (di::NumericLimits<u16>::max >> 4)
 

Detailed Description

Represents a on-screen terminal cell.

Member Function Documentation

◆ is_empty()

auto ttx::terminal::Cell::is_empty ( ) const
inline

◆ is_multi_cell()

auto ttx::terminal::Cell::is_multi_cell ( ) const
inline

◆ is_nonprimary_in_multi_cell()

auto ttx::terminal::Cell::is_nonprimary_in_multi_cell ( ) const
inline

◆ is_primary_in_multi_cell()

auto ttx::terminal::Cell::is_primary_in_multi_cell ( ) const
inline

Member Data Documentation

◆ complex_grapheme_cluster

u16 ttx::terminal::Cell::complex_grapheme_cluster

1 indicates this cell consists of multiple non-zero width code points

◆ explicitly_sized

u16 ttx::terminal::Cell::explicitly_sized

1 indicates must be rendered using explicit sizing

◆ graphics_rendition_id

u16 ttx::terminal::Cell::graphics_rendition_id { 0 }

0 means default

◆ hyperlink_id

u16 ttx::terminal::Cell::hyperlink_id { 0 }

0 means none

◆ left_boundary_of_multicell

u16 ttx::terminal::Cell::left_boundary_of_multicell

1 indicates this cell is in the furthest left column of a multicell.

◆ max_text_size

auto ttx::terminal::Cell::max_text_size = (di::NumericLimits<u16>::max >> 4)
staticconstexpr

◆ multi_cell_id

u16 ttx::terminal::Cell::multi_cell_id { 0 }

0 means none (single cell)

◆ stale

u16 ttx::terminal::Cell::stale
mutable

1 indicates the cell has ben rendered

◆ text_size

u16 ttx::terminal::Cell::text_size

The size in bytes of the text in this cell (0 means no text)


The documentation for this struct was generated from the following file: