| 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. | |
| static FallbackParagraphLayout * | GetParagraphLayout (WChar *buff, WChar *buff_end, FontMap &fontMapping) | 
| Get the actual ParagraphLayout for the given buffer. | |
| template<typename T > | |
| static void | GetLayouter (Layouter::LineCacheItem &line, const char *&str, FontState &state) | 
| Helper for getting a ParagraphLayouter of the given type. | |
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.
Referenced by GetLayouter().
| 
 | 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 AppendToBuffer(), Layouter::LineCacheItem::buffer, SmallMap< T, U, S >::Contains(), FontState::cur_colour, DRAW_STRING_BUFFER, FontState::fontsize, free(), FS_LARGE, FS_SMALL, Layouter::GetFont(), GetParagraphLayout(), SmallMap< T, U, S >::Insert(), IsTextDirectionChar(), Layouter::LineCacheItem::layout, Layouter::LineCacheItem::runs, SCC_BIGFONT, SCC_TINYFONT, FontState::SetColour(), FontState::SetFontSize(), FontState::SetPreviousColour(), and Layouter::LineCacheItem::state_after.
| 
 | 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.
Referenced by GetLayouter().
 1.8.1.2
 1.8.1.2