File diff r27220:3b810953455c → r27221:3735cc2cef6b
src/gfx_layout.h
Show inline comments
 
@@ -21,13 +21,6 @@
 
#include <type_traits>
 
#include <vector>
 

	
 
#ifdef WITH_ICU_LX
 
#include "layout/ParagraphLayout.h"
 
#define ICU_FONTINSTANCE : public icu::LEFontInstance
 
#else /* WITH_ICU_LX */
 
#define ICU_FONTINSTANCE
 
#endif /* WITH_ICU_LX */
 

	
 
/**
 
 * Text drawing parameters, which can change while drawing a line, but are kept between multiple parts
 
 * of the same text, e.g. on line breaks.
 
@@ -83,30 +76,12 @@ struct FontState {
 
/**
 
 * Container with information about a font.
 
 */
 
class Font ICU_FONTINSTANCE {
 
class Font {
 
public:
 
	FontCache *fc;     ///< The font we are using.
 
	TextColour colour; ///< The colour this font has to be.
 

	
 
	Font(FontSize size, TextColour colour);
 

	
 
#ifdef WITH_ICU_LX
 
	/* Implementation details of LEFontInstance */
 

	
 
	le_int32 getUnitsPerEM() const;
 
	le_int32 getAscent() const;
 
	le_int32 getDescent() const;
 
	le_int32 getLeading() const;
 
	float getXPixelsPerEm() const;
 
	float getYPixelsPerEm() const;
 
	float getScaleFactorX() const;
 
	float getScaleFactorY() const;
 
	const void *getFontTable(LETag tableTag) const;
 
	const void *getFontTable(LETag tableTag, size_t &length) const;
 
	LEGlyphID mapCharToGlyph(LEUnicode32 ch) const;
 
	void getGlyphAdvance(LEGlyphID glyph, LEPoint &advance) const;
 
	le_bool getGlyphPoint(LEGlyphID glyph, le_int32 pointNumber, LEPoint &point) const;
 
#endif /* WITH_ICU_LX */
 
};
 

	
 
/** Mapping from index to font. */
 
@@ -183,7 +158,7 @@ public:
 
	/** Item in the linecache */
 
	struct LineCacheItem {
 
		/* Stuff that cannot be freed until the ParagraphLayout is freed */
 
		void *buffer;              ///< Accessed by both ICU's and our ParagraphLayout::nextLine.
 
		void *buffer;              ///< Accessed by our ParagraphLayout::nextLine.
 
		FontMap runs;              ///< Accessed by our ParagraphLayout::nextLine.
 

	
 
		FontState state_after;     ///< Font state after the line.