1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title>GTK+ Foundation Classes</title>
<link href="gfc.css" rel="stylesheet" type="text/css">
<meta content="The GFC Development Team" name="author">
<meta content="Core Library Reference Manual" name="description">
</head>
<body style="color: rgb(0, 0, 0); background-color: rgb(243, 244, 248);"
alink="#000099" link="#000099" vlink="#990099">
<table style="text-align: left; width: 1227px; height: 117px;"
border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td
style="text-align: center; background-color: rgb(255, 255, 255); width: 220px; vertical-align: top;"><img
alt="GFC Logo" src="../images/gfc.png"
style="width: 207px; height: 92px;"></td>
<td
style="text-align: center; background-color: rgb(87, 107, 152); vertical-align: middle;"><img
alt="GFC Title Logo" src="../images/gfc-title.png"
style="width: 418px; height: 76px;"><br>
</td>
</tr>
<tr>
<td
style="text-align: center; background-color: rgb(65, 77, 104); vertical-align: middle;"><big><span
style="color: rgb(255, 255, 153); font-weight: bold;">Reference Manual</span></big><br>
</td>
<td
style="text-align: center; background-color: rgb(148, 164, 200); vertical-align: middle;"><small
style="font-family: helvetica,arial,sans-serif;"><a
href="../html/index.html">Main Page</a> | <a
href="../html/namespaces.html">Namespace List</a> | <a
href="classes.html">Alphabetical List</a> | <a
href="../html/annotated.html">Class List</a> | <a
href="../html/files.html">File List</a></small><br>
</td>
</tr>
</tbody>
</table>
<small> </small>
</body>
</html>
<!-- Generated by Doxygen 1.3.8 -->
<h1>glyph.hh</h1><a href="glyph_8hh.html">Go to the documentation of this file.</a><pre class="fragment"><div>00001 <span class="comment">/* GFC-UI: GTK+ Foundation Classes (User Interface Library)</span>
00002 <span class="comment"> * Copyright (C) 2002-2004 The GFC Development Team.</span>
00003 <span class="comment"> *</span>
00004 <span class="comment"> * This program is free software; you can redistribute it and/or modify</span>
00005 <span class="comment"> * it under the terms of the GNU General Public License as published by</span>
00006 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span>
00007 <span class="comment"> * (at your option) any later version.</span>
00008 <span class="comment"> *</span>
00009 <span class="comment"> * This program is distributed in the hope that it will be useful,</span>
00010 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
00011 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
00012 <span class="comment"> * GNU Library General Public License for more details.</span>
00013 <span class="comment"> *</span>
00014 <span class="comment"> * You should have received a copy of the GNU Library General Public License</span>
00015 <span class="comment"> * along with this program; if not, write to the Free Software</span>
00016 <span class="comment"> * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.</span>
00017 <span class="comment"> */</span>
00018
00023
00024 <span class="preprocessor">#ifndef GFC_PANGO_GLYPH_HH</span>
00025 <span class="preprocessor"></span><span class="preprocessor">#define GFC_PANGO_GLYPH_HH</span>
00026 <span class="preprocessor"></span>
00027 <span class="preprocessor">#ifndef GFC_G_BOXED_HH</span>
00028 <span class="preprocessor"></span><span class="preprocessor">#include <<a class="codeRef" doxygen="gfccore.tag:" href="boxed_8hh.html">gfc/glib/boxed.hh</a>></span>
00029 <span class="preprocessor">#endif</span>
00030 <span class="preprocessor"></span>
00031 <span class="preprocessor">#ifndef GFC_PANGO_TYPES_HH</span>
00032 <span class="preprocessor"></span><span class="preprocessor">#include <<a class="code" href="pango_2types_8hh.html">gfc/pango/types.hh</a>></span>
00033 <span class="preprocessor">#endif</span>
00034 <span class="preprocessor"></span>
00035 <span class="preprocessor">#ifndef __PANGO_GLYPH_H__</span>
00036 <span class="preprocessor"></span><span class="preprocessor">#include <pango/pango-glyph.h></span>
00037 <span class="preprocessor">#endif</span>
00038 <span class="preprocessor"></span>
00039 <span class="preprocessor">#ifndef _CPP_VECTOR</span>
00040 <span class="preprocessor"></span><span class="preprocessor">#include <vector></span>
00041 <span class="preprocessor">#endif</span>
00042 <span class="preprocessor"></span>
00043 <span class="keyword">namespace </span>GFC {
00044
00045 <span class="keyword">namespace </span>Pango {
00046
00047 <span class="keyword">class </span>Analysis;
00048 <span class="keyword">class </span>Font;
00049 <span class="keyword">class </span>Rectangle;
00050
00057
<a name="l00058"></a><a class="code" href="namespaceGFC_1_1Pango.html#a53">00058</a> <span class="keyword">typedef</span> PangoGlyphUnit <a class="code" href="namespaceGFC_1_1Pango.html#a53">GlyphUnit</a>;
00059
00065
<a name="l00066"></a><a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html">00066</a> <span class="keyword">class </span><a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html">GlyphGeometry</a>
00067 {
00068 PangoGlyphGeometry geometry_;
00069
00070 <span class="keyword">public</span>:
00071 PangoGlyphGeometry* <a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html#a0">pango_glyph_geometry</a>() <span class="keyword">const</span>;
00073
00074 <a class="code" href="namespaceGFC_1_1Pango.html#a53">GlyphUnit</a> <a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html#a1">width</a>() <span class="keyword">const</span>;
00076
00077 <a class="code" href="namespaceGFC_1_1Pango.html#a53">GlyphUnit</a> <a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html#a2">x_offset</a>() <span class="keyword">const</span>;
00079
00080 <a class="code" href="namespaceGFC_1_1Pango.html#a53">GlyphUnit</a> <a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html#a3">y_offset</a>() <span class="keyword">const</span>;
00082 };
00083
00089
<a name="l00090"></a><a class="code" href="classGFC_1_1Pango_1_1GlyphVisAttr.html">00090</a> <span class="keyword">class </span><a class="code" href="classGFC_1_1Pango_1_1GlyphVisAttr.html">GlyphVisAttr</a>
00091 {
00092 PangoGlyphVisAttr attr_;
00093
00094 <span class="keyword">public</span>:
00095 PangoGlyphVisAttr* <a class="code" href="classGFC_1_1Pango_1_1GlyphVisAttr.html#a0">pango_glyph_vis_attr</a>() <span class="keyword">const</span>;
00097
00098 <span class="keywordtype">bool</span> <a class="code" href="classGFC_1_1Pango_1_1GlyphVisAttr.html#a1">is_cluster_start</a>() <span class="keyword">const</span>;
00103 };
00104
00109
<a name="l00110"></a><a class="code" href="classGFC_1_1Pango_1_1GlyphInfo.html">00110</a> <span class="keyword">class </span><a class="code" href="classGFC_1_1Pango_1_1GlyphInfo.html">GlyphInfo</a>
00111 {
00112 PangoGlyphInfo info_;
00113
00114 <span class="keyword">public</span>:
<a name="l00115"></a><a class="code" href="classGFC_1_1Pango_1_1GlyphInfo.html#a0">00115</a> PangoGlyphInfo* <a class="code" href="classGFC_1_1Pango_1_1GlyphInfo.html#a0">pango_glyph_info</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<PangoGlyphInfo*>(&info_); }
00117
00118 <a class="code" href="namespaceGFC_1_1Pango.html#a116">Glyph</a> <a class="code" href="classGFC_1_1Pango_1_1GlyphInfo.html#a1">glpyh</a>() const;
00120
00121 const <a class="code" href="classGFC_1_1Pango_1_1GlyphGeometry.html">GlyphGeometry</a>& geometry() const;
00123
00124 const <a class="code" href="classGFC_1_1Pango_1_1GlyphVisAttr.html">GlyphVisAttr</a>& attr() const;
00127 };
00128
00134
<a name="l00135"></a><a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">00135</a> class <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a> : public G::Boxed
00136 {
00137 <span class="keyword">public</span>:
00140
00141 <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>();
00143
00144 <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *text, <span class="keywordtype">int</span> length, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Analysis.html">Analysis</a>& analysis);
00153
00154 <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1String.html">String</a>& text, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Analysis.html">Analysis</a>& analysis);
00162
00163 <span class="keyword">explicit</span> <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>(PangoGlyphString *string);
00171
00172 <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>(PangoGlyphString *string, <span class="keywordtype">bool</span> copy);
00184
00185 <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>(<span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>& src);
00188
00189 <span class="keyword">virtual</span> ~<a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>();
00191
00192 <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>& operator=(<span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1GlyphString.html">GlyphString</a>& src);
00195
00199
00200 PangoGlyphString* pango_glyph_string() <span class="keyword">const</span>;
00202
00203 operator PangoGlyphString* () <span class="keyword">const</span>;
00205
00206 <span class="keywordtype">int</span> size() <span class="keyword">const</span>;
00208
00209 std::vector<GlyphInfo> glyphs() <span class="keyword">const</span>;
00211
00212 <span class="keywordtype">int</span>* log_clusters() <span class="keyword">const</span>;
00215
00216 <span class="keywordtype">void</span> extents(<span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Font.html">Font</a>& font, <a class="code" href="classGFC_1_1Pango_1_1Rectangle.html">Rectangle</a> *ink_rect, <a class="code" href="classGFC_1_1Pango_1_1Rectangle.html">Rectangle</a> *logical_rect, <span class="keywordtype">int</span> start = 0, <span class="keywordtype">int</span> end = -1) <span class="keyword">const</span>;
00233
00234 <span class="keywordtype">void</span> get_logical_widths(<span class="keyword">const</span> <span class="keywordtype">char</span> *text, <span class="keywordtype">int</span> length, <span class="keywordtype">int</span> embedding_level, std::vector<int>& logical_widths) <span class="keyword">const</span>;
00244
00245 <span class="keywordtype">void</span> get_logical_widths(<span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1String.html">String</a>& text, <span class="keywordtype">int</span> embedding_level, std::vector<int>& logical_widths) <span class="keyword">const</span>;
00254
00258
00259 <span class="keywordtype">void</span> set_size(<span class="keywordtype">int</span> length);
00262
00263 <span class="keywordtype">int</span> index_to_x(<span class="keyword">const</span> <span class="keywordtype">char</span> *text, <span class="keywordtype">int</span> length, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Analysis.html">Analysis</a>& analysis, <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> trailing);
00274
00275 <span class="keywordtype">int</span> index_to_x(<span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1String.html">String</a>& text, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Analysis.html">Analysis</a>& analysis, <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> trailing);
00285
00286 <span class="keywordtype">void</span> x_to_index(<span class="keyword">const</span> <span class="keywordtype">char</span> *text, <span class="keywordtype">int</span> length, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Analysis.html">Analysis</a>& analysis, <span class="keywordtype">int</span> x_pos, <span class="keywordtype">int</span> *index, <span class="keywordtype">bool</span> *trailing);
00300
00301 <span class="keywordtype">void</span> x_to_index(<span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1String.html">String</a>& text, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Pango_1_1Analysis.html">Analysis</a>& analysis, <span class="keywordtype">int</span> x_pos, <span class="keywordtype">int</span> *index, <span class="keywordtype">bool</span> *trailing);
00314
00316 };
00317
00318 } <span class="comment">// namespace Pango</span>
00319
00320 } <span class="comment">// namespace GFC</span>
00321
00322 <span class="preprocessor">#include <gfc/pango/inline/glyph.inl></span>
00323
00324 <span class="preprocessor">#endif // GFC_PANGO_GLYPH_HH</span>
00325 <span class="preprocessor"></span>
</div></pre><hr size="1"><address style="align: right;"><small>Generated on Tue Aug 24 00:34:31 2004 for GFC-UI by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
</body>
</html>
|