OpenTTD Source 20241224-master-gee860a5c8e
UniscribeParagraphLayout Class Reference

Wrapper for doing layouts with Uniscribe. More...

Inheritance diagram for UniscribeParagraphLayout:
ParagraphLayouter

Data Structures

class  UniscribeLine
 A single line worth of VisualRuns. More...
 
class  UniscribeVisualRun
 Visual run contains data about the bit of text with the same font. More...
 

Public Member Functions

 UniscribeParagraphLayout (std::vector< UniscribeRun > &&ranges, const UniscribeParagraphLayoutFactory::CharType *buffer)
 
void Reflow () override
 
std::unique_ptr< const LineNextLine (int max_width) override
 

Private Attributes

const UniscribeParagraphLayoutFactory::CharTypetext_buffer
 
std::vector< UniscribeRunranges
 All runs of the text.
 
std::vector< UniscribeRun >::iterator cur_range
 The next run to be output.
 
int cur_range_offset = 0
 Offset from the start of the current run from where to output.
 

Detailed Description

Wrapper for doing layouts with Uniscribe.

Definition at line 64 of file string_uniscribe.cpp.

Constructor & Destructor Documentation

◆ UniscribeParagraphLayout()

UniscribeParagraphLayout::UniscribeParagraphLayout ( std::vector< UniscribeRun > &&  ranges,
const UniscribeParagraphLayoutFactory::CharType buffer 
)
inline

Definition at line 116 of file string_uniscribe.cpp.

◆ ~UniscribeParagraphLayout()

UniscribeParagraphLayout::~UniscribeParagraphLayout ( )
inlineoverride

Definition at line 121 of file string_uniscribe.cpp.

Member Function Documentation

◆ NextLine()

std::unique_ptr< const ParagraphLayouter::Line > UniscribeParagraphLayout::NextLine ( int  max_width)
overridevirtual

Implements ParagraphLayouter.

Definition at line 321 of file string_uniscribe.cpp.

◆ Reflow()

void UniscribeParagraphLayout::Reflow ( )
inlineoverridevirtual

Implements ParagraphLayouter.

Definition at line 123 of file string_uniscribe.cpp.

Field Documentation

◆ cur_range

std::vector<UniscribeRun>::iterator UniscribeParagraphLayout::cur_range
private

The next run to be output.

Definition at line 69 of file string_uniscribe.cpp.

◆ cur_range_offset

int UniscribeParagraphLayout::cur_range_offset = 0
private

Offset from the start of the current run from where to output.

Definition at line 70 of file string_uniscribe.cpp.

◆ ranges

std::vector<UniscribeRun> UniscribeParagraphLayout::ranges
private

All runs of the text.

Definition at line 68 of file string_uniscribe.cpp.

◆ text_buffer

const UniscribeParagraphLayoutFactory::CharType* UniscribeParagraphLayout::text_buffer
private

Definition at line 66 of file string_uniscribe.cpp.


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