2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
4 #ifndef __java_awt_font_TextLayout__
5 #define __java_awt_font_TextLayout__
9 #include <java/lang/Object.h>
10 #include <gcj/array.h>
23 class FontRenderContext;
27 class TextLayout$CaretPolicy;
32 class AffineTransform;
38 class AttributedCharacterIterator;
44 class java::awt::font::TextLayout : public ::java::lang::Object
48 TextLayout(::java::lang::String *, ::java::awt::Font *, ::java::awt::font::FontRenderContext *);
49 TextLayout(::java::lang::String *, ::java::util::Map *, ::java::awt::font::FontRenderContext *);
50 TextLayout(::java::text::AttributedCharacterIterator *, ::java::awt::font::FontRenderContext *);
51 public: // actually package-private
52 TextLayout(::java::awt::font::TextLayout *, jint, jint);
54 void setCharIndices();
56 static ::java::lang::String * getText(::java::text::AttributedCharacterIterator *);
57 static ::java::awt::Font * getFont(::java::text::AttributedCharacterIterator *);
58 void getStringProperties();
59 void determineWhiteSpace();
60 public: // actually protected
61 ::java::lang::Object * clone();
63 void draw(::java::awt::Graphics2D *, jfloat, jfloat);
64 jboolean equals(::java::lang::Object *);
65 jboolean equals(::java::awt::font::TextLayout *);
69 JArray< jfloat > * getBaselineOffsets();
70 ::java::awt::Shape * getBlackBoxBounds(jint, jint);
71 ::java::awt::geom::Rectangle2D * getBounds();
72 JArray< jfloat > * getCaretInfo(::java::awt::font::TextHitInfo *);
73 JArray< jfloat > * getCaretInfo(::java::awt::font::TextHitInfo *, ::java::awt::geom::Rectangle2D *);
74 ::java::awt::Shape * getCaretShape(::java::awt::font::TextHitInfo *);
75 ::java::awt::Shape * getCaretShape(::java::awt::font::TextHitInfo *, ::java::awt::geom::Rectangle2D *);
76 JArray< ::java::awt::Shape * > * getCaretShapes(jint);
77 JArray< ::java::awt::Shape * > * getCaretShapes(jint, ::java::awt::geom::Rectangle2D *);
78 JArray< ::java::awt::Shape * > * getCaretShapes(jint, ::java::awt::geom::Rectangle2D *, ::java::awt::font::TextLayout$CaretPolicy *);
79 jint getCharacterCount();
80 jbyte getCharacterLevel(jint);
82 ::java::awt::font::TextLayout * getJustifiedLayout(jfloat);
84 ::java::awt::Shape * getLogicalHighlightShape(jint, jint);
85 ::java::awt::Shape * getLogicalHighlightShape(jint, jint, ::java::awt::geom::Rectangle2D *);
86 JArray< jint > * getLogicalRangesForVisualSelection(::java::awt::font::TextHitInfo *, ::java::awt::font::TextHitInfo *);
87 ::java::awt::font::TextHitInfo * getNextLeftHit(jint);
88 ::java::awt::font::TextHitInfo * getNextLeftHit(jint, ::java::awt::font::TextLayout$CaretPolicy *);
89 ::java::awt::font::TextHitInfo * getNextLeftHit(::java::awt::font::TextHitInfo *);
90 ::java::awt::font::TextHitInfo * getNextRightHit(jint);
91 ::java::awt::font::TextHitInfo * getNextRightHit(jint, ::java::awt::font::TextLayout$CaretPolicy *);
92 ::java::awt::font::TextHitInfo * getNextRightHit(::java::awt::font::TextHitInfo *);
93 ::java::awt::Shape * getOutline(::java::awt::geom::AffineTransform *);
94 jfloat getVisibleAdvance();
95 ::java::awt::Shape * getVisualHighlightShape(::java::awt::font::TextHitInfo *, ::java::awt::font::TextHitInfo *);
96 ::java::awt::Shape * getVisualHighlightShape(::java::awt::font::TextHitInfo *, ::java::awt::font::TextHitInfo *, ::java::awt::geom::Rectangle2D *);
98 ::java::awt::Shape * left(::java::awt::geom::Rectangle2D *);
99 ::java::awt::Shape * right(::java::awt::geom::Rectangle2D *);
101 ::java::awt::font::TextHitInfo * getVisualOtherHit(::java::awt::font::TextHitInfo *);
102 public: // actually protected
103 void handleJustify(jfloat);
105 ::java::awt::font::TextHitInfo * hitTestChar(jfloat, jfloat);
106 ::java::awt::font::TextHitInfo * hitTestChar(jfloat, jfloat, ::java::awt::geom::Rectangle2D *);
107 jboolean isLeftToRight();
108 jboolean isVertical();
110 ::java::lang::String * toString();
112 ::java::awt::geom::Rectangle2D * getNaturalBounds();
113 void checkHitInfo(::java::awt::font::TextHitInfo *);
114 jint hitToCaret(::java::awt::font::TextHitInfo *);
115 ::java::awt::font::TextHitInfo * caretToHit(jint);
116 jboolean isCharacterLTR(jint);
117 ::java::awt::font::TextLayout$Run * findRunAtIndex(jint);
119 JArray< ::java::awt::font::TextLayout$Run * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) runs;
120 ::java::awt::font::FontRenderContext * frc;
121 JArray< jchar > * string;
124 ::java::awt::geom::Rectangle2D * boundsCache;
125 ::java::awt::font::LineMetrics * lm;
127 ::java::awt::geom::Rectangle2D * naturalBounds;
128 JArray< JArray< jint > * > * charIndices;
129 jboolean leftToRight;
130 jboolean hasWhitespace;
131 ::java::text::Bidi * bidi;
132 JArray< jint > * logicalToVisual;
133 JArray< jint > * visualToLogical;
136 static ::java::awt::font::TextLayout$CaretPolicy * DEFAULT_CARET_POLICY;
137 static ::java::lang::Class class$;
140 #endif // __java_awt_font_TextLayout__