2 *******************************************************************************
4 * Copyright (C) 1999-2007, International Business Machines
5 * Corporation and others. All Rights Reserved.
7 *******************************************************************************
8 * file name: Paragraph.h
10 * created on: 09/06/2000
11 * created by: Eric R. Mader
16 #include "unicode/utypes.h"
17 #include "unicode/ubidi.h"
19 #include "layout/LEFontInstance.h"
20 #include "layout/ParagraphLayout.h"
22 #include "GUISupport.h"
23 #include "RenderingSurface.h"
36 Paragraph(const LEUnicode chars
[], le_int32 charCount
, const FontRuns
*fontRuns
, LEErrorCode
&status
);
41 le_int32
getLineHeight();
42 le_int32
getLineCount();
43 void breakLines(le_int32 width
, le_int32 height
);
44 void draw(RenderingSurface
*surface
, le_int32 firstLine
, le_int32 lastLine
);
46 static Paragraph
*paragraphFactory(const char *fileName
, const LEFontInstance
*font
, GUISupport
*guiSupport
);
49 void addLine(const ParagraphLayout::Line
*line
);
51 ParagraphLayout
**fParagraphLayout
;
53 le_int32 fParagraphCount
;
54 le_int32 fParagraphMax
;
55 le_int32 fParagraphGrow
;
61 const ParagraphLayout::Line
**fLines
;
68 UBiDiLevel fParagraphLevel
;
71 inline le_int32
Paragraph::getLineHeight()
76 inline le_int32
Paragraph::getLineCount()
81 inline le_int32
Paragraph::getAscent()