OpenTTD
|
Handling of laying out text. More...
#include "stdafx.h"
#include "gfx_layout.h"
#include "string_func.h"
#include "strings_func.h"
#include "debug.h"
#include "table/control_codes.h"
#include <unicode/ustring.h>
#include "safeguards.h"
Go to the source code of this file.
Data Structures | |
class | ICUParagraphLayout |
Wrapper for doing layouts with ICU. More... | |
class | ICUParagraphLayout::ICUVisualRun |
Visual run contains data about the bit of text with the same font. More... | |
class | ICUParagraphLayout::ICULine |
A single line worth of VisualRuns. More... | |
class | FallbackParagraphLayout |
Class handling the splitting of a paragraph of text into lines and visual runs. More... | |
class | FallbackParagraphLayout::FallbackVisualRun |
Visual run contains data about the bit of text with the same font. More... | |
class | FallbackParagraphLayout::FallbackLine |
A single line worth of VisualRuns. More... | |
Functions | |
static size_t | AppendToBuffer (UChar *buff, const UChar *buffer_last, WChar c) |
static ParagraphLayouter * | GetParagraphLayout (UChar *buff, UChar *buff_end, FontMap &fontMapping) |
static size_t | AppendToBuffer (WChar *buff, const WChar *buffer_last, WChar c) |
Appand a wide character to the internal buffer. More... | |
static FallbackParagraphLayout * | GetParagraphLayout (WChar *buff, WChar *buff_end, FontMap &fontMapping) |
Get the actual ParagraphLayout for the given buffer. More... | |
template<typename T > | |
static void | GetLayouter (Layouter::LineCacheItem &line, const char *&str, FontState &state) |
Helper for getting a ParagraphLayouter of the given type. More... | |
Handling of laying out text.
Definition in file gfx_layout.cpp.
Appand a wide character to the internal buffer.
buff | The buffer to append to. |
buffer_last | The end of the buffer. |
c | The character to add. |
Definition at line 546 of file gfx_layout.cpp.
|
inlinestatic |
Helper for getting a ParagraphLayouter of the given type.
line | The cache item to store our layouter in. |
str | The string to create a layouter for. |
state | The state of the font and color. |
T | The type of layouter we want. |
Definition at line 574 of file gfx_layout.cpp.
References Layouter::LineCacheItem::buffer, FontState::cur_colour, DRAW_STRING_BUFFER, FontState::fontsize, free(), Layouter::GetFont(), and Layouter::LineCacheItem::runs.
|
static |
Get the actual ParagraphLayout for the given buffer.
buff | The begin of the buffer. |
buff_end | The location after the last element in the buffer. |
fontMapping | THe mapping of the fonts. |
Definition at line 559 of file gfx_layout.cpp.
References FallbackParagraphLayout::FallbackParagraphLayout().