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

Shared information for cells linked via text sizing protocol (OSC 66) or double width characters. More...

#include <ttx/terminal/multi_cell_info.h>

Public Member Functions

constexpr auto compute_width () const -> u8
 
auto operator== (MultiCellInfo const &) const -> bool=default
 
auto operator<=> (MultiCellInfo const &) const =default
 

Public Attributes

u8 scale { 1 }
 Vertiacl scale for the cell. This is applied multiplicatively to the width.
 
u8 width { 0 }
 Width in cells. When specified as 0 via OSC 66, the width is inferred.
 
u8 fractional_scale_numerator { 0 }
 Fractional scale numerator.
 
u8 fractional_scale_denominator { 0 }
 Fractional scale denominator.
 
u8 vertical_alignment { 0 }
 Vertical fractional scale alignment.
 
u8 horizontal_alignment { 0 }
 Horizontal fractional scale alignment.
 

Friends

constexpr friend auto tag_invoke (di::Tag< di::reflect >, di::InPlaceType< MultiCellInfo >)
 

Detailed Description

Shared information for cells linked via text sizing protocol (OSC 66) or double width characters.

Member Function Documentation

◆ compute_width()

auto ttx::terminal::MultiCellInfo::compute_width ( ) const -> u8
inlineconstexpr

◆ operator<=>()

auto ttx::terminal::MultiCellInfo::operator<=> ( MultiCellInfo const & ) const
default

◆ operator==()

auto ttx::terminal::MultiCellInfo::operator== ( MultiCellInfo const & ) const -> bool=default
default

Friends And Related Symbol Documentation

◆ tag_invoke

friend auto tag_invoke ( di::Tag< di::reflect > ,
di::InPlaceType< MultiCellInfo >  )
friend

Member Data Documentation

◆ fractional_scale_denominator

u8 ttx::terminal::MultiCellInfo::fractional_scale_denominator { 0 }

Fractional scale denominator.

◆ fractional_scale_numerator

u8 ttx::terminal::MultiCellInfo::fractional_scale_numerator { 0 }

Fractional scale numerator.

◆ horizontal_alignment

u8 ttx::terminal::MultiCellInfo::horizontal_alignment { 0 }

Horizontal fractional scale alignment.

◆ scale

u8 ttx::terminal::MultiCellInfo::scale { 1 }

Vertiacl scale for the cell. This is applied multiplicatively to the width.

◆ vertical_alignment

u8 ttx::terminal::MultiCellInfo::vertical_alignment { 0 }

Vertical fractional scale alignment.

◆ width

u8 ttx::terminal::MultiCellInfo::width { 0 }

Width in cells. When specified as 0 via OSC 66, the width is inferred.


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