pango 2.0.2-x86-mingw32 → 2.0.3-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (208) hide show
  1. checksums.yaml +7 -0
  2. data/README +2 -2
  3. data/Rakefile +7 -5
  4. data/ext/pango/extconf.rb +4 -4
  5. data/ext/pango/rbpango.c +0 -9
  6. data/ext/pango/rbpango.h +2 -10
  7. data/ext/pango/rbpangoanalysis.c +0 -4
  8. data/ext/pango/rbpangoattribute.c +1 -26
  9. data/ext/pango/rbpangoattrlist.c +0 -4
  10. data/ext/pango/rbpangocairo.c +13 -12
  11. data/ext/pango/rbpangocairocontext.c +6 -26
  12. data/ext/pango/rbpangocontext.c +2 -14
  13. data/ext/pango/rbpangofont.c +0 -12
  14. data/ext/pango/rbpangofontdescription.c +0 -5
  15. data/ext/pango/rbpangofontface.c +0 -6
  16. data/ext/pango/rbpangofontfamily.c +0 -3
  17. data/ext/pango/rbpangofontmap.c +0 -4
  18. data/ext/pango/rbpangofontmetrics.c +1 -4
  19. data/ext/pango/rbpangofontset.c +0 -4
  20. data/ext/pango/rbpangoglyphitem.c +0 -8
  21. data/ext/pango/rbpangoglyphstring.c +0 -4
  22. data/ext/pango/rbpangoitem.c +0 -16
  23. data/ext/pango/rbpangolanguage.c +0 -5
  24. data/ext/pango/rbpangolayout.c +36 -19
  25. data/ext/pango/rbpangolayoutline.c +0 -33
  26. data/ext/pango/rbpangologattr.c +0 -5
  27. data/ext/pango/rbpangomatrix.c +0 -10
  28. data/ext/pango/rbpangoprivate.h +0 -4
  29. data/ext/pango/rbpangorenderer.c +0 -6
  30. data/ext/pango/rbpangoscript.c +0 -4
  31. data/ext/pango/rbpangoscriptiter.c +0 -5
  32. data/lib/1.9/pango.so +0 -0
  33. data/lib/2.0/pango.so +0 -0
  34. data/test/{test_layout.rb → test-layout.rb} +14 -0
  35. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  36. data/vendor/local/bin/hb-shape.exe +0 -0
  37. data/vendor/local/bin/hb-view.exe +0 -0
  38. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  39. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  40. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  41. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  42. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  43. data/vendor/local/bin/libstdc++-6.dll +0 -0
  44. data/vendor/local/bin/pango-querymodules.exe +0 -0
  45. data/vendor/local/bin/pango-view.exe +0 -0
  46. data/vendor/local/include/harfbuzz/hb-buffer.h +10 -10
  47. data/vendor/local/include/harfbuzz/hb-common.h +147 -131
  48. data/vendor/local/include/harfbuzz/{hb-uniscribe.h → hb-deprecated.h} +15 -13
  49. data/vendor/local/include/harfbuzz/hb-face.h +117 -0
  50. data/vendor/local/include/harfbuzz/hb-font.h +130 -77
  51. data/vendor/local/include/harfbuzz/hb-ot-layout.h +6 -0
  52. data/vendor/local/include/harfbuzz/hb-set.h +2 -0
  53. data/vendor/local/include/harfbuzz/hb-unicode.h +97 -9
  54. data/vendor/local/include/harfbuzz/hb-version.h +2 -2
  55. data/vendor/local/include/harfbuzz/hb.h +2 -0
  56. data/vendor/local/include/pango-1.0/pango/pango-attributes.h +213 -4
  57. data/vendor/local/include/pango-1.0/pango/pango-break.h +53 -0
  58. data/vendor/local/include/pango-1.0/pango/pango-coverage.h +21 -0
  59. data/vendor/local/include/pango-1.0/pango/pango-engine.h +46 -0
  60. data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
  61. data/vendor/local/include/pango-1.0/pango/pango-font.h +234 -0
  62. data/vendor/local/include/pango-1.0/pango/pango-fontmap.h +68 -0
  63. data/vendor/local/include/pango-1.0/pango/pango-fontset.h +42 -0
  64. data/vendor/local/include/pango-1.0/pango/pango-glyph-item.h +64 -0
  65. data/vendor/local/include/pango-1.0/pango/pango-glyph.h +55 -0
  66. data/vendor/local/include/pango-1.0/pango/pango-item.h +28 -0
  67. data/vendor/local/include/pango-1.0/pango/pango-language.h +5 -0
  68. data/vendor/local/include/pango-1.0/pango/pango-layout.h +43 -0
  69. data/vendor/local/include/pango-1.0/pango/pango-modules.h +11 -0
  70. data/vendor/local/include/pango-1.0/pango/pango-ot.h +149 -0
  71. data/vendor/local/include/pango-1.0/pango/pango-script.h +102 -0
  72. data/vendor/local/include/pango-1.0/pango/pango-tabs.h +11 -0
  73. data/vendor/local/include/pango-1.0/pango/pango-types.h +102 -2
  74. data/vendor/local/include/pango-1.0/pango/pango-utils.h +44 -0
  75. data/vendor/local/include/pango-1.0/pango/pangocairo.h +14 -0
  76. data/vendor/local/include/pango-1.0/pango/pangofc-fontmap.h +2 -2
  77. data/vendor/local/include/pango-1.0/pango/pangoft2.h +13 -0
  78. data/vendor/local/include/pango-1.0/pango/pangowin32.h +6 -0
  79. data/vendor/local/lib/girepository-1.0/Pango-1.0.typelib +0 -0
  80. data/vendor/local/lib/girepository-1.0/PangoCairo-1.0.typelib +0 -0
  81. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  82. data/vendor/local/lib/libharfbuzz.la +5 -5
  83. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  84. data/vendor/local/lib/libpango-1.0.la +2 -2
  85. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  86. data/vendor/local/lib/libpangocairo-1.0.la +4 -4
  87. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  88. data/vendor/local/lib/libpangoft2-1.0.la +3 -3
  89. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  90. data/vendor/local/lib/libpangowin32-1.0.la +2 -2
  91. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll +0 -0
  92. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll.a +0 -0
  93. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll +0 -0
  94. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll.a +0 -0
  95. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.la +1 -1
  96. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll +0 -0
  97. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll.a +0 -0
  98. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll +0 -0
  99. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll.a +0 -0
  100. data/vendor/local/lib/pkgconfig/harfbuzz.pc +5 -5
  101. data/vendor/local/lib/pkgconfig/pango.pc +1 -1
  102. data/vendor/local/lib/pkgconfig/pangocairo.pc +1 -1
  103. data/vendor/local/lib/pkgconfig/pangoft2.pc +1 -1
  104. data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
  105. data/vendor/local/share/gir-1.0/Pango-1.0.gir +1824 -1434
  106. data/vendor/local/share/gir-1.0/PangoCairo-1.0.gir +109 -103
  107. data/vendor/local/share/gir-1.0/PangoFT2-1.0.gir +18 -15
  108. data/vendor/local/share/gtk-doc/html/harfbuzz/annotation-glossary.html +71 -0
  109. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +1419 -0
  110. data/vendor/local/share/gtk-doc/html/harfbuzz/ch01.html +98 -0
  111. data/vendor/local/share/gtk-doc/html/harfbuzz/deprecated-api-index.html +48 -0
  112. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-blob.html +415 -0
  113. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-buffer.html +1045 -0
  114. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +1073 -0
  115. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-coretext.html +67 -0
  116. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-deprecated.html +90 -0
  117. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-face.html +344 -0
  118. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-font.html +1617 -0
  119. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ft.html +130 -0
  120. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-glib.html +75 -0
  121. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-gobject.html +52 -0
  122. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-graphite2.html +76 -0
  123. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-icu.html +75 -0
  124. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +544 -0
  125. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-tag.html +105 -0
  126. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot.html +67 -0
  127. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-set.html +540 -0
  128. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape-plan.html +264 -0
  129. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape.html +194 -0
  130. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-unicode.html +1180 -0
  131. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-uniscribe.html +67 -0
  132. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-version.html +156 -0
  133. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb.html +52 -0
  134. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +591 -0
  135. data/vendor/local/share/gtk-doc/html/harfbuzz/home.png +0 -0
  136. data/vendor/local/share/gtk-doc/html/harfbuzz/index.html +105 -0
  137. data/vendor/local/share/gtk-doc/html/harfbuzz/index.sgml +650 -0
  138. data/vendor/local/share/gtk-doc/html/harfbuzz/left-insensitive.png +0 -0
  139. data/vendor/local/share/gtk-doc/html/harfbuzz/left.png +0 -0
  140. data/vendor/local/share/gtk-doc/html/harfbuzz/object-tree.html +32 -0
  141. data/vendor/local/share/gtk-doc/html/harfbuzz/right-insensitive.png +0 -0
  142. data/vendor/local/share/gtk-doc/html/harfbuzz/right.png +0 -0
  143. data/vendor/local/share/gtk-doc/html/harfbuzz/style.css +321 -0
  144. data/vendor/local/share/gtk-doc/html/harfbuzz/up-insensitive.png +0 -0
  145. data/vendor/local/share/gtk-doc/html/harfbuzz/up.png +0 -0
  146. data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +3 -4
  147. data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +3 -4
  148. data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +2 -2
  149. data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +4 -9
  150. data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +8 -13
  151. data/vendor/local/share/gtk-doc/html/pango/PangoMarkupFormat.html +2 -2
  152. data/vendor/local/share/gtk-doc/html/pango/{pango-pango-renderer.html → PangoRenderer.html} +99 -102
  153. data/vendor/local/share/gtk-doc/html/pango/annotation-glossary.html +20 -29
  154. data/vendor/local/share/gtk-doc/html/pango/api-index-1-10.html +2 -2
  155. data/vendor/local/share/gtk-doc/html/pango/api-index-1-12.html +2 -2
  156. data/vendor/local/share/gtk-doc/html/pango/api-index-1-14.html +2 -2
  157. data/vendor/local/share/gtk-doc/html/pango/api-index-1-16.html +6 -2
  158. data/vendor/local/share/gtk-doc/html/pango/api-index-1-18.html +2 -2
  159. data/vendor/local/share/gtk-doc/html/pango/api-index-1-2.html +2 -2
  160. data/vendor/local/share/gtk-doc/html/pango/api-index-1-20.html +4 -11
  161. data/vendor/local/share/gtk-doc/html/pango/api-index-1-22.html +3 -3
  162. data/vendor/local/share/gtk-doc/html/pango/api-index-1-24.html +15 -4
  163. data/vendor/local/share/gtk-doc/html/pango/api-index-1-26.html +4 -4
  164. data/vendor/local/share/gtk-doc/html/pango/api-index-1-30.html +6 -6
  165. data/vendor/local/share/gtk-doc/html/pango/api-index-1-31-0.html +42 -0
  166. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32-4.html +58 -0
  167. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32.html +6 -5
  168. data/vendor/local/share/gtk-doc/html/pango/api-index-1-34.html +41 -0
  169. data/vendor/local/share/gtk-doc/html/pango/api-index-1-4.html +2 -2
  170. data/vendor/local/share/gtk-doc/html/pango/api-index-1-6.html +2 -2
  171. data/vendor/local/share/gtk-doc/html/pango/api-index-1-8.html +19 -19
  172. data/vendor/local/share/gtk-doc/html/pango/api-index-deprecated.html +2 -2
  173. data/vendor/local/share/gtk-doc/html/pango/api-index-full.html +31 -27
  174. data/vendor/local/share/gtk-doc/html/pango/index.html +7 -5
  175. data/vendor/local/share/gtk-doc/html/pango/index.sgml +38 -38
  176. data/vendor/local/share/gtk-doc/html/pango/lowlevel.html +5 -5
  177. data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +6 -9
  178. data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +113 -66
  179. data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +2 -2
  180. data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +8 -12
  181. data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +5 -8
  182. data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +90 -53
  183. data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +10 -10
  184. data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +21 -8
  185. data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +44 -15
  186. data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +2 -2
  187. data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +2 -2
  188. data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +12 -12
  189. data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +87 -90
  190. data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +2 -5
  191. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +38 -31
  192. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +10 -18
  193. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +10 -11
  194. data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +4 -6
  195. data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +3 -4
  196. data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +12 -12
  197. data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +4 -4
  198. data/vendor/local/share/gtk-doc/html/pango/pango-querymodules.html +2 -2
  199. data/vendor/local/share/gtk-doc/html/pango/pango.devhelp2 +34 -31
  200. data/vendor/local/share/gtk-doc/html/pango/pango.html +2 -2
  201. data/vendor/local/share/gtk-doc/html/pango/rendering.html +2 -2
  202. data/vendor/local/share/gtk-doc/html/pango/tools.html +2 -2
  203. data/vendor/local/share/man/man1/pango-querymodules.1 +2 -2
  204. data/vendor/local/share/man/man1/pango-view.1 +2 -2
  205. metadata +57 -24
  206. data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
  207. data/vendor/local/include/harfbuzz/hb-gobject.h +0 -69
  208. data/vendor/local/share/gtk-doc/html/pango/api-index-1-28.html +0 -31
