pango 2.2.4-x64-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. checksums.yaml +7 -0
  2. data/README +33 -0
  3. data/Rakefile +65 -0
  4. data/ext/pango/depend +12 -0
  5. data/ext/pango/extconf.rb +90 -0
  6. data/ext/pango/pango.def +18 -0
  7. data/ext/pango/rbpango.c +318 -0
  8. data/ext/pango/rbpango.h +96 -0
  9. data/ext/pango/rbpangoanalysis.c +218 -0
  10. data/ext/pango/rbpangoattribute.c +499 -0
  11. data/ext/pango/rbpangoattriterator.c +141 -0
  12. data/ext/pango/rbpangoattrlist.c +101 -0
  13. data/ext/pango/rbpangocairo.c +122 -0
  14. data/ext/pango/rbpangocairocontext.c +131 -0
  15. data/ext/pango/rbpangocolor.c +120 -0
  16. data/ext/pango/rbpangocontext.c +309 -0
  17. data/ext/pango/rbpangoconversions.h +111 -0
  18. data/ext/pango/rbpangocoverage.c +106 -0
  19. data/ext/pango/rbpangoengine.c +73 -0
  20. data/ext/pango/rbpangofont.c +110 -0
  21. data/ext/pango/rbpangofontdescription.c +282 -0
  22. data/ext/pango/rbpangofontface.c +73 -0
  23. data/ext/pango/rbpangofontfamily.c +79 -0
  24. data/ext/pango/rbpangofontmap.c +102 -0
  25. data/ext/pango/rbpangofontmetrics.c +85 -0
  26. data/ext/pango/rbpangofontset.c +69 -0
  27. data/ext/pango/rbpangofontsetsimple.c +60 -0
  28. data/ext/pango/rbpangoglyphinfo.c +123 -0
  29. data/ext/pango/rbpangoglyphitem.c +125 -0
  30. data/ext/pango/rbpangoglyphstring.c +151 -0
  31. data/ext/pango/rbpangogravity.c +54 -0
  32. data/ext/pango/rbpangoitem.c +95 -0
  33. data/ext/pango/rbpangolanguage.c +86 -0
  34. data/ext/pango/rbpangolayout.c +572 -0
  35. data/ext/pango/rbpangolayoutiter.c +189 -0
  36. data/ext/pango/rbpangolayoutline.c +239 -0
  37. data/ext/pango/rbpangologattr.c +109 -0
  38. data/ext/pango/rbpangomatrix.c +143 -0
  39. data/ext/pango/rbpangoprivate.h +49 -0
  40. data/ext/pango/rbpangorectangle.c +170 -0
  41. data/ext/pango/rbpangorenderer.c +193 -0
  42. data/ext/pango/rbpangoscript.c +84 -0
  43. data/ext/pango/rbpangoscriptiter.c +92 -0
  44. data/ext/pango/rbpangotabarray.c +128 -0
  45. data/extconf.rb +49 -0
  46. data/lib/2.0/pango.so +0 -0
  47. data/lib/2.1/pango.so +0 -0
  48. data/lib/2.2/pango.so +0 -0
  49. data/lib/pango.rb +79 -0
  50. data/sample/attribute.rb +82 -0
  51. data/sample/break.rb +28 -0
  52. data/sample/gdk_layout.rb +27 -0
  53. data/sample/glyphstring.rb +61 -0
  54. data/sample/item.rb +37 -0
  55. data/sample/label.rb +23 -0
  56. data/sample/layout.rb +102 -0
  57. data/sample/pango_cairo.rb +66 -0
  58. data/sample/parse.rb +33 -0
  59. data/sample/sample.txt +10 -0
  60. data/sample/script.rb +23 -0
  61. data/test/pango-test-utils.rb +9 -0
  62. data/test/run-test.rb +28 -0
  63. data/test/test-analysis.rb +26 -0
  64. data/test/test-attribute.rb +19 -0
  65. data/test/test-color.rb +47 -0
  66. data/test/test-language.rb +7 -0
  67. data/test/test-layout.rb +34 -0
  68. data/test/test-log-attr.rb +26 -0
  69. data/test/test-matrix.rb +26 -0
  70. data/test/test-rectangle.rb +26 -0
  71. data/vendor/local/bin/derb.exe +0 -0
  72. data/vendor/local/bin/genbrk.exe +0 -0
  73. data/vendor/local/bin/genccode.exe +0 -0
  74. data/vendor/local/bin/gencfu.exe +0 -0
  75. data/vendor/local/bin/gencmn.exe +0 -0
  76. data/vendor/local/bin/gencnval.exe +0 -0
  77. data/vendor/local/bin/gendict.exe +0 -0
  78. data/vendor/local/bin/gennorm2.exe +0 -0
  79. data/vendor/local/bin/genrb.exe +0 -0
  80. data/vendor/local/bin/gensprep.exe +0 -0
  81. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  82. data/vendor/local/bin/hb-shape.exe +0 -0
  83. data/vendor/local/bin/hb-view.exe +0 -0
  84. data/vendor/local/bin/icu-config +820 -0
  85. data/vendor/local/bin/icuinfo.exe +0 -0
  86. data/vendor/local/bin/icupkg.exe +0 -0
  87. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  88. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  89. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  90. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  91. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  92. data/vendor/local/bin/makeconv.exe +0 -0
  93. data/vendor/local/bin/pango-querymodules.exe +0 -0
  94. data/vendor/local/bin/pango-view.exe +0 -0
  95. data/vendor/local/bin/pkgdata.exe +0 -0
  96. data/vendor/local/bin/uconv.exe +0 -0
  97. data/vendor/local/etc/pango/pango.modules +19 -0
  98. data/vendor/local/include/harfbuzz/hb-blob.h +126 -0
  99. data/vendor/local/include/harfbuzz/hb-buffer.h +344 -0
  100. data/vendor/local/include/harfbuzz/hb-common.h +344 -0
  101. data/vendor/local/include/harfbuzz/hb-deprecated.h +51 -0
  102. data/vendor/local/include/harfbuzz/hb-face.h +117 -0
  103. data/vendor/local/include/harfbuzz/hb-font.h +507 -0
  104. data/vendor/local/include/harfbuzz/hb-ft.h +62 -0
  105. data/vendor/local/include/harfbuzz/hb-glib.h +52 -0
  106. data/vendor/local/include/harfbuzz/hb-icu.h +52 -0
  107. data/vendor/local/include/harfbuzz/hb-ot-font.h +41 -0
  108. data/vendor/local/include/harfbuzz/hb-ot-layout.h +302 -0
  109. data/vendor/local/include/harfbuzz/hb-ot-shape.h +53 -0
  110. data/vendor/local/include/harfbuzz/hb-ot-tag.h +59 -0
  111. data/vendor/local/include/harfbuzz/hb-ot.h +43 -0
  112. data/vendor/local/include/harfbuzz/hb-set.h +154 -0
  113. data/vendor/local/include/harfbuzz/hb-shape-plan.h +89 -0
  114. data/vendor/local/include/harfbuzz/hb-shape.h +81 -0
  115. data/vendor/local/include/harfbuzz/hb-unicode.h +445 -0
  116. data/vendor/local/include/harfbuzz/hb-version.h +66 -0
  117. data/vendor/local/include/harfbuzz/hb.h +47 -0
  118. data/vendor/local/include/layout/LEFontInstance.h +550 -0
  119. data/vendor/local/include/layout/LEGlyphFilter.h +45 -0
  120. data/vendor/local/include/layout/LEGlyphStorage.h +546 -0
  121. data/vendor/local/include/layout/LEInsertionList.h +177 -0
  122. data/vendor/local/include/layout/LELanguages.h +112 -0
  123. data/vendor/local/include/layout/LEScripts.h +263 -0
  124. data/vendor/local/include/layout/LESwaps.h +100 -0
  125. data/vendor/local/include/layout/LETableReference.h +418 -0
  126. data/vendor/local/include/layout/LETypes.h +728 -0
  127. data/vendor/local/include/layout/LayoutEngine.h +518 -0
  128. data/vendor/local/include/layout/ParagraphLayout.h +747 -0
  129. data/vendor/local/include/layout/RunArrays.h +676 -0
  130. data/vendor/local/include/layout/loengine.h +225 -0
  131. data/vendor/local/include/layout/playout.h +466 -0
  132. data/vendor/local/include/layout/plruns.h +441 -0
  133. data/vendor/local/include/pango-1.0/pango/pango-attributes.h +514 -0
  134. data/vendor/local/include/pango-1.0/pango/pango-bidi-type.h +136 -0
  135. data/vendor/local/include/pango-1.0/pango/pango-break.h +173 -0
  136. data/vendor/local/include/pango-1.0/pango/pango-context.h +112 -0
  137. data/vendor/local/include/pango-1.0/pango/pango-coverage.h +79 -0
  138. data/vendor/local/include/pango-1.0/pango/pango-engine.h +429 -0
  139. data/vendor/local/include/pango-1.0/pango/pango-enum-types.h +69 -0
  140. data/vendor/local/include/pango-1.0/pango/pango-features.h +12 -0
  141. data/vendor/local/include/pango-1.0/pango/pango-font.h +622 -0
  142. data/vendor/local/include/pango-1.0/pango/pango-fontmap.h +167 -0
  143. data/vendor/local/include/pango-1.0/pango/pango-fontset.h +169 -0
  144. data/vendor/local/include/pango-1.0/pango/pango-glyph-item.h +158 -0
  145. data/vendor/local/include/pango-1.0/pango/pango-glyph.h +197 -0
  146. data/vendor/local/include/pango-1.0/pango/pango-gravity.h +128 -0
  147. data/vendor/local/include/pango-1.0/pango/pango-item.h +109 -0
  148. data/vendor/local/include/pango-1.0/pango/pango-language.h +61 -0
  149. data/vendor/local/include/pango-1.0/pango/pango-layout.h +340 -0
  150. data/vendor/local/include/pango-1.0/pango/pango-matrix.h +117 -0
  151. data/vendor/local/include/pango-1.0/pango/pango-modules.h +71 -0
  152. data/vendor/local/include/pango-1.0/pango/pango-ot.h +391 -0
  153. data/vendor/local/include/pango-1.0/pango/pango-renderer.h +260 -0
  154. data/vendor/local/include/pango-1.0/pango/pango-script.h +260 -0
  155. data/vendor/local/include/pango-1.0/pango/pango-tabs.h +87 -0
  156. data/vendor/local/include/pango-1.0/pango/pango-types.h +200 -0
  157. data/vendor/local/include/pango-1.0/pango/pango-utils.h +189 -0
  158. data/vendor/local/include/pango-1.0/pango/pango.h +48 -0
  159. data/vendor/local/include/pango-1.0/pango/pangocairo.h +169 -0
  160. data/vendor/local/include/pango-1.0/pango/pangofc-decoder.h +110 -0
  161. data/vendor/local/include/pango-1.0/pango/pangofc-font.h +153 -0
  162. data/vendor/local/include/pango-1.0/pango/pangofc-fontmap.h +289 -0
  163. data/vendor/local/include/pango-1.0/pango/pangoft2.h +133 -0
  164. data/vendor/local/include/pango-1.0/pango/pangowin32.h +128 -0
  165. data/vendor/local/include/unicode/alphaindex.h +752 -0
  166. data/vendor/local/include/unicode/appendable.h +232 -0
  167. data/vendor/local/include/unicode/basictz.h +214 -0
  168. data/vendor/local/include/unicode/brkiter.h +655 -0
  169. data/vendor/local/include/unicode/bytestream.h +257 -0
  170. data/vendor/local/include/unicode/bytestrie.h +519 -0
  171. data/vendor/local/include/unicode/bytestriebuilder.h +181 -0
  172. data/vendor/local/include/unicode/calendar.h +2519 -0
  173. data/vendor/local/include/unicode/caniter.h +208 -0
  174. data/vendor/local/include/unicode/chariter.h +722 -0
  175. data/vendor/local/include/unicode/choicfmt.h +594 -0
  176. data/vendor/local/include/unicode/coleitr.h +404 -0
  177. data/vendor/local/include/unicode/coll.h +1267 -0
  178. data/vendor/local/include/unicode/compactdecimalformat.h +330 -0
  179. data/vendor/local/include/unicode/curramt.h +130 -0
  180. data/vendor/local/include/unicode/currpinf.h +258 -0
  181. data/vendor/local/include/unicode/currunit.h +110 -0
  182. data/vendor/local/include/unicode/datefmt.h +883 -0
  183. data/vendor/local/include/unicode/dbbi.h +40 -0
  184. data/vendor/local/include/unicode/dcfmtsym.h +482 -0
  185. data/vendor/local/include/unicode/decimfmt.h +2479 -0
  186. data/vendor/local/include/unicode/docmain.h +215 -0
  187. data/vendor/local/include/unicode/dtfmtsym.h +912 -0
  188. data/vendor/local/include/unicode/dtintrv.h +158 -0
  189. data/vendor/local/include/unicode/dtitvfmt.h +985 -0
  190. data/vendor/local/include/unicode/dtitvinf.h +514 -0
  191. data/vendor/local/include/unicode/dtptngen.h +498 -0
  192. data/vendor/local/include/unicode/dtrule.h +250 -0
  193. data/vendor/local/include/unicode/enumset.h +64 -0
  194. data/vendor/local/include/unicode/errorcode.h +137 -0
  195. data/vendor/local/include/unicode/fieldpos.h +291 -0
  196. data/vendor/local/include/unicode/filteredbrk.h +131 -0
  197. data/vendor/local/include/unicode/fmtable.h +760 -0
  198. data/vendor/local/include/unicode/format.h +305 -0
  199. data/vendor/local/include/unicode/fpositer.h +117 -0
  200. data/vendor/local/include/unicode/gender.h +111 -0
  201. data/vendor/local/include/unicode/gregocal.h +777 -0
  202. data/vendor/local/include/unicode/icudataver.h +41 -0
  203. data/vendor/local/include/unicode/icuplug.h +371 -0
  204. data/vendor/local/include/unicode/idna.h +323 -0
  205. data/vendor/local/include/unicode/listformatter.h +167 -0
  206. data/vendor/local/include/unicode/localpointer.h +304 -0
  207. data/vendor/local/include/unicode/locdspnm.h +204 -0
  208. data/vendor/local/include/unicode/locid.h +815 -0
  209. data/vendor/local/include/unicode/measfmt.h +389 -0
  210. data/vendor/local/include/unicode/measunit.h +1443 -0
  211. data/vendor/local/include/unicode/measure.h +159 -0
  212. data/vendor/local/include/unicode/messagepattern.h +943 -0
  213. data/vendor/local/include/unicode/msgfmt.h +1093 -0
  214. data/vendor/local/include/unicode/normalizer2.h +658 -0
  215. data/vendor/local/include/unicode/normlzr.h +797 -0
  216. data/vendor/local/include/unicode/numfmt.h +1187 -0
  217. data/vendor/local/include/unicode/numsys.h +208 -0
  218. data/vendor/local/include/unicode/parseerr.h +92 -0
  219. data/vendor/local/include/unicode/parsepos.h +230 -0
  220. data/vendor/local/include/unicode/platform.h +751 -0
  221. data/vendor/local/include/unicode/plurfmt.h +615 -0
  222. data/vendor/local/include/unicode/plurrule.h +501 -0
  223. data/vendor/local/include/unicode/ptypes.h +126 -0
  224. data/vendor/local/include/unicode/putil.h +181 -0
  225. data/vendor/local/include/unicode/rbbi.h +782 -0
  226. data/vendor/local/include/unicode/rbnf.h +1032 -0
  227. data/vendor/local/include/unicode/rbtz.h +362 -0
  228. data/vendor/local/include/unicode/regex.h +1857 -0
  229. data/vendor/local/include/unicode/region.h +228 -0
  230. data/vendor/local/include/unicode/reldatefmt.h +498 -0
  231. data/vendor/local/include/unicode/rep.h +261 -0
  232. data/vendor/local/include/unicode/resbund.h +490 -0
  233. data/vendor/local/include/unicode/schriter.h +187 -0
  234. data/vendor/local/include/unicode/scientificformathelper.h +139 -0
  235. data/vendor/local/include/unicode/search.h +575 -0
  236. data/vendor/local/include/unicode/selfmt.h +367 -0
  237. data/vendor/local/include/unicode/simpletz.h +928 -0
  238. data/vendor/local/include/unicode/smpdtfmt.h +1592 -0
  239. data/vendor/local/include/unicode/sortkey.h +338 -0
  240. data/vendor/local/include/unicode/std_string.h +37 -0
  241. data/vendor/local/include/unicode/strenum.h +276 -0
  242. data/vendor/local/include/unicode/stringpiece.h +224 -0
  243. data/vendor/local/include/unicode/stringtriebuilder.h +402 -0
  244. data/vendor/local/include/unicode/stsearch.h +504 -0
  245. data/vendor/local/include/unicode/symtable.h +112 -0
  246. data/vendor/local/include/unicode/tblcoll.h +873 -0
  247. data/vendor/local/include/unicode/timezone.h +948 -0
  248. data/vendor/local/include/unicode/tmunit.h +129 -0
  249. data/vendor/local/include/unicode/tmutamt.h +168 -0
  250. data/vendor/local/include/unicode/tmutfmt.h +243 -0
  251. data/vendor/local/include/unicode/translit.h +1342 -0
  252. data/vendor/local/include/unicode/tzfmt.h +1098 -0
  253. data/vendor/local/include/unicode/tznames.h +404 -0
  254. data/vendor/local/include/unicode/tzrule.h +828 -0
  255. data/vendor/local/include/unicode/tztrans.h +195 -0
  256. data/vendor/local/include/unicode/ubidi.h +2186 -0
  257. data/vendor/local/include/unicode/ubrk.h +540 -0
  258. data/vendor/local/include/unicode/ucal.h +1560 -0
  259. data/vendor/local/include/unicode/ucasemap.h +423 -0
  260. data/vendor/local/include/unicode/ucat.h +158 -0
  261. data/vendor/local/include/unicode/uchar.h +3426 -0
  262. data/vendor/local/include/unicode/ucharstrie.h +576 -0
  263. data/vendor/local/include/unicode/ucharstriebuilder.h +185 -0
  264. data/vendor/local/include/unicode/uchriter.h +381 -0
  265. data/vendor/local/include/unicode/uclean.h +258 -0
  266. data/vendor/local/include/unicode/ucnv.h +2036 -0
  267. data/vendor/local/include/unicode/ucnv_cb.h +162 -0
  268. data/vendor/local/include/unicode/ucnv_err.h +463 -0
  269. data/vendor/local/include/unicode/ucnvsel.h +187 -0
  270. data/vendor/local/include/unicode/ucol.h +1474 -0
  271. data/vendor/local/include/unicode/ucoleitr.h +266 -0
  272. data/vendor/local/include/unicode/uconfig.h +430 -0
  273. data/vendor/local/include/unicode/ucsdet.h +413 -0
  274. data/vendor/local/include/unicode/ucurr.h +424 -0
  275. data/vendor/local/include/unicode/udat.h +1536 -0
  276. data/vendor/local/include/unicode/udata.h +430 -0
  277. data/vendor/local/include/unicode/udateintervalformat.h +181 -0
  278. data/vendor/local/include/unicode/udatpg.h +588 -0
  279. data/vendor/local/include/unicode/udisplaycontext.h +150 -0
  280. data/vendor/local/include/unicode/uenum.h +206 -0
  281. data/vendor/local/include/unicode/uformattable.h +280 -0
  282. data/vendor/local/include/unicode/ugender.h +82 -0
  283. data/vendor/local/include/unicode/uidna.h +762 -0
  284. data/vendor/local/include/unicode/uiter.h +707 -0
  285. data/vendor/local/include/unicode/uldnames.h +302 -0
  286. data/vendor/local/include/unicode/uloc.h +1256 -0
  287. data/vendor/local/include/unicode/ulocdata.h +277 -0
  288. data/vendor/local/include/unicode/umachine.h +356 -0
  289. data/vendor/local/include/unicode/umisc.h +60 -0
  290. data/vendor/local/include/unicode/umsg.h +623 -0
  291. data/vendor/local/include/unicode/unifilt.h +120 -0
  292. data/vendor/local/include/unicode/unifunct.h +125 -0
  293. data/vendor/local/include/unicode/unimatch.h +163 -0
  294. data/vendor/local/include/unicode/unirepl.h +97 -0
  295. data/vendor/local/include/unicode/uniset.h +1691 -0
  296. data/vendor/local/include/unicode/unistr.h +4470 -0
  297. data/vendor/local/include/unicode/unorm.h +561 -0
  298. data/vendor/local/include/unicode/unorm2.h +528 -0
  299. data/vendor/local/include/unicode/unum.h +1328 -0
  300. data/vendor/local/include/unicode/unumsys.h +170 -0
  301. data/vendor/local/include/unicode/uobject.h +320 -0
  302. data/vendor/local/include/unicode/upluralrules.h +145 -0
  303. data/vendor/local/include/unicode/uregex.h +1591 -0
  304. data/vendor/local/include/unicode/uregion.h +248 -0
  305. data/vendor/local/include/unicode/urename.h +1784 -0
  306. data/vendor/local/include/unicode/urep.h +155 -0
  307. data/vendor/local/include/unicode/ures.h +887 -0
  308. data/vendor/local/include/unicode/uscript.h +642 -0
  309. data/vendor/local/include/unicode/usearch.h +885 -0
  310. data/vendor/local/include/unicode/uset.h +1126 -0
  311. data/vendor/local/include/unicode/usetiter.h +318 -0
  312. data/vendor/local/include/unicode/ushape.h +474 -0
  313. data/vendor/local/include/unicode/uspoof.h +1064 -0
  314. data/vendor/local/include/unicode/usprep.h +269 -0
  315. data/vendor/local/include/unicode/ustdio.h +1018 -0
  316. data/vendor/local/include/unicode/ustream.h +68 -0
  317. data/vendor/local/include/unicode/ustring.h +1700 -0
  318. data/vendor/local/include/unicode/ustringtrie.h +95 -0
  319. data/vendor/local/include/unicode/utext.h +1600 -0
  320. data/vendor/local/include/unicode/utf.h +223 -0
  321. data/vendor/local/include/unicode/utf16.h +623 -0
  322. data/vendor/local/include/unicode/utf32.h +23 -0
  323. data/vendor/local/include/unicode/utf8.h +824 -0
  324. data/vendor/local/include/unicode/utf_old.h +1169 -0
  325. data/vendor/local/include/unicode/utmscale.h +481 -0
  326. data/vendor/local/include/unicode/utrace.h +359 -0
  327. data/vendor/local/include/unicode/utrans.h +658 -0
  328. data/vendor/local/include/unicode/utypes.h +723 -0
  329. data/vendor/local/include/unicode/uvernum.h +170 -0
  330. data/vendor/local/include/unicode/uversion.h +193 -0
  331. data/vendor/local/include/unicode/vtzone.h +455 -0
  332. data/vendor/local/lib/girepository-1.0/Pango-1.0.typelib +0 -0
  333. data/vendor/local/lib/girepository-1.0/PangoCairo-1.0.typelib +0 -0
  334. data/vendor/local/lib/girepository-1.0/PangoFT2-1.0.typelib +0 -0
  335. data/vendor/local/lib/icu/54.1/Makefile.inc +293 -0
  336. data/vendor/local/lib/icu/54.1/pkgdata.inc +17 -0
  337. data/vendor/local/lib/icu/Makefile.inc +293 -0
  338. data/vendor/local/lib/icu/pkgdata.inc +17 -0
  339. data/vendor/local/lib/icudt.dll +0 -0
  340. data/vendor/local/lib/icudt54.dll +0 -0
  341. data/vendor/local/lib/icuin.dll +0 -0
  342. data/vendor/local/lib/icuin54.dll +0 -0
  343. data/vendor/local/lib/icuio.dll +0 -0
  344. data/vendor/local/lib/icuio54.dll +0 -0
  345. data/vendor/local/lib/icule.dll +0 -0
  346. data/vendor/local/lib/icule54.dll +0 -0
  347. data/vendor/local/lib/iculx.dll +0 -0
  348. data/vendor/local/lib/iculx54.dll +0 -0
  349. data/vendor/local/lib/icutest.dll +0 -0
  350. data/vendor/local/lib/icutest54.dll +0 -0
  351. data/vendor/local/lib/icutu.dll +0 -0
  352. data/vendor/local/lib/icutu54.dll +0 -0
  353. data/vendor/local/lib/icuuc.dll +0 -0
  354. data/vendor/local/lib/icuuc54.dll +0 -0
  355. data/vendor/local/lib/libharfbuzz-icu.a +0 -0
  356. data/vendor/local/lib/libharfbuzz-icu.la +41 -0
  357. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  358. data/vendor/local/lib/libharfbuzz.la +41 -0
  359. data/vendor/local/lib/libicudt.dll.a +0 -0
  360. data/vendor/local/lib/libicuin.dll.a +0 -0
  361. data/vendor/local/lib/libicuio.dll.a +0 -0
  362. data/vendor/local/lib/libicule.dll.a +0 -0
  363. data/vendor/local/lib/libiculx.dll.a +0 -0
  364. data/vendor/local/lib/libicutest.dll.a +0 -0
  365. data/vendor/local/lib/libicutu.dll.a +0 -0
  366. data/vendor/local/lib/libicuuc.dll.a +0 -0
  367. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  368. data/vendor/local/lib/libpango-1.0.la +41 -0
  369. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  370. data/vendor/local/lib/libpangocairo-1.0.la +41 -0
  371. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  372. data/vendor/local/lib/libpangoft2-1.0.la +41 -0
  373. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  374. data/vendor/local/lib/libpangowin32-1.0.la +41 -0
  375. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll +0 -0
  376. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll.a +0 -0
  377. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.la +41 -0
  378. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll +0 -0
  379. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll.a +0 -0
  380. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.la +41 -0
  381. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll +0 -0
  382. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll.a +0 -0
  383. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.la +41 -0
  384. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll +0 -0
  385. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll.a +0 -0
  386. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.la +41 -0
  387. data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +13 -0
  388. data/vendor/local/lib/pkgconfig/harfbuzz.pc +11 -0
  389. data/vendor/local/lib/pkgconfig/icu-i18n.pc +38 -0
  390. data/vendor/local/lib/pkgconfig/icu-io.pc +38 -0
  391. data/vendor/local/lib/pkgconfig/icu-le.pc +38 -0
  392. data/vendor/local/lib/pkgconfig/icu-lx.pc +38 -0
  393. data/vendor/local/lib/pkgconfig/icu-uc.pc +38 -0
  394. data/vendor/local/lib/pkgconfig/pango.pc +14 -0
  395. data/vendor/local/lib/pkgconfig/pangocairo.pc +11 -0
  396. data/vendor/local/lib/pkgconfig/pangoft2.pc +12 -0
  397. data/vendor/local/lib/pkgconfig/pangowin32.pc +11 -0
  398. data/vendor/local/share/gir-1.0/Pango-1.0.gir +13329 -0
  399. data/vendor/local/share/gir-1.0/PangoCairo-1.0.gir +833 -0
  400. data/vendor/local/share/gir-1.0/PangoFT2-1.0.gir +354 -0
  401. data/vendor/local/share/gtk-doc/html/harfbuzz/annotation-glossary.html +75 -0
  402. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +1449 -0
  403. data/vendor/local/share/gtk-doc/html/harfbuzz/ch01.html +98 -0
  404. data/vendor/local/share/gtk-doc/html/harfbuzz/deprecated-api-index.html +46 -0
  405. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-blob.html +610 -0
  406. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-buffer.html +1780 -0
  407. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +1337 -0
  408. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-coretext.html +144 -0
  409. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-deprecated.html +99 -0
  410. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-face.html +630 -0
  411. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-font.html +2529 -0
  412. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ft.html +188 -0
  413. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-glib.html +120 -0
  414. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-gobject.html +50 -0
  415. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-graphite2.html +120 -0
  416. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-icu.html +120 -0
  417. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +771 -0
  418. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-tag.html +172 -0
  419. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot.html +50 -0
  420. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-set.html +966 -0
  421. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape-plan.html +405 -0
  422. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape.html +286 -0
  423. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-unicode.html +1523 -0
  424. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-uniscribe.html +100 -0
  425. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-version.html +182 -0
  426. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb.html +50 -0
  427. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +378 -0
  428. data/vendor/local/share/gtk-doc/html/harfbuzz/home.png +0 -0
  429. data/vendor/local/share/gtk-doc/html/harfbuzz/index.html +105 -0
  430. data/vendor/local/share/gtk-doc/html/harfbuzz/index.sgml +496 -0
  431. data/vendor/local/share/gtk-doc/html/harfbuzz/left-insensitive.png +0 -0
  432. data/vendor/local/share/gtk-doc/html/harfbuzz/left.png +0 -0
  433. data/vendor/local/share/gtk-doc/html/harfbuzz/object-tree.html +59 -0
  434. data/vendor/local/share/gtk-doc/html/harfbuzz/right-insensitive.png +0 -0
  435. data/vendor/local/share/gtk-doc/html/harfbuzz/right.png +0 -0
  436. data/vendor/local/share/gtk-doc/html/harfbuzz/style.css +476 -0
  437. data/vendor/local/share/gtk-doc/html/harfbuzz/up-insensitive.png +0 -0
  438. data/vendor/local/share/gtk-doc/html/harfbuzz/up.png +0 -0
  439. data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +224 -0
  440. data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +255 -0
  441. data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +246 -0
  442. data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +500 -0
  443. data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +1001 -0
  444. data/vendor/local/share/gtk-doc/html/pango/PangoMarkupFormat.html +301 -0
  445. data/vendor/local/share/gtk-doc/html/pango/PangoRenderer.html +1219 -0
  446. data/vendor/local/share/gtk-doc/html/pango/annotation-glossary.html +89 -0
  447. data/vendor/local/share/gtk-doc/html/pango/api-index-1-10.html +135 -0
  448. data/vendor/local/share/gtk-doc/html/pango/api-index-1-12.html +49 -0
  449. data/vendor/local/share/gtk-doc/html/pango/api-index-1-14.html +64 -0
  450. data/vendor/local/share/gtk-doc/html/pango/api-index-1-16.html +228 -0
  451. data/vendor/local/share/gtk-doc/html/pango/api-index-1-18.html +152 -0
  452. data/vendor/local/share/gtk-doc/html/pango/api-index-1-2.html +122 -0
  453. data/vendor/local/share/gtk-doc/html/pango/api-index-1-20.html +87 -0
  454. data/vendor/local/share/gtk-doc/html/pango/api-index-1-22.html +124 -0
  455. data/vendor/local/share/gtk-doc/html/pango/api-index-1-24.html +97 -0
  456. data/vendor/local/share/gtk-doc/html/pango/api-index-1-26.html +46 -0
  457. data/vendor/local/share/gtk-doc/html/pango/api-index-1-30.html +39 -0
  458. data/vendor/local/share/gtk-doc/html/pango/api-index-1-31-0.html +39 -0
  459. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32-4.html +53 -0
  460. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32.html +42 -0
  461. data/vendor/local/share/gtk-doc/html/pango/api-index-1-34.html +38 -0
  462. data/vendor/local/share/gtk-doc/html/pango/api-index-1-4.html +201 -0
  463. data/vendor/local/share/gtk-doc/html/pango/api-index-1-6.html +165 -0
  464. data/vendor/local/share/gtk-doc/html/pango/api-index-1-8.html +171 -0
  465. data/vendor/local/share/gtk-doc/html/pango/api-index-deprecated.html +284 -0
  466. data/vendor/local/share/gtk-doc/html/pango/api-index-full.html +2968 -0
  467. data/vendor/local/share/gtk-doc/html/pango/home.png +0 -0
  468. data/vendor/local/share/gtk-doc/html/pango/index.html +146 -0
  469. data/vendor/local/share/gtk-doc/html/pango/index.sgml +957 -0
  470. data/vendor/local/share/gtk-doc/html/pango/layout.gif +0 -0
  471. data/vendor/local/share/gtk-doc/html/pango/left-insensitive.png +0 -0
  472. data/vendor/local/share/gtk-doc/html/pango/left.png +0 -0
  473. data/vendor/local/share/gtk-doc/html/pango/lowlevel.html +68 -0
  474. data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +514 -0
  475. data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +1632 -0
  476. data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +115 -0
  477. data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +508 -0
  478. data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +358 -0
  479. data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +4154 -0
  480. data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +956 -0
  481. data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +2627 -0
  482. data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +4153 -0
  483. data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +965 -0
  484. data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +331 -0
  485. data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +2202 -0
  486. data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +1430 -0
  487. data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +582 -0
  488. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +3356 -0
  489. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +2079 -0
  490. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +325 -0
  491. data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +523 -0
  492. data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +1028 -0
  493. data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +1275 -0
  494. data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +91 -0
  495. data/vendor/local/share/gtk-doc/html/pango/pango-querymodules.html +131 -0
  496. data/vendor/local/share/gtk-doc/html/pango/pango.devhelp2 +786 -0
  497. data/vendor/local/share/gtk-doc/html/pango/pango.html +63 -0
  498. data/vendor/local/share/gtk-doc/html/pango/rendering.html +47 -0
  499. data/vendor/local/share/gtk-doc/html/pango/right-insensitive.png +0 -0
  500. data/vendor/local/share/gtk-doc/html/pango/right.png +0 -0
  501. data/vendor/local/share/gtk-doc/html/pango/rotated-text.png +0 -0
  502. data/vendor/local/share/gtk-doc/html/pango/style.css +476 -0
  503. data/vendor/local/share/gtk-doc/html/pango/tools.html +33 -0
  504. data/vendor/local/share/gtk-doc/html/pango/up-insensitive.png +0 -0
  505. data/vendor/local/share/gtk-doc/html/pango/up.png +0 -0
  506. data/vendor/local/share/icu/54.1/config/mh-mingw64 +158 -0
  507. data/vendor/local/share/icu/54.1/install-sh +251 -0
  508. data/vendor/local/share/icu/54.1/license.html +385 -0
  509. data/vendor/local/share/icu/54.1/mkinstalldirs +43 -0
  510. data/vendor/local/share/license/harfbuzz/AUTHORS +9 -0
  511. data/vendor/local/share/license/harfbuzz/COPYING +36 -0
  512. data/vendor/local/share/license/pango/AUTHORS +2 -0
  513. data/vendor/local/share/license/pango/COPYING +482 -0
  514. data/vendor/local/share/man/man1/derb.1 +196 -0
  515. data/vendor/local/share/man/man1/genbrk.1 +112 -0
  516. data/vendor/local/share/man/man1/gencfu.1 +91 -0
  517. data/vendor/local/share/man/man1/gencnval.1 +91 -0
  518. data/vendor/local/share/man/man1/gendict.1 +131 -0
  519. data/vendor/local/share/man/man1/genrb.1 +146 -0
  520. data/vendor/local/share/man/man1/icu-config.1 +288 -0
  521. data/vendor/local/share/man/man1/makeconv.1 +112 -0
  522. data/vendor/local/share/man/man1/pango-querymodules.1 +106 -0
  523. data/vendor/local/share/man/man1/pango-view.1 +1 -0
  524. data/vendor/local/share/man/man1/pkgdata.1 +258 -0
  525. data/vendor/local/share/man/man1/uconv.1 +443 -0
  526. data/vendor/local/share/man/man8/genccode.8 +106 -0
  527. data/vendor/local/share/man/man8/gencmn.8 +129 -0
  528. data/vendor/local/share/man/man8/gensprep.8 +102 -0
  529. data/vendor/local/share/man/man8/icupkg.8 +204 -0
  530. metadata +599 -0
