pango 3.2.5-x64-mingw32 → 3.2.6-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (368) hide show
  1. checksums.yaml +4 -4
  2. data/COPYING.LIB +502 -0
  3. data/README.md +25 -0
  4. data/Rakefile +8 -8
  5. data/ext/pango/extconf.rb +4 -1
  6. data/ext/pango/pango.def +1 -0
  7. data/ext/pango/rb-pango-attr-list.c +3 -3
  8. data/ext/pango/rb-pango-attribute.c +67 -57
  9. data/ext/pango/rb-pango-conversions.h +3 -3
  10. data/ext/pango/rb-pango-private.h +0 -1
  11. data/ext/pango/rb-pango.c +0 -1
  12. data/ext/pango/rb-pango.h +2 -1
  13. data/lib/2.2/pango.so +0 -0
  14. data/lib/2.3/pango.so +0 -0
  15. data/lib/2.4/pango.so +0 -0
  16. data/lib/2.5/pango.so +0 -0
  17. data/lib/pango/loader.rb +13 -1
  18. data/lib/pango/rectangle.rb +7 -1
  19. data/pango.gemspec +43 -0
  20. data/vendor/local/bin/derb.exe +0 -0
  21. data/vendor/local/bin/escapesrc.exe +0 -0
  22. data/vendor/local/bin/fribidi.exe +0 -0
  23. data/vendor/local/bin/genbrk.exe +0 -0
  24. data/vendor/local/bin/genccode.exe +0 -0
  25. data/vendor/local/bin/gencfu.exe +0 -0
  26. data/vendor/local/bin/gencmn.exe +0 -0
  27. data/vendor/local/bin/gencnval.exe +0 -0
  28. data/vendor/local/bin/gendict.exe +0 -0
  29. data/vendor/local/bin/gennorm2.exe +0 -0
  30. data/vendor/local/bin/genrb.exe +0 -0
  31. data/vendor/local/bin/gensprep.exe +0 -0
  32. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  33. data/vendor/local/bin/hb-shape.exe +0 -0
  34. data/vendor/local/bin/hb-subset.exe +0 -0
  35. data/vendor/local/bin/hb-view.exe +0 -0
  36. data/vendor/local/bin/icu-config +13 -8
  37. data/vendor/local/bin/icuinfo.exe +0 -0
  38. data/vendor/local/bin/icupkg.exe +0 -0
  39. data/vendor/local/bin/libfribidi-0.dll +0 -0
  40. data/vendor/local/bin/libgraphene-1.0-0.dll +0 -0
  41. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  42. data/vendor/local/bin/libharfbuzz-subset-0.dll +0 -0
  43. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  44. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  45. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  46. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  47. data/vendor/local/bin/makeconv.exe +0 -0
  48. data/vendor/local/bin/pango-view.exe +0 -0
  49. data/vendor/local/bin/pkgdata.exe +0 -0
  50. data/vendor/local/bin/uconv.exe +0 -0
  51. data/vendor/local/include/fribidi/fribidi-config.h +2 -2
  52. data/vendor/local/include/harfbuzz/hb-blob.h +2 -0
  53. data/vendor/local/include/harfbuzz/hb-common.h +24 -3
  54. data/vendor/local/include/harfbuzz/hb-face.h +4 -0
  55. data/vendor/local/include/harfbuzz/hb-map.h +104 -0
  56. data/vendor/local/include/harfbuzz/hb-ot-layout.h +1 -1
  57. data/vendor/local/include/harfbuzz/hb-set.h +0 -2
  58. data/vendor/local/include/harfbuzz/hb-subset-plan.hh +46 -25
  59. data/vendor/local/include/harfbuzz/hb-subset.h +4 -1
  60. data/vendor/local/include/harfbuzz/hb-version.h +3 -3
  61. data/vendor/local/include/harfbuzz/hb.h +1 -0
  62. data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
  63. data/vendor/local/include/unicode/alphaindex.h +2 -1
  64. data/vendor/local/include/unicode/appendable.h +25 -25
  65. data/vendor/local/include/unicode/basictz.h +1 -1
  66. data/vendor/local/include/unicode/brkiter.h +19 -24
  67. data/vendor/local/include/unicode/bytestream.h +26 -13
  68. data/vendor/local/include/unicode/bytestrie.h +2 -2
  69. data/vendor/local/include/unicode/bytestriebuilder.h +4 -5
  70. data/vendor/local/include/unicode/calendar.h +11 -11
  71. data/vendor/local/include/unicode/caniter.h +3 -3
  72. data/vendor/local/include/unicode/casemap.h +494 -0
  73. data/vendor/local/include/unicode/char16ptr.h +302 -0
  74. data/vendor/local/include/unicode/chariter.h +22 -18
  75. data/vendor/local/include/unicode/choicfmt.h +1 -1
  76. data/vendor/local/include/unicode/coleitr.h +2 -1
  77. data/vendor/local/include/unicode/coll.h +17 -17
  78. data/vendor/local/include/unicode/compactdecimalformat.h +10 -2
  79. data/vendor/local/include/unicode/curramt.h +5 -5
  80. data/vendor/local/include/unicode/currpinf.h +1 -1
  81. data/vendor/local/include/unicode/currunit.h +24 -6
  82. data/vendor/local/include/unicode/datefmt.h +3 -2
  83. data/vendor/local/include/unicode/dbbi.h +1 -1
  84. data/vendor/local/include/unicode/dcfmtsym.h +89 -13
  85. data/vendor/local/include/unicode/decimfmt.h +38 -39
  86. data/vendor/local/include/unicode/docmain.h +7 -2
  87. data/vendor/local/include/unicode/dtfmtsym.h +7 -6
  88. data/vendor/local/include/unicode/dtintrv.h +2 -2
  89. data/vendor/local/include/unicode/dtitvfmt.h +2 -2
  90. data/vendor/local/include/unicode/dtitvinf.h +1 -3
  91. data/vendor/local/include/unicode/dtptngen.h +48 -24
  92. data/vendor/local/include/unicode/dtrule.h +1 -1
  93. data/vendor/local/include/unicode/edits.h +424 -0
  94. data/vendor/local/include/unicode/enumset.h +1 -1
  95. data/vendor/local/include/unicode/errorcode.h +2 -2
  96. data/vendor/local/include/unicode/fieldpos.h +1 -1
  97. data/vendor/local/include/unicode/filteredbrk.h +35 -5
  98. data/vendor/local/include/unicode/fmtable.h +1 -1
  99. data/vendor/local/include/unicode/format.h +1 -1
  100. data/vendor/local/include/unicode/fpositer.h +11 -3
  101. data/vendor/local/include/unicode/gender.h +1 -1
  102. data/vendor/local/include/unicode/gregocal.h +1 -1
  103. data/vendor/local/include/unicode/icudataver.h +1 -1
  104. data/vendor/local/include/unicode/icuplug.h +1 -1
  105. data/vendor/local/include/unicode/idna.h +2 -2
  106. data/vendor/local/include/unicode/listformatter.h +4 -2
  107. data/vendor/local/include/unicode/localpointer.h +6 -43
  108. data/vendor/local/include/unicode/locdspnm.h +2 -1
  109. data/vendor/local/include/unicode/locid.h +7 -6
  110. data/vendor/local/include/unicode/measfmt.h +18 -7
  111. data/vendor/local/include/unicode/measunit.h +31 -60
  112. data/vendor/local/include/unicode/measure.h +1 -1
  113. data/vendor/local/include/unicode/messagepattern.h +2 -2
  114. data/vendor/local/include/unicode/msgfmt.h +2 -2
  115. data/vendor/local/include/unicode/normalizer2.h +130 -16
  116. data/vendor/local/include/unicode/normlzr.h +5 -5
  117. data/vendor/local/include/unicode/nounit.h +111 -0
  118. data/vendor/local/include/unicode/numberformatter.h +2194 -0
  119. data/vendor/local/include/unicode/numfmt.h +81 -7
  120. data/vendor/local/include/unicode/numsys.h +2 -2
  121. data/vendor/local/include/unicode/parseerr.h +3 -3
  122. data/vendor/local/include/unicode/parsepos.h +1 -1
  123. data/vendor/local/include/unicode/platform.h +66 -63
  124. data/vendor/local/include/unicode/plurfmt.h +1 -1
  125. data/vendor/local/include/unicode/plurrule.h +23 -4
  126. data/vendor/local/include/unicode/ptypes.h +1 -1
  127. data/vendor/local/include/unicode/putil.h +4 -4
  128. data/vendor/local/include/unicode/rbbi.h +105 -134
  129. data/vendor/local/include/unicode/rbnf.h +65 -3
  130. data/vendor/local/include/unicode/rbtz.h +1 -1
  131. data/vendor/local/include/unicode/regex.h +17 -17
  132. data/vendor/local/include/unicode/region.h +1 -1
  133. data/vendor/local/include/unicode/reldatefmt.h +4 -5
  134. data/vendor/local/include/unicode/rep.h +4 -4
  135. data/vendor/local/include/unicode/resbund.h +3 -3
  136. data/vendor/local/include/unicode/schriter.h +3 -3
  137. data/vendor/local/include/unicode/scientificnumberformatter.h +1 -1
  138. data/vendor/local/include/unicode/search.h +1 -1
  139. data/vendor/local/include/unicode/selfmt.h +1 -1
  140. data/vendor/local/include/unicode/simpleformatter.h +31 -25
  141. data/vendor/local/include/unicode/simpletz.h +5 -3
  142. data/vendor/local/include/unicode/smpdtfmt.h +17 -7
  143. data/vendor/local/include/unicode/sortkey.h +1 -1
  144. data/vendor/local/include/unicode/std_string.h +6 -8
  145. data/vendor/local/include/unicode/strenum.h +5 -5
  146. data/vendor/local/include/unicode/stringoptions.h +198 -0
  147. data/vendor/local/include/unicode/stringpiece.h +1 -3
  148. data/vendor/local/include/unicode/stringtriebuilder.h +19 -19
  149. data/vendor/local/include/unicode/stsearch.h +1 -1
  150. data/vendor/local/include/unicode/symtable.h +1 -1
  151. data/vendor/local/include/unicode/tblcoll.h +13 -13
  152. data/vendor/local/include/unicode/timezone.h +5 -5
  153. data/vendor/local/include/unicode/tmunit.h +1 -1
  154. data/vendor/local/include/unicode/tmutamt.h +1 -1
  155. data/vendor/local/include/unicode/tmutfmt.h +1 -1
  156. data/vendor/local/include/unicode/translit.h +2 -2
  157. data/vendor/local/include/unicode/tzfmt.h +4 -4
  158. data/vendor/local/include/unicode/tznames.h +3 -5
  159. data/vendor/local/include/unicode/tzrule.h +1 -1
  160. data/vendor/local/include/unicode/tztrans.h +1 -1
  161. data/vendor/local/include/unicode/ubidi.h +11 -8
  162. data/vendor/local/include/unicode/ubiditransform.h +16 -19
  163. data/vendor/local/include/unicode/ubrk.h +61 -4
  164. data/vendor/local/include/unicode/ucal.h +3 -3
  165. data/vendor/local/include/unicode/ucasemap.h +7 -47
  166. data/vendor/local/include/unicode/ucat.h +1 -1
  167. data/vendor/local/include/unicode/uchar.h +62 -37
  168. data/vendor/local/include/unicode/ucharstrie.h +48 -48
  169. data/vendor/local/include/unicode/ucharstriebuilder.h +12 -12
  170. data/vendor/local/include/unicode/uchriter.h +33 -29
  171. data/vendor/local/include/unicode/uclean.h +15 -13
  172. data/vendor/local/include/unicode/ucnv.h +11 -11
  173. data/vendor/local/include/unicode/ucnv_cb.h +1 -1
  174. data/vendor/local/include/unicode/ucnv_err.h +7 -7
  175. data/vendor/local/include/unicode/ucnvsel.h +1 -1
  176. data/vendor/local/include/unicode/ucol.h +6 -6
  177. data/vendor/local/include/unicode/ucoleitr.h +3 -3
  178. data/vendor/local/include/unicode/uconfig.h +8 -5
  179. data/vendor/local/include/unicode/ucsdet.h +7 -3
  180. data/vendor/local/include/unicode/ucurr.h +14 -1
  181. data/vendor/local/include/unicode/udat.h +39 -41
  182. data/vendor/local/include/unicode/udata.h +2 -2
  183. data/vendor/local/include/unicode/udateintervalformat.h +1 -1
  184. data/vendor/local/include/unicode/udatpg.h +56 -5
  185. data/vendor/local/include/unicode/udisplaycontext.h +4 -8
  186. data/vendor/local/include/unicode/uenum.h +5 -3
  187. data/vendor/local/include/unicode/ufieldpositer.h +1 -1
  188. data/vendor/local/include/unicode/uformattable.h +2 -2
  189. data/vendor/local/include/unicode/ugender.h +1 -1
  190. data/vendor/local/include/unicode/uidna.h +2 -2
  191. data/vendor/local/include/unicode/uiter.h +2 -2
  192. data/vendor/local/include/unicode/uldnames.h +1 -1
  193. data/vendor/local/include/unicode/ulistformatter.h +4 -4
  194. data/vendor/local/include/unicode/uloc.h +29 -16
  195. data/vendor/local/include/unicode/ulocdata.h +5 -5
  196. data/vendor/local/include/unicode/umachine.h +81 -38
  197. data/vendor/local/include/unicode/umisc.h +2 -2
  198. data/vendor/local/include/unicode/umsg.h +2 -2
  199. data/vendor/local/include/unicode/unifilt.h +2 -2
  200. data/vendor/local/include/unicode/unifunct.h +1 -1
  201. data/vendor/local/include/unicode/unimatch.h +1 -1
  202. data/vendor/local/include/unicode/unirepl.h +1 -1
  203. data/vendor/local/include/unicode/uniset.h +5 -4
  204. data/vendor/local/include/unicode/unistr.h +322 -208
  205. data/vendor/local/include/unicode/unorm.h +9 -9
  206. data/vendor/local/include/unicode/unorm2.h +3 -26
  207. data/vendor/local/include/unicode/unum.h +71 -11
  208. data/vendor/local/include/unicode/unumsys.h +1 -1
  209. data/vendor/local/include/unicode/uobject.h +2 -2
  210. data/vendor/local/include/unicode/upluralrules.h +51 -6
  211. data/vendor/local/include/unicode/uregex.h +2 -2
  212. data/vendor/local/include/unicode/uregion.h +2 -2
  213. data/vendor/local/include/unicode/ureldatefmt.h +33 -39
  214. data/vendor/local/include/unicode/urename.h +18 -17
  215. data/vendor/local/include/unicode/urep.h +1 -1
  216. data/vendor/local/include/unicode/ures.h +9 -9
  217. data/vendor/local/include/unicode/uscript.h +10 -3
  218. data/vendor/local/include/unicode/usearch.h +3 -3
  219. data/vendor/local/include/unicode/uset.h +2 -2
  220. data/vendor/local/include/unicode/usetiter.h +1 -1
  221. data/vendor/local/include/unicode/ushape.h +3 -3
  222. data/vendor/local/include/unicode/uspoof.h +24 -29
  223. data/vendor/local/include/unicode/usprep.h +7 -7
  224. data/vendor/local/include/unicode/ustdio.h +1 -1
  225. data/vendor/local/include/unicode/ustream.h +2 -9
  226. data/vendor/local/include/unicode/ustring.h +3 -13
  227. data/vendor/local/include/unicode/ustringtrie.h +2 -2
  228. data/vendor/local/include/unicode/utext.h +16 -16
  229. data/vendor/local/include/unicode/utf.h +19 -19
  230. data/vendor/local/include/unicode/utf16.h +128 -8
  231. data/vendor/local/include/unicode/utf32.h +2 -2
  232. data/vendor/local/include/unicode/utf8.h +177 -121
  233. data/vendor/local/include/unicode/utf_old.h +40 -7
  234. data/vendor/local/include/unicode/utmscale.h +8 -1
  235. data/vendor/local/include/unicode/utrace.h +4 -4
  236. data/vendor/local/include/unicode/utrans.h +3 -3
  237. data/vendor/local/include/unicode/utypes.h +13 -10
  238. data/vendor/local/include/unicode/uvernum.h +18 -11
  239. data/vendor/local/include/unicode/uversion.h +10 -4
  240. data/vendor/local/include/unicode/vtzone.h +1 -1
  241. data/vendor/local/lib/cmake/harfbuzz/harfbuzz-config.cmake +1 -1
  242. data/vendor/local/lib/icu/{58.2 → 61.1}/Makefile.inc +7 -7
  243. data/vendor/local/lib/icu/{58.2 → 61.1}/pkgdata.inc +2 -2
  244. data/vendor/local/lib/icu/Makefile.inc +7 -7
  245. data/vendor/local/lib/icu/pkgdata.inc +2 -2
  246. data/vendor/local/lib/icudt.dll +0 -0
  247. data/vendor/local/lib/{icudt58.dll → icudt61.dll} +0 -0
  248. data/vendor/local/lib/icuin.dll +0 -0
  249. data/vendor/local/lib/icuin61.dll +0 -0
  250. data/vendor/local/lib/icuio.dll +0 -0
  251. data/vendor/local/lib/{icuio58.dll → icuio61.dll} +0 -0
  252. data/vendor/local/lib/icutest.dll +0 -0
  253. data/vendor/local/lib/{icutest58.dll → icutest61.dll} +0 -0
  254. data/vendor/local/lib/icutu.dll +0 -0
  255. data/vendor/local/lib/icutu61.dll +0 -0
  256. data/vendor/local/lib/icuuc.dll +0 -0
  257. data/vendor/local/lib/icuuc61.dll +0 -0
  258. data/vendor/local/lib/libfribidi.dll.a +0 -0
  259. data/vendor/local/lib/libgraphene-1.0.dll.a +0 -0
  260. data/vendor/local/lib/libharfbuzz-icu.a +0 -0
  261. data/vendor/local/lib/libharfbuzz-icu.la +3 -3
  262. data/vendor/local/lib/libharfbuzz-subset.dll.a +0 -0
  263. data/vendor/local/lib/libharfbuzz-subset.la +3 -3
  264. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  265. data/vendor/local/lib/libharfbuzz.la +3 -3
  266. data/vendor/local/lib/libicudt.dll.a +0 -0
  267. data/vendor/local/lib/libicuin.dll.a +0 -0
  268. data/vendor/local/lib/libicuio.dll.a +0 -0
  269. data/vendor/local/lib/libicutest.dll.a +0 -0
  270. data/vendor/local/lib/libicutu.dll.a +0 -0
  271. data/vendor/local/lib/libicuuc.dll.a +0 -0
  272. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  273. data/vendor/local/lib/libpango-1.0.la +2 -2
  274. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  275. data/vendor/local/lib/libpangocairo-1.0.la +2 -2
  276. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  277. data/vendor/local/lib/libpangoft2-1.0.la +2 -2
  278. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  279. data/vendor/local/lib/libpangowin32-1.0.la +2 -2
  280. data/vendor/local/lib/pkgconfig/fribidi.pc +1 -1
  281. data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +1 -1
  282. data/vendor/local/lib/pkgconfig/harfbuzz-subset.pc +1 -1
  283. data/vendor/local/lib/pkgconfig/harfbuzz.pc +1 -1
  284. data/vendor/local/lib/pkgconfig/icu-i18n.pc +7 -7
  285. data/vendor/local/lib/pkgconfig/icu-io.pc +7 -7
  286. data/vendor/local/lib/pkgconfig/icu-uc.pc +7 -7
  287. data/vendor/local/lib/pkgconfig/pango.pc +2 -2
  288. data/vendor/local/lib/pkgconfig/pangocairo.pc +2 -2
  289. data/vendor/local/lib/pkgconfig/pangoft2.pc +2 -2
  290. data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
  291. data/vendor/local/libexec/installed-tests/graphene-1.0/box.exe +0 -0
  292. data/vendor/local/libexec/installed-tests/graphene-1.0/euler.exe +0 -0
  293. data/vendor/local/libexec/installed-tests/graphene-1.0/frustum.exe +0 -0
  294. data/vendor/local/libexec/installed-tests/graphene-1.0/matrix.exe +0 -0
  295. data/vendor/local/libexec/installed-tests/graphene-1.0/plane.exe +0 -0
  296. data/vendor/local/libexec/installed-tests/graphene-1.0/point.exe +0 -0
  297. data/vendor/local/libexec/installed-tests/graphene-1.0/point3d.exe +0 -0
  298. data/vendor/local/libexec/installed-tests/graphene-1.0/quad.exe +0 -0
  299. data/vendor/local/libexec/installed-tests/graphene-1.0/quaternion.exe +0 -0
  300. data/vendor/local/libexec/installed-tests/graphene-1.0/ray.exe +0 -0
  301. data/vendor/local/libexec/installed-tests/graphene-1.0/rect.exe +0 -0
  302. data/vendor/local/libexec/installed-tests/graphene-1.0/simd.exe +0 -0
  303. data/vendor/local/libexec/installed-tests/graphene-1.0/size.exe +0 -0
  304. data/vendor/local/libexec/installed-tests/graphene-1.0/sphere.exe +0 -0
  305. data/vendor/local/libexec/installed-tests/graphene-1.0/triangle.exe +0 -0
  306. data/vendor/local/libexec/installed-tests/graphene-1.0/vec2.exe +0 -0
  307. data/vendor/local/libexec/installed-tests/graphene-1.0/vec3.exe +0 -0
  308. data/vendor/local/libexec/installed-tests/graphene-1.0/vec4.exe +0 -0
  309. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-Buffers.html +5 -3
  310. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +5 -0
  311. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +1 -0
  312. data/vendor/local/share/gtk-doc/html/harfbuzz/pt02.html +1 -1
  313. data/vendor/local/share/gtk-doc/html/pango/index.html +1 -1
  314. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +2 -2
  315. data/vendor/local/share/icu/{58.2 → 61.1}/LICENSE +32 -3
  316. data/vendor/local/share/icu/{58.2 → 61.1}/config/mh-mingw64 +4 -0
  317. data/vendor/local/share/icu/{58.2 → 61.1}/install-sh +0 -0
  318. data/vendor/local/share/icu/{58.2 → 61.1}/mkinstalldirs +0 -0
  319. data/vendor/local/share/man/man1/derb.1 +2 -2
  320. data/vendor/local/share/man/man1/genbrk.1 +2 -2
  321. data/vendor/local/share/man/man1/gencfu.1 +1 -1
  322. data/vendor/local/share/man/man1/gencnval.1 +3 -3
  323. data/vendor/local/share/man/man1/gendict.1 +2 -2
  324. data/vendor/local/share/man/man1/genrb.1 +3 -3
  325. data/vendor/local/share/man/man1/icu-config.1 +2 -2
  326. data/vendor/local/share/man/man1/makeconv.1 +5 -5
  327. data/vendor/local/share/man/man1/pkgdata.1 +2 -2
  328. data/vendor/local/share/man/man1/uconv.1 +9 -9
  329. data/vendor/local/share/man/man3/fribidi_charset_to_unicode.3 +98 -0
  330. data/vendor/local/share/man/man3/fribidi_debug_status.3 +44 -0
  331. data/vendor/local/share/man/man3/fribidi_get_bidi_type.3 +58 -0
  332. data/vendor/local/share/man/man3/fribidi_get_bidi_type_name.3 +56 -0
  333. data/vendor/local/share/man/man3/fribidi_get_bidi_types.3 +68 -0
  334. data/vendor/local/share/man/man3/fribidi_get_bracket.3 +59 -0
  335. data/vendor/local/share/man/man3/fribidi_get_bracket_types.3 +73 -0
  336. data/vendor/local/share/man/man3/fribidi_get_joining_type.3 +87 -0
  337. data/vendor/local/share/man/man3/fribidi_get_joining_type_name.3 +83 -0
  338. data/vendor/local/share/man/man3/fribidi_get_joining_types.3 +96 -0
  339. data/vendor/local/share/man/man3/fribidi_get_mirror_char.3 +68 -0
  340. data/vendor/local/share/man/man3/fribidi_get_par_direction.3 +100 -0
  341. data/vendor/local/share/man/man3/fribidi_get_par_embedding_levels.3 +98 -0
  342. data/vendor/local/share/man/man3/fribidi_get_par_embedding_levels_ex.3 +114 -0
  343. data/vendor/local/share/man/man3/fribidi_get_type.3 +50 -0
  344. data/vendor/local/share/man/man3/fribidi_get_type_internal.3 +50 -0
  345. data/vendor/local/share/man/man3/fribidi_join_arabic.3 +92 -0
  346. data/vendor/local/share/man/man3/fribidi_log2vis.3 +124 -0
  347. data/vendor/local/share/man/man3/fribidi_log2vis_get_embedding_levels.3 +97 -0
  348. data/vendor/local/share/man/man3/fribidi_mirroring_status.3 +44 -0
  349. data/vendor/local/share/man/man3/fribidi_parse_charset.3 +78 -0
  350. data/vendor/local/share/man/man3/fribidi_remove_bidi_marks.3 +96 -0
  351. data/vendor/local/share/man/man3/fribidi_reorder_line.3 +146 -0
  352. data/vendor/local/share/man/man3/fribidi_reorder_nsm_status.3 +44 -0
  353. data/vendor/local/share/man/man3/fribidi_set_debug.3 +48 -0
  354. data/vendor/local/share/man/man3/fribidi_set_mirroring.3 +58 -0
  355. data/vendor/local/share/man/man3/fribidi_set_reorder_nsm.3 +60 -0
  356. data/vendor/local/share/man/man3/fribidi_shape.3 +89 -0
  357. data/vendor/local/share/man/man3/fribidi_shape_arabic.3 +95 -0
  358. data/vendor/local/share/man/man3/fribidi_shape_mirroring.3 +71 -0
  359. data/vendor/local/share/man/man3/fribidi_unicode_to_charset.3 +99 -0
  360. data/vendor/local/share/man/man8/genccode.8 +2 -2
  361. data/vendor/local/share/man/man8/gencmn.8 +3 -3
  362. data/vendor/local/share/man/man8/gensprep.8 +3 -3
  363. data/vendor/local/share/man/man8/icupkg.8 +1 -1
  364. metadata +58 -59
  365. data/ext/pango/rb-pango-context.c +0 -79
  366. data/vendor/local/lib/icuin58.dll +0 -0
  367. data/vendor/local/lib/icutu58.dll +0 -0
  368. data/vendor/local/lib/icuuc58.dll +0 -0