@@ -27,6 +27,23 @@
27
27
 
28
28
  G_BEGIN_DECLS
29
29
 
30
+ /**
31
+ * PANGO_TYPE_FONT_MAP:
32
+ *
33
+ * The #GObject type for #PangoFontMap.
34
+ */
35
+ /**
36
+ * PANGO_FONT_MAP:
37
+ * @object: a #GObject.
38
+ *
39
+ * Casts a #GObject to a #PangoFontMap.
40
+ */
41
+ /**
42
+ * PANGO_IS_FONT_MAP:
43
+ * @object: a #GObject.
44
+ *
45
+ * Returns: %TRUE if @object is a #PangoFontMap.
46
+ */
30
47
  #define PANGO_TYPE_FONT_MAP (pango_font_map_get_type ())
31
48
  #define PANGO_FONT_MAP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT_MAP, PangoFontMap))
32
49
  #define PANGO_IS_FONT_MAP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT_MAP))
@@ -50,17 +67,68 @@ void pango_font_map_changed (PangoFontMap *fontma
50
67
 
51
68
  #ifdef PANGO_ENABLE_BACKEND
52
69
 
70
+ /**
71
+ * PANGO_FONT_MAP_CLASS:
72
+ * @klass: a #GObject.
73
+ *
74
+ * Casts a #GObject to a #PangoFontMapClass.
75
+ */
76
+ /**
77
+ * PANGO_IS_FONT_MAP_CLASS:
78
+ * @klass: a #GObject.
79
+ *
80
+ * Returns: %TRUE if @klass is a subtype of #PangoFontMapClass.
81
+ */
82
+ /**
83
+ * PANGO_FONT_MAP_GET_CLASS:
84
+ * @obj: a #PangoFontMap.
85
+ *
86
+ * Returns: class of @obj
87
+ */
53
88
  #define PANGO_FONT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONT_MAP, PangoFontMapClass))
54
89
  #define PANGO_IS_FONT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONT_MAP))
55
90
  #define PANGO_FONT_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONT_MAP, PangoFontMapClass))
56
91
 
57
92
  typedef struct _PangoFontMapClass PangoFontMapClass;
58
93
 
94
+ /**
95
+ * PangoFontMap:
96
+ *
97
+ * The #PangoFontMap represents the set of fonts available for a
98
+ * particular rendering system. This is a virtual object with
99
+ * implementations being specific to particular rendering systems. To
100
+ * create an implementation of a #PangoFontMap, the rendering-system
101
+ * specific code should allocate a larger structure that contains a nested
102
+ * #PangoFontMap, fill in the <structfield>klass</structfield> member of the nested #PangoFontMap with a
103
+ * pointer to a appropriate #PangoFontMapClass, then call
104
+ * pango_font_map_init() on the structure.
105
+ *
106
+ * The #PangoFontMap structure contains one member which the implementation
107
+ * fills in.
108
+ */
59
109
  struct _PangoFontMap
60
110
  {
61
111
  GObject parent_instance;
62
112
  };
63
113
 
114
+ /**
115
+ * PangoFontMapClass:
116
+ * @parent_class: parent #GObjectClass.
117
+ * @load_font: a function to load a font with a given description. See
118
+ * pango_font_map_load_font().
119
+ * @list_families: A function to list available font families. See
120
+ * pango_font_map_list_families().
121
+ * @load_fontset: a function to load a fontset with a given given description
122
+ * suitable for a particular language. See pango_font_map_load_fontset().
123
+ * @shape_engine_type: the type of rendering-system-dependent engines that
124
+ * can handle fonts of this fonts loaded with this fontmap.
125
+ * @get_serial: a function to get the serial number of the fontmap.
126
+ * See pango_font_map_get_serial().
127
+ * @changed: See pango_font_map_changed()
128
+ *
129
+ * The #PangoFontMapClass structure holds the virtual functions for
130
+ * a particular #PangoFontMap implementation.
131
+ */
64
132
  struct _PangoFontMapClass
65
133
  {
66
134
  GObjectClass parent_class;
@@ -33,6 +33,11 @@ G_BEGIN_DECLS
33
33
  * PangoFontset
34
34
  */
35
35
 
36
+ /**
37
+ * PANGO_TYPE_FONTSET:
38
+ *
39
+ * The #GObject type for #PangoFontset.
40
+ */
36
41
  #define PANGO_TYPE_FONTSET (pango_fontset_get_type ())
37
42
  #define PANGO_FONTSET(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONTSET, PangoFontset))
38
43
  #define PANGO_IS_FONTSET(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONTSET))
@@ -73,11 +78,35 @@ typedef struct _PangoFontsetClass PangoFontsetClass;
73
78
  #define PANGO_IS_FONTSET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONTSET))
74
79
  #define PANGO_FONTSET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONTSET, PangoFontsetClass))
75
80
 
81
+ /**
82
+ * PangoFontset:
83
+ *
84
+ * A #PangoFontset represents a set of #PangoFont to use
85
+ * when rendering text. It is the result of resolving a
86
+ * #PangoFontDescription against a particular #PangoContext.
87
+ * It has operations for finding the component font for
88
+ * a particular Unicode character, and for finding a composite
89
+ * set of metrics for the entire fontset.
90
+ */
76
91
  struct _PangoFontset
77
92
  {
78
93
  GObject parent_instance;
79
94
  };
80
95
 
96
+ /**
97
+ * PangoFontsetClass:
98
+ * @parent_class: parent #GObjectClass.
99
+ * @get_font: a function to get the font in the fontset that contains the
100
+ * best glyph for the given Unicode character; see pango_fontset_get_font().
101
+ * @get_metrics: a function to get overall metric information for the fonts
102
+ * in the fontset; see pango_fontset_get_metrics().
103
+ * @get_language: a function to get the language of the fontset.
104
+ * @foreach: a function to loop over the fonts in the fontset. See
105
+ * pango_fontset_foreach().
106
+ *
107
+ * The #PangoFontsetClass structure holds the virtual functions for
108
+ * a particular #PangoFontset implementation.
109
+ */
81
110
  struct _PangoFontsetClass
82
111
  {
83
112
  GObjectClass parent_class;
@@ -106,6 +135,19 @@ struct _PangoFontsetClass
106
135
  * PangoFontsetSimple
107
136
  */
108
137
 
138
+ /**
139
+ * PANGO_TYPE_FONTSET_SIMPLE:
140
+ *
141
+ * The #GObject type for #PangoFontsetSimple.
142
+ */
143
+ /**
144
+ * PangoFontsetSimple:
145
+ *
146
+ * #PangoFontsetSimple is a implementation of the abstract
147
+ * #PangoFontset base class in terms of an array of fonts,
148
+ * which the creator provides when constructing the
149
+ * #PangoFontsetSimple.
150
+ */
109
151
  #define PANGO_TYPE_FONTSET_SIMPLE (pango_fontset_simple_get_type ())
110
152
  #define PANGO_FONTSET_SIMPLE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONTSET_SIMPLE, PangoFontsetSimple))
111
153
  #define PANGO_IS_FONTSET_SIMPLE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONTSET_SIMPLE))
@@ -29,6 +29,15 @@
29
29
 
30
30
  G_BEGIN_DECLS
31
31
 
32
+ /**
33
+ * PangoGlyphItem:
34
+ *
35
+ * A #PangoGlyphItem is a pair of a #PangoItem and the glyphs
36
+ * resulting from shaping the text corresponding to an item.
37
+ * As an example of the usage of #PangoGlyphItem, the results
38
+ * of shaping text with #PangoLayout is a list of #PangoLayoutLine,
39
+ * each of which contains a list of #PangoGlyphItem.
40
+ */
32
41
  typedef struct _PangoGlyphItem PangoGlyphItem;
33
42
 
34
43
  struct _PangoGlyphItem
@@ -37,6 +46,11 @@ struct _PangoGlyphItem
37
46
  PangoGlyphString *glyphs;
38
47
  };
39
48
 
49
+ /**
50
+ * PANGO_TYPE_GLYPH_ITEM:
51
+ *
52
+ * The #GObject type for #PangoGlyphItem.
53
+ */
40
54
  #define PANGO_TYPE_GLYPH_ITEM (pango_glyph_item_get_type ())
41
55
 
42
56
  GType pango_glyph_item_get_type (void) G_GNUC_CONST;
@@ -58,6 +72,49 @@ void pango_glyph_item_get_logical_widths (PangoGlyphItem *glyph_item,
58
72
  int *logical_widths);
59
73
 
60
74
 
75
+ /**
76
+ * PangoGlyphItemIter:
77
+ *
78
+ * A #PangoGlyphItemIter is an iterator over the clusters in a
79
+ * #PangoGlyphItem. The <firstterm>forward direction</firstterm> of the
80
+ * iterator is the logical direction of text. That is, with increasing
81
+ * @start_index and @start_char values. If @glyph_item is right-to-left
82
+ * (that is, if <literal>@glyph_item->item->analysis.level</literal> is odd),
83
+ * then @start_glyph decreases as the iterator moves forward. Moreover,
84
+ * in right-to-left cases, @start_glyph is greater than @end_glyph.
85
+ *
86
+ * An iterator should be initialized using either of
87
+ * pango_glyph_item_iter_init_start() and
88
+ * pango_glyph_item_iter_init_end(), for forward and backward iteration
89
+ * respectively, and walked over using any desired mixture of
90
+ * pango_glyph_item_iter_next_cluster() and
91
+ * pango_glyph_item_iter_prev_cluster(). A common idiom for doing a
92
+ * forward iteration over the clusters is:
93
+ * <programlisting>
94
+ * PangoGlyphItemIter cluster_iter;
95
+ * gboolean have_cluster;
96
+ *
97
+ * for (have_cluster = pango_glyph_item_iter_init_start (&amp;cluster_iter,
98
+ * glyph_item, text);
99
+ * have_cluster;
100
+ * have_cluster = pango_glyph_item_iter_next_cluster (&amp;cluster_iter))
101
+ * {
102
+ * ...
103
+ * }
104
+ * </programlisting>
105
+ *
106
+ * Note that @text is the start of the text for layout, which is then
107
+ * indexed by <literal>@glyph_item->item->offset</literal> to get to the
108
+ * text of @glyph_item. The @start_index and @end_index values can directly
109
+ * index into @text. The @start_glyph, @end_glyph, @start_char, and @end_char
110
+ * values however are zero-based for the @glyph_item. For each cluster, the
111
+ * item pointed at by the start variables is included in the cluster while
112
+ * the one pointed at by end variables is not.
113
+ *
114
+ * None of the members of a #PangoGlyphItemIter should be modified manually.
115
+ *
116
+ * Since: 1.22
117
+ */
61
118
  typedef struct _PangoGlyphItemIter PangoGlyphItemIter;
62
119
 
63
120
  struct _PangoGlyphItemIter
@@ -74,6 +131,13 @@ struct _PangoGlyphItemIter
74
131
  int end_char;
75
132
  };
76
133
 
134
+ /**
135
+ * PANGO_TYPE_GLYPH_ITEM_ITER:
136
+ *
137
+ * The #GObject type for #PangoGlyphItemIter.
138
+ *
139
+ * Since: 1.22
140
+ */
77
141
  #define PANGO_TYPE_GLYPH_ITEM_ITER (pango_glyph_item_iter_get_type ())
78
142
 
79
143
  GType pango_glyph_item_iter_get_type (void) G_GNUC_CONST;
@@ -33,10 +33,30 @@ typedef struct _PangoGlyphInfo PangoGlyphInfo;
33
33
  typedef struct _PangoGlyphString PangoGlyphString;
34
34
 
35
35
  /* 1024ths of a device unit */
36
+ /**
37
+ * PangoGlyphUnit:
38
+ *
39
+ * The #PangoGlyphUnit type is used to store dimensions within
40
+ * Pango. Dimensions are stored in 1/%PANGO_SCALE of a device unit.
41
+ * (A device unit might be a pixel for screen display, or
42
+ * a point on a printer.) %PANGO_SCALE is currently 1024, and
43
+ * may change in the future (unlikely though), but you should not
44
+ * depend on its exact value. The PANGO_PIXELS() macro can be used
45
+ * to convert from glyph units into device units with correct rounding.
46
+ */
36
47
  typedef gint32 PangoGlyphUnit;
37
48
 
38
49
  /* Positioning information about a glyph
39
50
  */
51
+ /**
52
+ * PangoGlyphGeometry:
53
+ * @width: the logical width to use for the the character.
54
+ * @x_offset: horizontal offset from nominal character position.
55
+ * @y_offset: vertical offset from nominal character position.
56
+ *
57
+ * The #PangoGlyphGeometry structure contains width and positioning
58
+ * information for a single glyph.
59
+ */
40
60
  struct _PangoGlyphGeometry
41
61
  {
42
62
  PangoGlyphUnit width;
@@ -46,6 +66,18 @@ struct _PangoGlyphGeometry
46
66
 
47
67
  /* Visual attributes of a glyph
48
68
  */
69
+ /**
70
+ * PangoGlyphVisAttr:
71
+ * @is_cluster_start: set for the first logical glyph in each cluster. (Clusters
72
+ * are stored in visual order, within the cluster, glyphs
73
+ * are always ordered in logical order, since visual
74
+ * order is meaningless; that is, in Arabic text, accent glyphs
75
+ * follow the glyphs for the base character.)
76
+ *
77
+ * The PangoGlyphVisAttr is used to communicate information between
78
+ * the shaping phase and the rendering phase. More attributes may be
79
+ * added in the future.
80
+ */
49
81
  struct _PangoGlyphVisAttr
50
82
  {
51
83
  guint is_cluster_start : 1;
@@ -53,6 +85,16 @@ struct _PangoGlyphVisAttr
53
85
 
54
86
  /* A single glyph
55
87
  */
88
+ /**
89
+ * PangoGlyphInfo:
90
+ * @glyph: the glyph itself.
91
+ * @geometry: the positional information about the glyph.
92
+ * @attr: the visual attributes of the glyph.
93
+ *
94
+ * The #PangoGlyphInfo structure represents a single glyph together with
95
+ * positioning information and visual attributes.
96
+ * It contains the following fields.
97
+ */
56
98
  struct _PangoGlyphInfo
57
99
  {
58
100
  PangoGlyph glyph;
@@ -63,6 +105,14 @@ struct _PangoGlyphInfo
63
105
  /* A string of glyphs with positional information and visual attributes -
64
106
  * ready for drawing
65
107
  */
108
+ /**
109
+ * PangoGlyphString:
110
+ *
111
+ * The #PangoGlyphString structure is used to store strings
112
+ * of glyphs with geometry and visual attribute information.
113
+ * The storage for the glyph information is owned
114
+ * by the structure which simplifies memory management.
115
+ */
66
116
  struct _PangoGlyphString {
67
117
  gint num_glyphs;
68
118
 
@@ -79,6 +129,11 @@ struct _PangoGlyphString {
79
129
  gint space;
80
130
  };
81
131
 
132
+ /**
133
+ * PANGO_TYPE_GLYPH_STRING:
134
+ *
135
+ * The #GObject type for #PangoGlyphString.
136
+ */
82
137
  #define PANGO_TYPE_GLYPH_STRING (pango_glyph_string_get_type ())
83
138
 
84
139
  PangoGlyphString *pango_glyph_string_new (void);
@@ -30,8 +30,31 @@ typedef struct _PangoAnalysis PangoAnalysis;
30
30
  typedef struct _PangoItem PangoItem;
31
31
 
32
32
  /* TODO: if more flags are needed, turn this into a real PangoAnalysisFlags enum */
33
+ /**
34
+ * PANGO_ANALYSIS_FLAG_CENTERED_BASELINE:
35
+ *
36
+ * Whether the segment should be shifted to center around the baseline.
37
+ * Used in vertical writing directions mostly.
38
+ *
39
+ * Since: 1.16
40
+ */
33
41
  #define PANGO_ANALYSIS_FLAG_CENTERED_BASELINE (1 << 0)
34
42
 
43
+ /**
44
+ * PangoAnalysis:
45
+ * @shape_engine: the engine for doing rendering-system-dependent processing.
46
+ * @lang_engine: the engine for doing rendering-system-independent processing.
47
+ * @font: the font for this segment.
48
+ * @level: the bidirectional level for this segment.
49
+ * @gravity: the glyph orientation for this segment (A #PangoGravity).
50
+ * @flags: boolean flags for this segment (currently only one) (Since: 1.16).
51
+ * @script: the detected script for this segment (A #PangoScript) (Since: 1.18).
52
+ * @language: the detected language for this segment.
53
+ * @extra_attrs: extra attributes for this segment.
54
+ *
55
+ * The #PangoAnalysis structure stores information about
56
+ * the properties of a segment of text.
57
+ */
35
58
  struct _PangoAnalysis
36
59
  {
37
60
  PangoEngineShape *shape_engine;
@@ -48,6 +71,11 @@ struct _PangoAnalysis
48
71
  GSList *extra_attrs;
49
72
  };
50
73
 
74
+ /**
75
+ * PangoItem:
76
+ *
77
+ * The #PangoItem structure stores information abouta segment of text.
78
+ */
51
79
  struct _PangoItem
52
80
  {
53
81
  gint offset;
@@ -29,6 +29,11 @@ G_BEGIN_DECLS
29
29
 
30
30
  typedef struct _PangoLanguage PangoLanguage;
31
31
 
32
+ /**
33
+ * PANGO_TYPE_LANGUAGE:
34
+ *
35
+ * The #GObject type for #PangoLanguage.
36
+ */
32
37
  #define PANGO_TYPE_LANGUAGE (pango_language_get_type ())
33
38
 
34
39
  GType pango_language_get_type (void) G_GNUC_CONST;
@@ -33,14 +33,41 @@ typedef struct _PangoLayout PangoLayout;
33
33
  typedef struct _PangoLayoutClass PangoLayoutClass;
34
34
  typedef struct _PangoLayoutLine PangoLayoutLine;
35
35
 
36
+ /**
37
+ * PangoLayoutRun:
38
+ *
39
+ * The #PangoLayoutRun structure represents a single run within
40
+ * a #PangoLayoutLine; it is simply an alternate name for
41
+ * #PangoGlyphItem.
42
+ * See the #PangoGlyphItem docs for details on the fields.
43
+ */
36
44
  typedef PangoGlyphItem PangoLayoutRun;
37
45
 
46
+ /**
47
+ * PangoAlignment:
48
+ * @PANGO_ALIGN_LEFT: Put all available space on the right
49
+ * @PANGO_ALIGN_CENTER: Center the line within the available space
50
+ * @PANGO_ALIGN_RIGHT: Put all available space on the left
51
+ *
52
+ * A #PangoAlignment describes how to align the lines of a #PangoLayout within the
53
+ * available space. If the #PangoLayout is set to justify
54
+ * using pango_layout_set_justify(), this only has effect for partial lines.
55
+ */
38
56
  typedef enum {
39
57
  PANGO_ALIGN_LEFT,
40
58
  PANGO_ALIGN_CENTER,
41
59
  PANGO_ALIGN_RIGHT
42
60
  } PangoAlignment;
43
61
 
62
+ /**
63
+ * PangoWrapMode:
64
+ * @PANGO_WRAP_WORD: wrap lines at word boundaries.
65
+ * @PANGO_WRAP_CHAR: wrap lines at character boundaries.
66
+ * @PANGO_WRAP_WORD_CHAR: wrap lines at word boundaries, but fall back to character boundaries if there is not
67
+ * enough space for a full word.
68
+ *
69
+ * A #PangoWrapMode describes how to wrap the lines of a #PangoLayout to the desired width.
70
+ */
44
71
  typedef enum {
45
72
  PANGO_WRAP_WORD,
46
73
  PANGO_WRAP_CHAR,
@@ -67,6 +94,22 @@ typedef enum {
67
94
  PANGO_ELLIPSIZE_END
68
95
  } PangoEllipsizeMode;
69
96
 
97
+ /**
98
+ * PangoLayoutLine:
99
+ * @start_index: start of line as byte index into layout->text
100
+ * @length: length of line in bytes
101
+ * @is_paragraph_start: #TRUE if this is the first line of the paragraph
102
+ * @resolved_dir: #Resolved PangoDirection of line
103
+ *
104
+ * The #PangoLayoutLine structure represents one of the lines resulting
105
+ * from laying out a paragraph via #PangoLayout. #PangoLayoutLine
106
+ * structures are obtained by calling pango_layout_get_line() and
107
+ * are only valid until the text, attributes, or settings of the
108
+ * parent #PangoLayout are modified.
109
+ *
110
+ * Routines for rendering PangoLayout objects are provided in
111
+ * code specific to each rendering system.
112
+ */
70
113
  struct _PangoLayoutLine
71
114
  {
72
115
  PangoLayout *layout;