@@ -0,0 +1,218 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2003-2005 Masao Mutoh
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
+ * MA 02110-1301 USA
20
+ */
21
+
22
+ #include "rbpangoprivate.h"
23
+
24
+ #define RG_TARGET_NAMESPACE cAnalysis
25
+ #define _SELF(s) (RVAL2PANGOANALYSIS(s))
26
+
27
+ /**********************************/
28
+ static PangoAnalysis*
29
+ ana_copy(const PangoAnalysis* val)
30
+ {
31
+ PangoAnalysis* new_val;
32
+ g_return_val_if_fail (val != NULL, NULL);
33
+ new_val = g_new(PangoAnalysis, 1);
34
+ *new_val = *val;
35
+ return new_val;
36
+ }
37
+
38
+ GType
39
+ pango_analysis_get_type(void)
40
+ {
41
+ static GType our_type = 0;
42
+
43
+ if (our_type == 0)
44
+ our_type = g_boxed_type_register_static ("PangoAnalysis",
45
+ (GBoxedCopyFunc)ana_copy,
46
+ (GBoxedFreeFunc)g_free);
47
+ return our_type;
48
+ }
49
+ /**********************************/
50
+
51
+ static VALUE
52
+ rg_initialize(VALUE self)
53
+ {
54
+ PangoAnalysis analysis = { NULL, NULL, NULL, 0, 0, 0, 0, NULL, NULL };
55
+ G_INITIALIZE(self, g_boxed_copy(PANGO_TYPE_ANALYSIS, &analysis));
56
+ return Qnil;
57
+ }
58
+
59
+ static VALUE
60
+ rg_set_shape_engine(VALUE self, VALUE engine)
61
+ {
62
+ _SELF(self)->shape_engine = RVAL2PANGOENGINESHAPE(engine);
63
+ return self;
64
+ }
65
+ static VALUE
66
+ rg_shape_engine(VALUE self)
67
+ {
68
+ VALUE ret;
69
+ if (_SELF(self)->shape_engine){
70
+ const gchar* gname = G_OBJECT_TYPE_NAME(_SELF(self)->shape_engine);
71
+ gchar* name = g_strdup(gname);
72
+ name[0] = g_ascii_toupper(name[0]);
73
+ G_DEF_CLASS3(gname, name, mPango);
74
+ ret = GOBJ2RVAL(_SELF(self)->shape_engine);
75
+ } else {
76
+ ret = Qnil;
77
+ }
78
+ return ret;
79
+ }
80
+
81
+ static VALUE
82
+ rg_set_lang_engine(VALUE self, VALUE engine)
83
+ {
84
+ _SELF(self)->lang_engine = RVAL2PANGOENGINELANG(engine);
85
+ return self;
86
+ }
87
+ static VALUE
88
+ rg_lang_engine(VALUE self)
89
+ {
90
+ VALUE ret;
91
+ if (_SELF(self)->lang_engine){
92
+ const gchar* gname = G_OBJECT_TYPE_NAME(_SELF(self)->lang_engine);
93
+ gchar* name = g_strdup(gname);
94
+ name[0] = g_ascii_toupper(name[0]);
95
+ G_DEF_CLASS3(name, name, mPango);
96
+ ret = GOBJ2RVAL(_SELF(self)->lang_engine);
97
+ } else {
98
+ ret = Qnil;
99
+ }
100
+ return ret;
101
+ }
102
+
103
+ static VALUE
104
+ rg_set_font(VALUE self, VALUE font)
105
+ {
106
+ _SELF(self)->font = RVAL2PANGOFONT(font);
107
+ return self;
108
+ }
109
+
110
+ static VALUE
111
+ rg_font(VALUE self)
112
+ {
113
+ return GOBJ2RVAL(_SELF(self)->font);
114
+ }
115
+
116
+ static VALUE
117
+ rg_set_level(VALUE self, VALUE level)
118
+ {
119
+ _SELF(self)->level = NUM2UINT(level);
120
+ return self;
121
+ }
122
+
123
+ static VALUE
124
+ rg_level(VALUE self)
125
+ {
126
+ return UINT2NUM(_SELF(self)->level);
127
+ }
128
+
129
+ static VALUE
130
+ rg_set_language(VALUE self, VALUE lang)
131
+ {
132
+ _SELF(self)->language = RVAL2PANGOLANGUAGE(lang);
133
+ return self;
134
+ }
135
+
136
+ static VALUE
137
+ rg_language(VALUE self)
138
+ {
139
+ return PANGOLANGUAGE2RVAL(_SELF(self)->language);
140
+ }
141
+
142
+ struct ana_set_extra_attrs_args {
143
+ PangoAnalysis *analysis;
144
+ VALUE ary;
145
+ long n;
146
+ GSList *result;
147
+ };
148
+
149
+ static VALUE
150
+ ana_set_extra_attrs_body(VALUE value)
151
+ {
152
+ struct ana_set_extra_attrs_args *args = (struct ana_set_extra_attrs_args *)value;
153
+ long i;
154
+
155
+ for (i = 0; i < args->n; i++)
156
+ args->result = g_slist_append(args->result, RVAL2ATTR(RARRAY_PTR(args->ary)[i]));
157
+
158
+ args->analysis->extra_attrs = args->result;
159
+
160
+ return Qnil;
161
+ }
162
+
163
+ static G_GNUC_NORETURN VALUE
164
+ ana_set_extra_attrs_rescue(VALUE value)
165
+ {
166
+ g_slist_free(((struct ana_set_extra_attrs_args *)value)->result);
167
+
168
+ rb_exc_raise(rb_errinfo());
169
+ }
170
+
171
+ static VALUE
172
+ rg_set_extra_attrs(VALUE self, VALUE attrs)
173
+ {
174
+ struct ana_set_extra_attrs_args args;
175
+ args.analysis = _SELF(self);
176
+ args.ary = rb_ary_to_ary(attrs);
177
+ args.n = RARRAY_LEN(args.ary);
178
+ args.result = NULL;
179
+
180
+ rb_rescue(ana_set_extra_attrs_body, (VALUE)&args,
181
+ ana_set_extra_attrs_rescue, (VALUE)&args);
182
+
183
+ return self;
184
+ }
185
+
186
+ static VALUE
187
+ rg_extra_attrs(VALUE self)
188
+ {
189
+ VALUE ary = rb_ary_new();
190
+ GSList* list = _SELF(self)->extra_attrs;
191
+
192
+ while (list) {
193
+ rb_ary_push(ary, ATTR2RVAL(list->data));
194
+ list = list->next;
195
+ }
196
+ return ary;
197
+ }
198
+
199
+ void
200
+ Init_pango_analysis(VALUE mPango)
201
+ {
202
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(PANGO_TYPE_ANALYSIS, "Analysis", mPango);
203
+
204
+ RG_DEF_METHOD(initialize, 0);
205
+ RG_DEF_METHOD(set_shape_engine, 1);
206
+ RG_DEF_METHOD(shape_engine, 0);
207
+ RG_DEF_METHOD(set_lang_engine, 1);
208
+ RG_DEF_METHOD(lang_engine, 0);
209
+ RG_DEF_METHOD(set_font, 1);
210
+ RG_DEF_METHOD(font, 0);
211
+ RG_DEF_METHOD(set_level, 1);
212
+ RG_DEF_METHOD(level, 0);
213
+ RG_DEF_METHOD(set_language, 1);
214
+ RG_DEF_METHOD(language, 0);
215
+
216
+ RG_DEF_METHOD(set_extra_attrs, 1);
217
+ RG_DEF_METHOD(extra_attrs, 0);
218
+ }
@@ -0,0 +1,499 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2002-2005 Masao Mutoh
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
+ * MA 02110-1301 USA
20
+ */
21
+
22
+ #include "rbpangoprivate.h"
23
+
24
+ #define RG_TARGET_NAMESPACE pattr
25
+
26
+ VALUE RG_TARGET_NAMESPACE, attrstring, pattrint, pattrfloat, pattrcolor, pattrbool;
27
+ static VALUE type_to_klass;
28
+
29
+ /***********************************************/
30
+ void
31
+ pango_add_attribute(int attr_type, VALUE klass)
32
+ {
33
+ rb_hash_aset(type_to_klass, INT2FIX(attr_type), klass);
34
+ }
35
+
36
+ /* This is for Attributes which has PangoAttrType. */
37
+ VALUE
38
+ pango_get_attribute_klass(VALUE attr_type)
39
+ {
40
+ VALUE type = Qnil;
41
+ if (TYPE(attr_type) == T_STRING){
42
+ const char *strtype = RVAL2CSTR(attr_type);
43
+ if (strcmp(strtype, "Attribute") == 0){
44
+ type = RG_TARGET_NAMESPACE;
45
+ } else if (strcmp(strtype, "AttrString") == 0){
46
+ type = attrstring;
47
+ } else if (strcmp(strtype, "AttrInt") == 0){
48
+ type = pattrint;
49
+ } else if (strcmp(strtype, "AttrFloat") == 0){
50
+ type = pattrfloat;
51
+ } else if (strcmp(strtype, "AttrColor") == 0){
52
+ type = pattrcolor;
53
+ } else if (strcmp(strtype, "AttrBool") == 0){
54
+ type = pattrbool;
55
+ }
56
+ } else {
57
+ type = rb_hash_aref(type_to_klass, INT2FIX(attr_type));
58
+ }
59
+ return type;
60
+ }
61
+
62
+ VALUE
63
+ pango_make_attribute(PangoAttribute *attr)
64
+ {
65
+ if (attr == NULL) return Qnil;
66
+ return Data_Wrap_Struct(rb_hash_aref(type_to_klass, INT2FIX(attr->klass->type)), 0,
67
+ pango_attribute_destroy,
68
+ pango_attribute_copy(attr));
69
+ }
70
+
71
+ PangoAttribute*
72
+ pango_get_attribute(VALUE attr)
73
+ {
74
+ PangoAttribute *gattr;
75
+
76
+ if (NIL_P(attr)) return NULL;
77
+
78
+ if (!rb_obj_is_kind_of(attr, RG_TARGET_NAMESPACE)) {
79
+ rb_raise(rb_eTypeError, "not a Pango::Attribute...");
80
+ }
81
+ Data_Get_Struct(attr, PangoAttribute, gattr);
82
+ return gattr;
83
+ }
84
+
85
+ /***********************************************/
86
+ static VALUE
87
+ rg_s_allocate(VALUE klass)
88
+ {
89
+ /* Don't define destroy method here.
90
+ return Data_Wrap_Struct(klass, 0, pango_attribute_destroy, 0);
91
+ */
92
+ return Data_Wrap_Struct(klass, NULL, NULL, 0);
93
+ }
94
+
95
+ #ifdef HAVE_OBJECT_ALLOCATE
96
+ #define attr_s_new rb_class_new_instance
97
+ #else
98
+ static VALUE
99
+ rg_s_new(int argc, VALUE *argv, VALUE klass)
100
+ {
101
+ VALUE obj = rg_s_allocate(klass);
102
+ rb_obj_call_init(obj, argc, argv);
103
+ return obj;
104
+ }
105
+ #endif
106
+
107
+ /***********************************************/
108
+
109
+ /* This method implemented at rbpangomain.c
110
+ gboolean pango_parse_markup (const char *markup_text,
111
+ int length,
112
+ gunichar accel_marker,
113
+ PangoAttrList **attr_list,
114
+ char **text,
115
+ gunichar *accel_char,
116
+ GError **error);
117
+ */
118
+
119
+ static VALUE
120
+ rg_s_type_register(G_GNUC_UNUSED VALUE self, VALUE name)
121
+ {
122
+ return INT2NUM(pango_attr_type_register(RVAL2CSTR(name)));
123
+ }
124
+
125
+ static VALUE
126
+ rg_operator_attr_equal(VALUE self, VALUE other)
127
+ {
128
+ return CBOOL2RVAL(pango_attribute_equal(RVAL2ATTR(self), RVAL2ATTR(other)));
129
+ }
130
+
131
+ /*
132
+ * Structure accessors
133
+ */
134
+ /* PangoAttribute */
135
+ static VALUE
136
+ rg_start_index(VALUE self)
137
+ {
138
+ return UINT2NUM(RVAL2ATTR(self)->start_index);
139
+ }
140
+
141
+ static VALUE
142
+ rg_set_start_index(VALUE self, VALUE value)
143
+ {
144
+ RVAL2ATTR(self)->start_index = NUM2UINT(value);
145
+ return Qnil;
146
+ }
147
+
148
+ static VALUE
149
+ rg_end_index(VALUE self)
150
+ {
151
+ return UINT2NUM(RVAL2ATTR(self)->end_index);
152
+ }
153
+
154
+ static VALUE
155
+ rg_set_end_index(VALUE self, VALUE value)
156
+ {
157
+ RVAL2ATTR(self)->end_index = NUM2UINT(value);
158
+ return Qnil;
159
+ }
160
+
161
+ /* PangoAttrString */
162
+ static VALUE
163
+ attr_string_value(VALUE self)
164
+ {
165
+ return CSTR2RVAL(((PangoAttrString*)RVAL2ATTR(self))->value);
166
+ }
167
+
168
+ /* PangoAttrLanguage */
169
+ static VALUE
170
+ attr_language_value(VALUE self)
171
+ {
172
+ return PANGOLANGUAGE2RVAL(((PangoAttrLanguage*)RVAL2ATTR(self))->value);
173
+ }
174
+
175
+ /* PangoAttrColor */
176
+ static VALUE
177
+ attr_color_value(VALUE self)
178
+ {
179
+ PangoColor color = ((PangoAttrColor*)RVAL2ATTR(self))->color;
180
+ return PANGOCOLOR2RVAL(&color);
181
+ }
182
+
183
+ /* PangoAttrInt */
184
+ static VALUE
185
+ attr_int_value(VALUE self)
186
+ {
187
+ return INT2NUM(((PangoAttrInt*)RVAL2ATTR(self))->value);
188
+ }
189
+
190
+ /* PangoAttrFloat */
191
+ static VALUE
192
+ attr_float_value(VALUE self)
193
+ {
194
+ return rb_float_new(((PangoAttrFloat*)RVAL2ATTR(self))->value);
195
+ }
196
+
197
+ /* PangoAttrBool(This is Ruby/Pango's original class) */
198
+ static VALUE
199
+ attr_bool_value(VALUE self)
200
+ {
201
+ return CBOOL2RVAL(((PangoAttrInt*)RVAL2ATTR(self))->value);
202
+ }
203
+
204
+ /* PangoAttrFontDesc */
205
+ static VALUE
206
+ attr_fontdesc_value(VALUE self)
207
+ {
208
+ return PANGOFONTDESCRIPTION2RVAL(((PangoAttrFontDesc*)RVAL2ATTR(self))->desc);
209
+ }
210
+
211
+ /* PangoAttrShape */
212
+ static VALUE
213
+ attr_shape_ink_rect(VALUE self)
214
+ {
215
+ PangoRectangle rect = ((PangoAttrShape*)RVAL2ATTR(self))->ink_rect;
216
+ return PANGORECTANGLE2RVAL(&rect);
217
+ }
218
+
219
+ static VALUE
220
+ attr_shape_logical_rect(VALUE self)
221
+ {
222
+ PangoRectangle rect = ((PangoAttrShape*)RVAL2ATTR(self))->logical_rect;
223
+ return PANGORECTANGLE2RVAL(&rect);
224
+ }
225
+
226
+ static VALUE
227
+ attr_shape_value(VALUE self)
228
+ {
229
+ return rb_ary_new3(2, attr_shape_ink_rect(self), attr_shape_logical_rect(self));
230
+ }
231
+
232
+ /*
233
+ * Initialize methods
234
+ */
235
+ #define MAKE_ATTRINT_INIT(klassname, funcname)\
236
+ static VALUE \
237
+ attr_ ## klassname ## _initialize(VALUE self, VALUE val)\
238
+ {\
239
+ DATA_PTR(self) = pango_attr_ ## funcname ## _new(NUM2INT(val));\
240
+ return Qnil;\
241
+ }
242
+
243
+ #define MAKE_ATTRENUM_INIT(klassname, funcname, type)\
244
+ static VALUE \
245
+ attr_ ## klassname ## _initialize(VALUE self, VALUE val)\
246
+ {\
247
+ DATA_PTR(self) = pango_attr_ ## funcname ## _new(RVAL2GENUM(val, type));\
248
+ return Qnil;\
249
+ }
250
+
251
+ static VALUE
252
+ attr_AttrLanguage_initialize(VALUE self, VALUE lang)
253
+ {
254
+ DATA_PTR(self) = pango_attr_language_new(
255
+ RVAL2PANGOLANGUAGE(lang));
256
+ return Qnil;
257
+ }
258
+
259
+ static VALUE
260
+ attr_AttrFamily_initialize(VALUE self, VALUE family)
261
+ {
262
+ DATA_PTR(self) = pango_attr_family_new(RVAL2CSTR(family));
263
+ return Qnil;
264
+ }
265
+
266
+ MAKE_ATTRENUM_INIT(AttrStyle, style, PANGO_TYPE_STYLE);
267
+ MAKE_ATTRENUM_INIT(AttrVariant, variant, PANGO_TYPE_VARIANT);
268
+ MAKE_ATTRENUM_INIT(AttrStretch, stretch, PANGO_TYPE_STRETCH);
269
+ MAKE_ATTRENUM_INIT(AttrWeight, weight, PANGO_TYPE_WEIGHT);
270
+
271
+ static VALUE
272
+ attr_AttrSize_initialize(VALUE self, VALUE size)
273
+ {
274
+ DATA_PTR(self) = pango_attr_size_new(NUM2INT(size));
275
+ return Qnil;
276
+ }
277
+
278
+ static VALUE
279
+ attr_AttrAbsoluteSize_initialize(VALUE self, VALUE size)
280
+ {
281
+ DATA_PTR(self) = pango_attr_size_new_absolute(NUM2INT(size));
282
+ return Qnil;
283
+ }
284
+
285
+ #if PANGO_CHECK_VERSION(1,16,0)
286
+ static VALUE
287
+ attr_AttrGravity_initialize(VALUE self, VALUE gravity)
288
+ {
289
+ DATA_PTR(self) = pango_attr_gravity_new(RVAL2PANGOGRAVITY(gravity));
290
+ return Qnil;
291
+ }
292
+
293
+ static VALUE
294
+ attr_AttrGravityHint_initialize(VALUE self, VALUE gravity_hint)
295
+ {
296
+ DATA_PTR(self) = pango_attr_gravity_hint_new(RVAL2PANGOGRAVITYHINT(gravity_hint));
297
+ return Qnil;
298
+ }
299
+ #endif
300
+
301
+ static VALUE
302
+ attr_AttrFontDescription_initialize(VALUE self, VALUE fontdescription)
303
+ {
304
+ DATA_PTR(self) = pango_attr_font_desc_new(RVAL2PANGOFONTDESCRIPTION(fontdescription));
305
+ return Qnil;
306
+ }
307
+
308
+ static VALUE
309
+ attr_AttrForeground_initialize(VALUE self, VALUE r, VALUE g, VALUE b)
310
+ {
311
+ DATA_PTR(self) = pango_attr_foreground_new(FIX2UINT(r), FIX2UINT(g), FIX2UINT(b));
312
+ return Qnil;
313
+ }
314
+
315
+ static VALUE
316
+ attr_AttrBackground_initialize(VALUE self, VALUE r, VALUE g, VALUE b)
317
+ {
318
+ DATA_PTR(self) = pango_attr_background_new(FIX2UINT(r), FIX2UINT(g), FIX2UINT(b));
319
+ return Qnil;
320
+ }
321
+
322
+ static VALUE
323
+ attr_AttrStrikethrough_initialize(VALUE self, VALUE strikethrough)
324
+ {
325
+ DATA_PTR(self) = pango_attr_strikethrough_new(RVAL2CBOOL(strikethrough));
326
+ return Qnil;
327
+ }
328
+ #ifdef HAVE_PANGO_ATTR_STRIKETHROUGH_COLOR_NEW
329
+ static VALUE
330
+ attr_AttrStrikethroughColor_initialize(VALUE self, VALUE r, VALUE g, VALUE b)
331
+ {
332
+ DATA_PTR(self) = pango_attr_strikethrough_color_new(FIX2UINT(r), FIX2UINT(g), FIX2UINT(b));
333
+ return Qnil;
334
+ }
335
+ #endif
336
+
337
+ MAKE_ATTRENUM_INIT(AttrUnderline, underline, PANGO_TYPE_UNDERLINE);
338
+ #ifdef HAVE_PANGO_ATTR_UNDERLINE_COLOR_NEW
339
+ static VALUE
340
+ attr_AttrUnderlineColor_initialize(VALUE self, VALUE r, VALUE g, VALUE b)
341
+ {
342
+ DATA_PTR(self) = pango_attr_underline_color_new(FIX2UINT(r), FIX2UINT(g), FIX2UINT(b));
343
+ return Qnil;
344
+ }
345
+ #endif
346
+
347
+ static VALUE
348
+ attr_AttrShape_initialize(int argc, VALUE *argv, VALUE self)
349
+ {
350
+ VALUE ink_rect, logical_rect, data;
351
+
352
+ rb_scan_args(argc, argv, "21", &ink_rect, &logical_rect, &data);
353
+
354
+ if (NIL_P(data)){
355
+ DATA_PTR(self) = pango_attr_shape_new(
356
+ RVAL2PANGORECTANGLE(ink_rect),
357
+ RVAL2PANGORECTANGLE(logical_rect));
358
+ } else {
359
+ G_RELATIVE(self, data);
360
+ DATA_PTR(self) = pango_attr_shape_new_with_data(
361
+ RVAL2PANGORECTANGLE(ink_rect),
362
+ RVAL2PANGORECTANGLE(logical_rect),
363
+ (gpointer)data, NULL, NULL);
364
+ }
365
+
366
+ return Qnil;
367
+ }
368
+
369
+ static VALUE
370
+ attr_AttrScale_initialize(VALUE self, VALUE scale)
371
+ {
372
+ DATA_PTR(self) = pango_attr_scale_new(NUM2DBL(scale));
373
+ return Qnil;
374
+ }
375
+
376
+ static VALUE
377
+ attr_AttrFallback_initialize(VALUE self, VALUE enable_fallback)
378
+ {
379
+ DATA_PTR(self) = pango_attr_fallback_new(RVAL2CBOOL(enable_fallback));
380
+ return Qnil;
381
+ }
382
+
383
+ MAKE_ATTRINT_INIT(AttrRise, rise);
384
+ MAKE_ATTRINT_INIT(AttrLetterSpacing, letter_spacing);
385
+
386
+ #define MAKE_ATTR(gtype, name, parent, num)\
387
+ tmpklass = rb_define_class_under(mPango, #name, parent);\
388
+ rb_hash_aset(type_to_klass, INT2FIX(gtype), tmpklass);\
389
+ rbg_define_method(tmpklass, "initialize", attr_## name ## _initialize , num);
390
+
391
+ void
392
+ Init_pango_attribute(VALUE mPango)
393
+ {
394
+ VALUE tmpklass;
395
+ RG_TARGET_NAMESPACE = rb_define_class_under(mPango, "Attribute", rb_cData);
396
+
397
+ RG_DEF_SMETHOD(type_register, 1);
398
+ RG_DEF_METHOD_OPERATOR("==", attr_equal, 1);
399
+ RG_DEF_METHOD(start_index, 0);
400
+ RG_DEF_METHOD(set_start_index, 1);
401
+ RG_DEF_METHOD(end_index, 0);
402
+ RG_DEF_METHOD(set_end_index, 1);
403
+
404
+ #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
405
+ RG_DEF_SMETHOD(allocate, 0);
406
+ #else
407
+ rb_define_alloc_func(RG_TARGET_NAMESPACE, (VALUE(*)_((VALUE)))rg_s_allocate);
408
+ #endif
409
+ #ifndef HAVE_OBJECT_ALLOCATE
410
+ RG_DEF_SMETHOD(new, -1);
411
+ #endif
412
+
413
+ attrstring = rb_define_class_under(mPango, "AttrString", RG_TARGET_NAMESPACE);
414
+ rbg_define_method(attrstring, "value", attr_string_value, 0);
415
+
416
+ pattrint = rb_define_class_under(mPango, "AttrInt", RG_TARGET_NAMESPACE);
417
+ rbg_define_method(pattrint, "value", attr_int_value, 0);
418
+
419
+ pattrfloat = rb_define_class_under(mPango, "AttrFloat", RG_TARGET_NAMESPACE);
420
+ rbg_define_method(pattrfloat, "value", attr_float_value, 0);
421
+
422
+ pattrcolor = rb_define_class_under(mPango, "AttrColor", RG_TARGET_NAMESPACE);
423
+ rbg_define_method(pattrcolor, "value", attr_color_value, 0);
424
+
425
+ pattrbool = rb_define_class_under(mPango, "AttrBool", RG_TARGET_NAMESPACE);
426
+ rbg_define_method(pattrbool, "value", attr_bool_value, 0);
427
+
428
+ rb_global_variable(&type_to_klass);
429
+ type_to_klass = rb_hash_new();
430
+
431
+ MAKE_ATTR(PANGO_ATTR_LANGUAGE, AttrLanguage, RG_TARGET_NAMESPACE, 1);
432
+ rbg_define_method(tmpklass, "value", attr_language_value, 0);
433
+
434
+ MAKE_ATTR(PANGO_ATTR_FAMILY, AttrFamily, attrstring, 1);
435
+ MAKE_ATTR(PANGO_ATTR_STYLE, AttrStyle, pattrint, 1);
436
+ MAKE_ATTR(PANGO_ATTR_WEIGHT, AttrWeight, pattrint, 1);
437
+ MAKE_ATTR(PANGO_ATTR_VARIANT, AttrVariant, pattrint, 1);
438
+ MAKE_ATTR(PANGO_ATTR_STRETCH, AttrStretch, pattrint, 1);
439
+ MAKE_ATTR(PANGO_ATTR_SIZE, AttrSize, pattrint, 1);
440
+ MAKE_ATTR(PANGO_ATTR_ABSOLUTE_SIZE, AttrAbsoluteSize, pattrint, 1);
441
+ #if PANGO_CHECK_VERSION(1,16,0)
442
+ MAKE_ATTR(PANGO_ATTR_GRAVITY, AttrGravity, pattrint, 1);
443
+ MAKE_ATTR(PANGO_ATTR_GRAVITY_HINT, AttrGravityHint, pattrint, 1);
444
+ #endif
445
+ MAKE_ATTR(PANGO_ATTR_FONT_DESC, AttrFontDescription, RG_TARGET_NAMESPACE, 1);
446
+ rbg_define_method(tmpklass, "value", attr_fontdesc_value, 0);
447
+ MAKE_ATTR(PANGO_ATTR_FOREGROUND, AttrForeground, pattrcolor, 3);
448
+ MAKE_ATTR(PANGO_ATTR_BACKGROUND, AttrBackground, pattrcolor, 3);
449
+ MAKE_ATTR(PANGO_ATTR_UNDERLINE, AttrUnderline, pattrint, 1);
450
+ /* PangoUnderline */
451
+ G_DEF_CLASS(PANGO_TYPE_UNDERLINE, "Underline", tmpklass);
452
+ G_DEF_CONSTANTS(tmpklass, PANGO_TYPE_UNDERLINE, "PANGO_UNDERLINE_");
453
+ #ifdef HAVE_PANGO_ATTR_UNDERLINE_COLOR_NEW
454
+ MAKE_ATTR(PANGO_ATTR_UNDERLINE_COLOR, AttrUnderlineColor, pattrcolor, 3);
455
+ #endif
456
+
457
+ MAKE_ATTR(PANGO_ATTR_STRIKETHROUGH, AttrStrikethrough, pattrbool, 1);
458
+ #ifdef HAVE_PANGO_ATTR_STRIKETHROUGH_COLOR_NEW
459
+ MAKE_ATTR(PANGO_ATTR_STRIKETHROUGH_COLOR, AttrStrikethroughColor, pattrcolor, 3);
460
+ #endif
461
+ MAKE_ATTR(PANGO_ATTR_RISE, AttrRise, pattrint, 1);
462
+ MAKE_ATTR(PANGO_ATTR_LETTER_SPACING, AttrLetterSpacing, pattrint, 1);
463
+ MAKE_ATTR(PANGO_ATTR_SHAPE, AttrShape, RG_TARGET_NAMESPACE, -1);
464
+ rbg_define_method(tmpklass, "ink_rect", attr_shape_ink_rect, 0);
465
+ rbg_define_method(tmpklass, "logical_rect", attr_shape_logical_rect, 0);
466
+ rbg_define_method(tmpklass, "value", attr_shape_value, 0);
467
+ MAKE_ATTR(PANGO_ATTR_SCALE, AttrScale, pattrfloat, 1);
468
+ /* PangoScale */
469
+ rb_define_const(tmpklass, "XX_SMALL", rb_float_new(PANGO_SCALE_XX_SMALL));
470
+ rb_define_const(tmpklass, "X_SMALL", rb_float_new(PANGO_SCALE_X_SMALL));
471
+ rb_define_const(tmpklass, "SMALL", rb_float_new(PANGO_SCALE_SMALL));
472
+ rb_define_const(tmpklass, "MEDIUM", rb_float_new(PANGO_SCALE_MEDIUM));
473
+ rb_define_const(tmpklass, "LARGE", rb_float_new(PANGO_SCALE_LARGE));
474
+ rb_define_const(tmpklass, "X_LARGE", rb_float_new(PANGO_SCALE_X_LARGE));
475
+ rb_define_const(tmpklass, "XX_LARGE", rb_float_new(PANGO_SCALE_XX_LARGE));
476
+ MAKE_ATTR(PANGO_ATTR_FALLBACK, AttrFallback, pattrbool, 1);
477
+ /* PangoAttrType */
478
+ G_DEF_CLASS(PANGO_TYPE_ATTR_TYPE, "Type", RG_TARGET_NAMESPACE);
479
+ #define INT2ATTRTYPE(x) rbgobj_make_enum((x), PANGO_TYPE_ATTR_TYPE)
480
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_INVALID", INT2ATTRTYPE(PANGO_ATTR_INVALID));
481
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_LANGUAGE", INT2ATTRTYPE(PANGO_ATTR_LANGUAGE));
482
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_FAMILY", INT2ATTRTYPE(PANGO_ATTR_FAMILY));
483
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_STYLE", INT2ATTRTYPE(PANGO_ATTR_STYLE));
484
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_WEIGHT", INT2ATTRTYPE(PANGO_ATTR_WEIGHT));
485
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_VARIANT", INT2ATTRTYPE(PANGO_ATTR_VARIANT));
486
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_STRETCH", INT2ATTRTYPE(PANGO_ATTR_STRETCH));
487
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_SIZE", INT2ATTRTYPE(PANGO_ATTR_SIZE));
488
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_FONT_DESC", INT2ATTRTYPE(PANGO_ATTR_FONT_DESC));
489
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_FOREGROUND", INT2ATTRTYPE(PANGO_ATTR_FOREGROUND));
490
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_BACKGROUND", INT2ATTRTYPE(PANGO_ATTR_BACKGROUND));
491
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_UNDERLINE", INT2ATTRTYPE(PANGO_ATTR_UNDERLINE));
492
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_STRIKETHROUGH", INT2ATTRTYPE(PANGO_ATTR_STRIKETHROUGH));
493
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_STRIKETHROUGH_COLOR", INT2ATTRTYPE(PANGO_ATTR_STRIKETHROUGH_COLOR));
494
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_RISE", INT2ATTRTYPE(PANGO_ATTR_RISE));
495
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_SHAPE", INT2ATTRTYPE(PANGO_ATTR_SHAPE));
496
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_SCALE", INT2ATTRTYPE(PANGO_ATTR_SCALE));
497
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_FALLBACK", INT2ATTRTYPE(PANGO_ATTR_FALLBACK));
498
+ rb_define_const(RG_TARGET_NAMESPACE, "TYPE_LETTER_SPACING", INT2ATTRTYPE(PANGO_ATTR_LETTER_SPACING));
499
+ }