@@ -0,0 +1,25 @@
1
+ # Ruby/Pango
2
+
3
+ Ruby/Pango is a Ruby binding of pango based on GObject-Introspection.
4
+
5
+ ## Requirements
6
+
7
+ * [Ruby/GObject-Introspection](https://github.com/ruby-gnome2/ruby-gnome2)
8
+ * [Ruby/GLib2](https://github.com/ruby-gnome2/ruby-gnome2)
9
+ * [cairo/rcairo](http://cairographics.org/)
10
+
11
+ ## Install
12
+
13
+ gem install pango
14
+
15
+ ## License
16
+
17
+ Copyright (c) 2017 Ruby-GNOME2 Project Team
18
+
19
+ This program is free software. You can distribute/modify this program
20
+ under the terms of the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1.
21
+
22
+ ## Project Websites
23
+
24
+ * https://ruby-gnome2.osdn.jp/
25
+ * https://github.com/ruby-gnome2/ruby-gnome2
data/Rakefile CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- ruby -*-
2
2
  #
3
- # Copyright (C) 2011-2016 Ruby-GNOME2 Project Team
3
+ # Copyright (C) 2011-2018 Ruby-GNOME2 Project Team
4
4
  #
5
5
  # This library is free software; you can redistribute it and/or
6
6
  # modify it under the terms of the GNU Lesser General Public
@@ -19,9 +19,10 @@
19
19
  $LOAD_PATH.unshift("./../glib2/lib")
20
20
  require "gnome2/rake/package-task"
21
21
 
22
- package_task = GNOME2::Rake::PackageTask.new do |package|
23
- package.summary = "Ruby/Pango is a Ruby binding of pango-1.x."
24
- package.description = "Ruby/Pango is a Ruby binding of pango-1.x."
22
+ package_name = File.basename(__dir__)
23
+ spec = Gem::Specification.load("#{package_name}.gemspec")
24
+
25
+ GNOME2::Rake::PackageTask.define(spec, __dir__) do |package|
25
26
  package.dependency.gem.runtime = [
26
27
  ["cairo", ">= 1.14.0"],
27
28
  "cairo-gobject",
@@ -66,7 +67,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
66
67
  :name => "harfbuzz",
67
68
  :download_site => :freedesktop,
68
69
  :label => "HarfBuzz",
69
- :version => "1.7.6",
70
+ :version => "1.8.0",
70
71
  :compression_method => "bz2",
71
72
  :windows => {
72
73
  :configure_args => [
@@ -94,7 +95,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
94
95
  :name => "fribidi/fribidi",
95
96
  :download_site => :github,
96
97
  :label => "FriBidi",
97
- :version => "v1.0.2",
98
+ :version => "v1.0.3",
98
99
  :compression_method => "bz2",
99
100
  :windows => {
100
101
  :configure_args => [
@@ -107,7 +108,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
107
108
  :name => "pango",
108
109
  :download_site => :gnome,
109
110
  :label => "Pango",
110
- :version => "1.42.0",
111
+ :version => "1.42.1",
111
112
  :compression_method => "xz",
112
113
  :windows => {
113
114
  :configure_args => [
@@ -118,4 +119,3 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
118
119
  },
119
120
  ]
120
121
  end
121
- package_task.define
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  #
3
- # Copyright (C) 2017 Ruby-GNOME2 Project Team
3
+ # Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
4
4
  #
5
5
  # This library is free software; you can redistribute it and/or
6
6
  # modify it under the terms of the GNU Lesser General Public
@@ -40,6 +40,7 @@ require "mkmf-gnome2"
40
40
 
41
41
  depended_packages = [
42
42
  "glib2",
43
+ "gobject-introspection",
43
44
  ]
44
45
  depended_packages.each do |package|
45
46
  directory = "#{package}#{version_suffix}"
@@ -77,6 +78,8 @@ if PKGConfig.have_package("pangoft2")
77
78
  $defs << " -DHAVE_PANGO_FT2"
78
79
  end
79
80
 
81
+ PKGConfig.have_package("gobject-introspection-1.0")
82
+
80
83
  pango_header = "pango/pango.h"
81
84
  have_func("pango_attr_strikethrough_color_new", pango_header)
82
85
  have_func("pango_attr_underline_color_new", pango_header)
@@ -1,3 +1,4 @@
1
1
  EXPORTS
2
2
  Init_pango
3
3
  pango_attr_list_get_type
4
+ rbpango_attribute_from_ruby
@@ -1,6 +1,6 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
2
  /*
3
- * Copyright (C) 2017 Ruby-GNOME2 Project Team
3
+ * Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
4
4
  *
5
5
  * This library is free software; you can redistribute it and/or
6
6
  * modify it under the terms of the GNU Lesser General Public
@@ -30,7 +30,7 @@ rg_insert(VALUE self, VALUE rb_attribute)
30
30
  if (NIL_P(rb_attribute))
31
31
  return self;
32
32
 
33
- attribute = DATA_PTR(rb_attribute);
33
+ attribute = rbpango_attribute_from_ruby(rb_attribute);
34
34
  pango_attr_list_insert(RVAL2PANGOATTRLIST(self),
35
35
  pango_attribute_copy(attribute));
36
36
 
@@ -45,7 +45,7 @@ rg_insert_before(VALUE self, VALUE rb_attribute)
45
45
  if (NIL_P(rb_attribute))
46
46
  return self;
47
47
 
48
- attribute = DATA_PTR(rb_attribute);
48
+ attribute = rbpango_attribute_from_ruby(rb_attribute);
49
49
  pango_attr_list_insert_before(RVAL2PANGOATTRLIST(self),
50
50
  pango_attribute_copy(attribute));
51
51
 
@@ -1,6 +1,6 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
2
  /*
3
- * Copyright (C) 2017 Ruby-GNOME2 Project Team
3
+ * Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
4
4
  *
5
5
  * This library is free software; you can redistribute it and/or
6
6
  * modify it under the terms of the GNU Lesser General Public
@@ -20,6 +20,17 @@
20
20
 
21
21
  #include "rb-pango-private.h"
22
22
 
23
+ static GType
24
+ pango_attribute_get_type(void)
25
+ {
26
+ static GType our_type = 0;
27
+ if (our_type == 0)
28
+ our_type = g_boxed_type_register_static("PangoAttribute",
29
+ (GBoxedCopyFunc)pango_attribute_copy,
30
+ (GBoxedFreeFunc)pango_attribute_destroy);
31
+ return our_type;
32
+ }
33
+
23
34
  VALUE
24
35
  rbpango_attribute_to_ruby(PangoAttribute *attribute)
25
36
  {
@@ -30,26 +41,16 @@ rbpango_attribute_to_ruby(PangoAttribute *attribute)
30
41
  rb_attr_type = GENUM2RVAL(attribute->klass->type, PANGO_TYPE_ATTR_TYPE);
31
42
  CONST_ID(id_to_class, "to_class");
32
43
  klass = rb_funcall(rb_attr_type, id_to_class, 0);
33
- return Data_Wrap_Struct(klass,
34
- NULL,
35
- pango_attribute_destroy,
36
- pango_attribute_copy(attribute));
44
+ return rbgobj_make_boxed_raw(pango_attribute_copy(attribute),
45
+ pango_attribute_get_type(),
46
+ klass,
47
+ 0);
37
48
  }
38
49
 
39
50
  PangoAttribute *
40
51
  rbpango_attribute_from_ruby(VALUE rb_attribute)
41
52
  {
42
- PangoAttribute *attribute;
43
-
44
- Data_Get_Struct(rb_attribute, PangoAttribute, attribute);
45
-
46
- return attribute;
47
- }
48
-
49
- static VALUE
50
- rbpango_attribute_allocate(VALUE klass)
51
- {
52
- return Data_Wrap_Struct(klass, NULL, pango_attribute_destroy, 0);
53
+ return rbgobj_boxed_get(rb_attribute, pango_attribute_get_type());
53
54
  }
54
55
 
55
56
  static VALUE
@@ -68,7 +69,7 @@ rbpango_attr_language_initialize(VALUE self, VALUE rb_language)
68
69
  PangoLanguage *language;
69
70
 
70
71
  language = RVAL2PANGOLANGUAGE(rb_language);
71
- DATA_PTR(self) = pango_attr_language_new(language);
72
+ G_INITIALIZE(self, pango_attr_language_new(language));
72
73
 
73
74
  return Qnil;
74
75
  }
@@ -76,7 +77,7 @@ rbpango_attr_language_initialize(VALUE self, VALUE rb_language)
76
77
  static VALUE
77
78
  rbpango_attr_family_initialize(VALUE self, VALUE rb_family)
78
79
  {
79
- DATA_PTR(self) = pango_attr_family_new(RVAL2CSTR(rb_family));
80
+ G_INITIALIZE(self, pango_attr_family_new(RVAL2CSTR(rb_family)));
80
81
 
81
82
  return Qnil;
82
83
  }
@@ -84,7 +85,7 @@ rbpango_attr_family_initialize(VALUE self, VALUE rb_family)
84
85
  static VALUE
85
86
  rbpango_attr_style_initialize(VALUE self, VALUE rb_style)
86
87
  {
87
- DATA_PTR(self) = pango_attr_style_new(RVAL2PANGOSTYLE(rb_style));
88
+ G_INITIALIZE(self, pango_attr_style_new(RVAL2PANGOSTYLE(rb_style)));
88
89
 
89
90
  return Qnil;
90
91
  }
@@ -102,7 +103,7 @@ rbpango_attr_style_get_value(VALUE self)
102
103
  static VALUE
103
104
  rbpango_attr_weight_initialize(VALUE self, VALUE rb_weight)
104
105
  {
105
- DATA_PTR(self) = pango_attr_weight_new(RVAL2PANGOWEIGHT(rb_weight));
106
+ G_INITIALIZE(self, pango_attr_weight_new(RVAL2PANGOWEIGHT(rb_weight)));
106
107
 
107
108
  return Qnil;
108
109
  }
@@ -120,7 +121,7 @@ rbpango_attr_weight_get_value(VALUE self)
120
121
  static VALUE
121
122
  rbpango_attr_variant_initialize(VALUE self, VALUE rb_variant)
122
123
  {
123
- DATA_PTR(self) = pango_attr_variant_new(RVAL2PANGOVARIANT(rb_variant));
124
+ G_INITIALIZE(self, pango_attr_variant_new(RVAL2PANGOVARIANT(rb_variant)));
124
125
 
125
126
  return Qnil;
126
127
  }
@@ -138,7 +139,7 @@ rbpango_attr_variant_get_value(VALUE self)
138
139
  static VALUE
139
140
  rbpango_attr_stretch_initialize(VALUE self, VALUE rb_stretch)
140
141
  {
141
- DATA_PTR(self) = pango_attr_stretch_new(RVAL2PANGOSTRETCH(rb_stretch));
142
+ G_INITIALIZE(self, pango_attr_stretch_new(RVAL2PANGOSTRETCH(rb_stretch)));
142
143
 
143
144
  return Qnil;
144
145
  }
@@ -159,7 +160,7 @@ rbpango_attr_size_initialize(VALUE self, VALUE rb_size)
159
160
  gint size;
160
161
 
161
162
  size = NUM2INT(rb_size);
162
- DATA_PTR(self) = pango_attr_size_new(size);
163
+ G_INITIALIZE(self, pango_attr_size_new(size));
163
164
 
164
165
  return Qnil;
165
166
  }
@@ -180,7 +181,7 @@ rbpango_attr_font_desc_initialize(VALUE self, VALUE rb_font_desc)
180
181
  rb_intern("new"), 1, rb_font_desc);
181
182
  }
182
183
  font_desc = RVAL2PANGOFONTDESCRIPTION(rb_font_desc);
183
- DATA_PTR(self) = pango_attr_font_desc_new(font_desc);
184
+ G_INITIALIZE(self, pango_attr_font_desc_new(font_desc));
184
185
 
185
186
  return Qnil;
186
187
  }
@@ -191,9 +192,10 @@ rbpango_attr_foregound_initialize(VALUE self,
191
192
  VALUE rb_green,
192
193
  VALUE rb_blue)
193
194
  {
194
- DATA_PTR(self) = pango_attr_foreground_new(NUM2UINT(rb_red),
195
- NUM2UINT(rb_green),
196
- NUM2UINT(rb_blue));
195
+ G_INITIALIZE(self,
196
+ pango_attr_foreground_new(NUM2UINT(rb_red),
197
+ NUM2UINT(rb_green),
198
+ NUM2UINT(rb_blue)));
197
199
 
198
200
  return Qnil;
199
201
  }
@@ -204,9 +206,10 @@ rbpango_attr_background_initialize(VALUE self,
204
206
  VALUE rb_green,
205
207
  VALUE rb_blue)
206
208
  {
207
- DATA_PTR(self) = pango_attr_background_new(NUM2UINT(rb_red),
208
- NUM2UINT(rb_green),
209
- NUM2UINT(rb_blue));
209
+ G_INITIALIZE(self,
210
+ pango_attr_background_new(NUM2UINT(rb_red),
211
+ NUM2UINT(rb_green),
212
+ NUM2UINT(rb_blue)));
210
213
 
211
214
  return Qnil;
212
215
  }
@@ -214,7 +217,8 @@ rbpango_attr_background_initialize(VALUE self,
214
217
  static VALUE
215
218
  rbpango_attr_underline_initialize(VALUE self, VALUE rb_underline)
216
219
  {
217
- DATA_PTR(self) = pango_attr_underline_new(RVAL2PANGOUNDERLINE(rb_underline));
220
+ G_INITIALIZE(self,
221
+ pango_attr_underline_new(RVAL2PANGOUNDERLINE(rb_underline)));
218
222
 
219
223
  return Qnil;
220
224
  }
@@ -232,7 +236,8 @@ rbpango_attr_underline_get_value(VALUE self)
232
236
  static VALUE
233
237
  rbpango_attr_strikethrough_initialize(VALUE self, VALUE rb_strikethrough)
234
238
  {
235
- DATA_PTR(self) = pango_attr_strikethrough_new(RVAL2CBOOL(rb_strikethrough));
239
+ G_INITIALIZE(self,
240
+ pango_attr_strikethrough_new(RVAL2CBOOL(rb_strikethrough)));
236
241
 
237
242
  return Qnil;
238
243
  }
@@ -240,7 +245,7 @@ rbpango_attr_strikethrough_initialize(VALUE self, VALUE rb_strikethrough)
240
245
  static VALUE
241
246
  rbpango_attr_rise_initialize(VALUE self, VALUE rb_rise)
242
247
  {
243
- DATA_PTR(self) = pango_attr_rise_new(NUM2INT(rb_rise));
248
+ G_INITIALIZE(self, pango_attr_rise_new(NUM2INT(rb_rise)));
244
249
 
245
250
  return Qnil;
246
251
  }
@@ -260,14 +265,15 @@ rbpango_attr_shape_initialize(int argc, VALUE *argv, VALUE self)
260
265
  logical_rect = RVAL2PANGORECTANGLE(rb_logical_rect);
261
266
 
262
267
  if (NIL_P(rb_data)) {
263
- DATA_PTR(self) = pango_attr_shape_new(ink_rect, logical_rect);
268
+ G_INITIALIZE(self, pango_attr_shape_new(ink_rect, logical_rect));
264
269
  } else {
265
270
  G_RELATIVE(self, rb_data);
266
- DATA_PTR(self) = pango_attr_shape_new_with_data(ink_rect,
267
- logical_rect,
268
- (gpointer)rb_data,
269
- NULL,
270
- NULL);
271
+ G_INITIALIZE(self,
272
+ pango_attr_shape_new_with_data(ink_rect,
273
+ logical_rect,
274
+ (gpointer)rb_data,
275
+ NULL,
276
+ NULL));
271
277
  }
272
278
 
273
279
  return Qnil;
@@ -279,7 +285,7 @@ rbpango_attr_shape_get_data(VALUE self)
279
285
  PangoAttrShape *attr_shape;
280
286
  VALUE rb_data;
281
287
 
282
- Data_Get_Struct(self, PangoAttrShape, attr_shape);
288
+ attr_shape = (PangoAttrShape *)rbpango_attribute_from_ruby(self);
283
289
  rb_data = (VALUE)(attr_shape->data);
284
290
  return rb_data;
285
291
  }
@@ -287,7 +293,7 @@ rbpango_attr_shape_get_data(VALUE self)
287
293
  static VALUE
288
294
  rbpango_attr_scale_initialize(VALUE self, VALUE rb_scale)
289
295
  {
290
- DATA_PTR(self) = pango_attr_scale_new(NUM2DBL(rb_scale));
296
+ G_INITIALIZE(self, pango_attr_scale_new(NUM2DBL(rb_scale)));
291
297
 
292
298
  return Qnil;
293
299
  }
@@ -295,7 +301,7 @@ rbpango_attr_scale_initialize(VALUE self, VALUE rb_scale)
295
301
  static VALUE
296
302
  rbpango_attr_fallback_initialize(VALUE self, VALUE rb_enable_fallback)
297
303
  {
298
- DATA_PTR(self) = pango_attr_fallback_new(RVAL2CBOOL(rb_enable_fallback));
304
+ G_INITIALIZE(self, pango_attr_fallback_new(RVAL2CBOOL(rb_enable_fallback)));
299
305
 
300
306
  return Qnil;
301
307
  }
@@ -303,7 +309,8 @@ rbpango_attr_fallback_initialize(VALUE self, VALUE rb_enable_fallback)
303
309
  static VALUE
304
310
  rbpango_attr_letter_spacing_initialize(VALUE self, VALUE rb_letter_spacing)
305
311
  {
306
- DATA_PTR(self) = pango_attr_letter_spacing_new(NUM2INT(rb_letter_spacing));
312
+ G_INITIALIZE(self,
313
+ pango_attr_letter_spacing_new(NUM2INT(rb_letter_spacing)));
307
314
 
308
315
  return Qnil;
309
316
  }
@@ -314,9 +321,10 @@ rbpango_attr_underline_color_initialize(VALUE self,
314
321
  VALUE rb_green,
315
322
  VALUE rb_blue)
316
323
  {
317
- DATA_PTR(self) = pango_attr_underline_color_new(NUM2UINT(rb_red),
318
- NUM2UINT(rb_green),
319
- NUM2UINT(rb_blue));
324
+ G_INITIALIZE(self,
325
+ pango_attr_underline_color_new(NUM2UINT(rb_red),
326
+ NUM2UINT(rb_green),
327
+ NUM2UINT(rb_blue)));
320
328
 
321
329
  return Qnil;
322
330
  }
@@ -327,9 +335,10 @@ rbpango_attr_strikethrough_color_initialize(VALUE self,
327
335
  VALUE rb_green,
328
336
  VALUE rb_blue)
329
337
  {
330
- DATA_PTR(self) = pango_attr_strikethrough_color_new(NUM2UINT(rb_red),
331
- NUM2UINT(rb_green),
332
- NUM2UINT(rb_blue));
338
+ G_INITIALIZE(self,
339
+ pango_attr_strikethrough_color_new(NUM2UINT(rb_red),
340
+ NUM2UINT(rb_green),
341
+ NUM2UINT(rb_blue)));
333
342
 
334
343
  return Qnil;
335
344
  }
@@ -337,7 +346,8 @@ rbpango_attr_strikethrough_color_initialize(VALUE self,
337
346
  static VALUE
338
347
  rbpango_attr_absolute_size_initialize(VALUE self, VALUE rb_absolute_size)
339
348
  {
340
- DATA_PTR(self) = pango_attr_size_new_absolute(NUM2INT(rb_absolute_size));
349
+ G_INITIALIZE(self,
350
+ pango_attr_size_new_absolute(NUM2INT(rb_absolute_size)));
341
351
 
342
352
  return Qnil;
343
353
  }
@@ -345,7 +355,7 @@ rbpango_attr_absolute_size_initialize(VALUE self, VALUE rb_absolute_size)
345
355
  static VALUE
346
356
  rbpango_attr_gravity_initialize(VALUE self, VALUE rb_gravity)
347
357
  {
348
- DATA_PTR(self) = pango_attr_gravity_new(RVAL2PANGOGRAVITY(rb_gravity));
358
+ G_INITIALIZE(self, pango_attr_gravity_new(RVAL2PANGOGRAVITY(rb_gravity)));
349
359
 
350
360
  return Qnil;
351
361
  }
@@ -366,7 +376,7 @@ rbpango_attr_gravity_hint_initialize(VALUE self, VALUE rb_gravity_hint)
366
376
  PangoGravityHint hint;
367
377
 
368
378
  hint = RVAL2PANGOGRAVITYHINT(rb_gravity_hint);
369
- DATA_PTR(self) = pango_attr_gravity_hint_new(hint);
379
+ G_INITIALIZE(self, pango_attr_gravity_hint_new(hint));
370
380
 
371
381
  return Qnil;
372
382
  }
@@ -384,7 +394,8 @@ rbpango_attr_gravity_hint_get_value(VALUE self)
384
394
  static VALUE
385
395
  rbpango_attr_font_features_initialize(VALUE self, VALUE rb_font_features)
386
396
  {
387
- DATA_PTR(self) = pango_attr_font_features_new(RVAL2CSTR(rb_font_features));
397
+ G_INITIALIZE(self,
398
+ pango_attr_font_features_new(RVAL2CSTR(rb_font_features)));
388
399
 
389
400
  return Qnil;
390
401
  }
@@ -392,7 +403,7 @@ rbpango_attr_font_features_initialize(VALUE self, VALUE rb_font_features)
392
403
  static VALUE
393
404
  rbpango_attr_foreground_alpha_initialize(VALUE self, VALUE rb_alpha)
394
405
  {
395
- DATA_PTR(self) = pango_attr_foreground_alpha_new(NUM2UINT(rb_alpha));
406
+ G_INITIALIZE(self, pango_attr_foreground_alpha_new(NUM2UINT(rb_alpha)));
396
407
 
397
408
  return Qnil;
398
409
  }
@@ -400,7 +411,7 @@ rbpango_attr_foreground_alpha_initialize(VALUE self, VALUE rb_alpha)
400
411
  static VALUE
401
412
  rbpango_attr_background_alpha_initialize(VALUE self, VALUE rb_alpha)
402
413
  {
403
- DATA_PTR(self) = pango_attr_background_alpha_new(NUM2UINT(rb_alpha));
414
+ G_INITIALIZE(self, pango_attr_background_alpha_new(NUM2UINT(rb_alpha)));
404
415
 
405
416
  return Qnil;
406
417
  }
@@ -440,8 +451,7 @@ rbpango_attribute_init(VALUE mPango)
440
451
  VALUE cAttrForegroundAlpha;
441
452
  VALUE cAttrBackgroundAlpha;
442
453
 
443
- cAttribute = rb_define_class_under(mPango, "Attribute", rb_cData);
444
- rb_define_alloc_func(cAttribute, rbpango_attribute_allocate);
454
+ cAttribute = G_DEF_CLASS(pango_attribute_get_type(), "Attribute", mPango);
445
455
 
446
456
  #define DEFINE_ABSTRACT_ATTRIBUTE_BEGIN(ClassName, parent) do { \
447
457
  c ## ClassName = rb_define_class_under(mPango, \