Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

ParagraphLayout::Line Class Reference

This class represents a single line of text in a ParagraphLayout. More...

#include <ParagraphLayout.h>

Inheritance diagram for ParagraphLayout::Line::

UObject UMemory List of all members.

Public Methods

 ~Line ()
 The constructor is private since these objects can only be created by ParagraphLayout. More...

le_int32 countRuns () const
 Count the number of visual runs in the line. More...

le_int32 getAscent () const
 Get the ascent of the line. More...

le_int32 getDescent () const
 Get the descent of the line. More...

le_int32 getLeading () const
 Get the leading of the line. More...

le_int32 getWidth () const
 Get the width of the line. More...

const VisualRungetVisualRun (le_int32 runIndex) const
 Get a ParagraphLayout::VisualRun object for a given visual run in the line. More...

virtual UClassID getDynamicClassID () const
 ICU "poor man's RTTI", returns a UClassID for the actual class. More...


Static Public Methods

UClassID getStaticClassID ()
 ICU "poor man's RTTI", returns a UClassID for this class. More...


Private Methods

 Line ()
 Line (const Line &other)
Line & operator= (const Line &)
void computeMetrics ()
void append (const LEFontInstance *font, UBiDiDirection direction, le_int32 glyphCount, const LEGlyphID glyphs[], const float positions[], const le_int32 glyphToCharMap[])

Private Attributes

le_int32 fAscent
le_int32 fDescent
le_int32 fLeading
le_int32 fRunCount
le_int32 fRunCapacity
VisualRun ** fRuns

Static Private Attributes

const char fgClassID
 The address of this static class variable serves as this class's ID for ICU "poor man's RTTI". More...


Friends

class ParagraphLayout

Detailed Description

This class represents a single line of text in a ParagraphLayout.

They can only be created by calling ParagraphLayout::nextLine(). Each line consists of multiple visual runs, represented by ParagraphLayout::VisualRun objects.

See also:
ParagraphLayout , ParagraphLayout::VisualRun
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 55 of file ParagraphLayout.h.


Constructor & Destructor Documentation

ParagraphLayout::Line::~Line  
 

The constructor is private since these objects can only be created by ParagraphLayout.

However, it is the clients responsibility to destroy the objects, so the destructor is public.

Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

ParagraphLayout::Line::Line   [inline, private]
 

Definition at line 638 of file ParagraphLayout.h.

ParagraphLayout::Line::Line const Line &    other [inline, private]
 

Definition at line 644 of file ParagraphLayout.h.


Member Function Documentation

void ParagraphLayout::Line::append const LEFontInstance   font,
UBiDiDirection    direction,
le_int32    glyphCount,
const LEGlyphID    glyphs[],
const float    positions[],
const le_int32    glyphToCharMap[]
[private]
 

void ParagraphLayout::Line::computeMetrics   [private]
 

le_int32 ParagraphLayout::Line::countRuns   const [inline]
 

Count the number of visual runs in the line.

Returns:
the number of visual runs.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 650 of file ParagraphLayout.h.

le_int32 ParagraphLayout::Line::getAscent   const
 

Get the ascent of the line.

This is the maximum ascent of all the fonts on the line.

Returns:
the ascent of the line.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

le_int32 ParagraphLayout::Line::getDescent   const
 

Get the descent of the line.

This is the maximum descent of all the fonts on the line.

Returns:
the descent of the line.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

virtual UClassID ParagraphLayout::Line::getDynamicClassID void    const [inline, virtual]
 

ICU "poor man's RTTI", returns a UClassID for the actual class.

Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Reimplemented from UObject.

Definition at line 140 of file ParagraphLayout.h.

le_int32 ParagraphLayout::Line::getLeading   const
 

Get the leading of the line.

This is the maximum leading of all the fonts on the line.

Returns:
the leading of the line.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

UClassID ParagraphLayout::Line::getStaticClassID void    [inline, static]
 

ICU "poor man's RTTI", returns a UClassID for this class.

Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 147 of file ParagraphLayout.h.

const VisualRun* ParagraphLayout::Line::getVisualRun le_int32    runIndex const
 

Get a ParagraphLayout::VisualRun object for a given visual run in the line.

Parameters:
runIndex  is the index of the run, in visual order.
Returns:
the ParagraphLayout::VisualRun object representing the visual run. This object is owned by the Line object which created it, and will remain valid for as long as the Line object is valid.
See also:
ParagraphLayout::VisualRun
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

le_int32 ParagraphLayout::Line::getWidth   const
 

Get the width of the line.

This is a convenience method which returns the last X position of the last visual run in the line.

Returns:
the width of the line.
Draft:
This API has been introduced in ICU 2.8. It is still in draft state and may be modified in a future release.

Line& ParagraphLayout::Line::operator= const Line &    [inline, private]
 

Definition at line 170 of file ParagraphLayout.h.


Friends And Related Function Documentation

friend class ParagraphLayout [friend]
 

Definition at line 157 of file ParagraphLayout.h.


Member Data Documentation

le_int32 ParagraphLayout::Line::fAscent [private]
 

Definition at line 159 of file ParagraphLayout.h.

le_int32 ParagraphLayout::Line::fDescent [private]
 

Definition at line 160 of file ParagraphLayout.h.

le_int32 ParagraphLayout::Line::fLeading [private]
 

Definition at line 161 of file ParagraphLayout.h.

le_int32 ParagraphLayout::Line::fRunCapacity [private]
 

Definition at line 164 of file ParagraphLayout.h.

le_int32 ParagraphLayout::Line::fRunCount [private]
 

Definition at line 163 of file ParagraphLayout.h.

VisualRun** ParagraphLayout::Line::fRuns [private]
 

Definition at line 166 of file ParagraphLayout.h.

const char ParagraphLayout::Line::fgClassID [static, private]
 

The address of this static class variable serves as this class's ID for ICU "poor man's RTTI".

Definition at line 155 of file ParagraphLayout.h.


The documentation for this class was generated from the following file:
Generated on Mon Nov 24 14:36:43 2003 for ICU 2.8 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001