cairo 1.14.0-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of cairo might be problematic. Click here for more details.

Files changed (636) hide show
  1. checksums.yaml +7 -0
  2. data/AUTHORS +7 -0
  3. data/COPYING +59 -0
  4. data/GPL +340 -0
  5. data/Gemfile +5 -0
  6. data/NEWS +429 -0
  7. data/README.rdoc +120 -0
  8. data/Rakefile +620 -0
  9. data/ext/cairo/cairo.def +140 -0
  10. data/ext/cairo/depend +3 -0
  11. data/ext/cairo/extconf.rb +202 -0
  12. data/ext/cairo/rb_cairo.c +111 -0
  13. data/ext/cairo/rb_cairo.h +348 -0
  14. data/ext/cairo/rb_cairo_constants.c +673 -0
  15. data/ext/cairo/rb_cairo_context.c +1741 -0
  16. data/ext/cairo/rb_cairo_device.c +475 -0
  17. data/ext/cairo/rb_cairo_exception.c +446 -0
  18. data/ext/cairo/rb_cairo_font_extents.c +200 -0
  19. data/ext/cairo/rb_cairo_font_face.c +726 -0
  20. data/ext/cairo/rb_cairo_font_options.c +197 -0
  21. data/ext/cairo/rb_cairo_glyph.c +161 -0
  22. data/ext/cairo/rb_cairo_io.c +166 -0
  23. data/ext/cairo/rb_cairo_io.h +44 -0
  24. data/ext/cairo/rb_cairo_matrix.c +366 -0
  25. data/ext/cairo/rb_cairo_path.c +459 -0
  26. data/ext/cairo/rb_cairo_pattern.c +1192 -0
  27. data/ext/cairo/rb_cairo_private.c +255 -0
  28. data/ext/cairo/rb_cairo_private.h +129 -0
  29. data/ext/cairo/rb_cairo_rectangle.c +83 -0
  30. data/ext/cairo/rb_cairo_region.c +385 -0
  31. data/ext/cairo/rb_cairo_scaled_font.c +235 -0
  32. data/ext/cairo/rb_cairo_surface.c +2284 -0
  33. data/ext/cairo/rb_cairo_text_cluster.c +151 -0
  34. data/ext/cairo/rb_cairo_text_extents.c +221 -0
  35. data/lib/2.0/cairo.so +0 -0
  36. data/lib/2.1/cairo.so +0 -0
  37. data/lib/2.2/cairo.so +0 -0
  38. data/lib/cairo.rb +154 -0
  39. data/lib/cairo/color.rb +267 -0
  40. data/lib/cairo/colors.rb +656 -0
  41. data/lib/cairo/constants.rb +24 -0
  42. data/lib/cairo/context.rb +29 -0
  43. data/lib/cairo/context/blur.rb +45 -0
  44. data/lib/cairo/context/circle.rb +9 -0
  45. data/lib/cairo/context/color.rb +11 -0
  46. data/lib/cairo/context/path.rb +117 -0
  47. data/lib/cairo/context/rectangle.rb +33 -0
  48. data/lib/cairo/context/triangle.rb +12 -0
  49. data/lib/cairo/device.rb +13 -0
  50. data/lib/cairo/paper.rb +183 -0
  51. data/lib/cairo/papers.rb +65 -0
  52. data/lib/cairo/path.rb +15 -0
  53. data/lib/cairo/pattern.rb +12 -0
  54. data/lib/cairo/point.rb +7 -0
  55. data/lib/cairo/surface.rb +13 -0
  56. data/samples/agg/aa_test.rb +304 -0
  57. data/samples/blur.rb +46 -0
  58. data/samples/pac-nomralize.rb +170 -0
  59. data/samples/pac-tee.rb +170 -0
  60. data/samples/pac.rb +98 -0
  61. data/samples/png.rb +44 -0
  62. data/samples/scalable.rb +55 -0
  63. data/samples/text-on-path.rb +59 -0
  64. data/samples/text2.rb +130 -0
  65. data/test/cairo-test-utils.rb +44 -0
  66. data/test/run-test.rb +29 -0
  67. data/test/test_color.rb +17 -0
  68. data/test/test_constants.rb +27 -0
  69. data/test/test_context.rb +105 -0
  70. data/test/test_exception.rb +36 -0
  71. data/test/test_font_extents.rb +36 -0
  72. data/test/test_font_face.rb +257 -0
  73. data/test/test_font_options.rb +13 -0
  74. data/test/test_image_surface.rb +28 -0
  75. data/test/test_paper.rb +81 -0
  76. data/test/test_quartz_image_surface.rb +13 -0
  77. data/test/test_raster_source_pattern.rb +162 -0
  78. data/test/test_recording_surface.rb +19 -0
  79. data/test/test_region.rb +102 -0
  80. data/test/test_scaled_font.rb +34 -0
  81. data/test/test_script_device.rb +46 -0
  82. data/test/test_script_surface.rb +13 -0
  83. data/test/test_surface.rb +61 -0
  84. data/test/test_tee_surface.rb +32 -0
  85. data/test/test_text_cluster.rb +32 -0
  86. data/test/test_text_extents.rb +40 -0
  87. data/test/test_text_to_glyphs_data.rb +51 -0
  88. data/test/test_xml_device.rb +22 -0
  89. data/test/test_xml_surface.rb +34 -0
  90. data/vendor/local/bin/fc-cache.exe +0 -0
  91. data/vendor/local/bin/fc-cat.exe +0 -0
  92. data/vendor/local/bin/fc-list.exe +0 -0
  93. data/vendor/local/bin/fc-match.exe +0 -0
  94. data/vendor/local/bin/fc-pattern.exe +0 -0
  95. data/vendor/local/bin/fc-query.exe +0 -0
  96. data/vendor/local/bin/fc-scan.exe +0 -0
  97. data/vendor/local/bin/fc-validate.exe +0 -0
  98. data/vendor/local/bin/freetype-config +163 -0
  99. data/vendor/local/bin/libcairo-2.dll +0 -0
  100. data/vendor/local/bin/libcairo-gobject-2.dll +0 -0
  101. data/vendor/local/bin/libcairo-script-interpreter-2.dll +0 -0
  102. data/vendor/local/bin/libfontconfig-1.dll +0 -0
  103. data/vendor/local/bin/libfreetype-6.dll +0 -0
  104. data/vendor/local/bin/libgcc_s_seh-1.dll +0 -0
  105. data/vendor/local/bin/libpixman-1-0.dll +0 -0
  106. data/vendor/local/bin/libpng-config +127 -0
  107. data/vendor/local/bin/libpng16-16.dll +0 -0
  108. data/vendor/local/bin/libpng16-config +127 -0
  109. data/vendor/local/bin/libstdc++-6.dll +0 -0
  110. data/vendor/local/bin/libwinpthread-1.dll +0 -0
  111. data/vendor/local/bin/libxml2-2.dll +0 -0
  112. data/vendor/local/bin/png-fix-itxt.exe +0 -0
  113. data/vendor/local/bin/pngfix.exe +0 -0
  114. data/vendor/local/bin/xml2-config +106 -0
  115. data/vendor/local/bin/xmlcatalog.exe +0 -0
  116. data/vendor/local/bin/xmllint.exe +0 -0
  117. data/vendor/local/bin/zlib1.dll +0 -0
  118. data/vendor/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf +81 -0
  119. data/vendor/local/etc/fonts/conf.d/20-unhint-small-vera.conf +48 -0
  120. data/vendor/local/etc/fonts/conf.d/30-metric-aliases.conf +546 -0
  121. data/vendor/local/etc/fonts/conf.d/30-urw-aliases.conf +24 -0
  122. data/vendor/local/etc/fonts/conf.d/40-nonlatin.conf +231 -0
  123. data/vendor/local/etc/fonts/conf.d/45-latin.conf +189 -0
  124. data/vendor/local/etc/fonts/conf.d/49-sansserif.conf +21 -0
  125. data/vendor/local/etc/fonts/conf.d/50-user.conf +15 -0
  126. data/vendor/local/etc/fonts/conf.d/51-local.conf +6 -0
  127. data/vendor/local/etc/fonts/conf.d/60-latin.conf +70 -0
  128. data/vendor/local/etc/fonts/conf.d/65-fonts-persian.conf +419 -0
  129. data/vendor/local/etc/fonts/conf.d/65-nonlatin.conf +196 -0
  130. data/vendor/local/etc/fonts/conf.d/69-unifont.conf +28 -0
  131. data/vendor/local/etc/fonts/conf.d/80-delicious.conf +19 -0
  132. data/vendor/local/etc/fonts/conf.d/90-synthetic.conf +64 -0
  133. data/vendor/local/etc/fonts/conf.d/README +23 -0
  134. data/vendor/local/etc/fonts/fonts.conf +155 -0
  135. data/vendor/local/include/cairo/cairo-deprecated.h +123 -0
  136. data/vendor/local/include/cairo/cairo-features.h +31 -0
  137. data/vendor/local/include/cairo/cairo-ft.h +118 -0
  138. data/vendor/local/include/cairo/cairo-gobject.h +192 -0
  139. data/vendor/local/include/cairo/cairo-pdf.h +94 -0
  140. data/vendor/local/include/cairo/cairo-ps.h +116 -0
  141. data/vendor/local/include/cairo/cairo-script-interpreter.h +124 -0
  142. data/vendor/local/include/cairo/cairo-script.h +98 -0
  143. data/vendor/local/include/cairo/cairo-svg.h +84 -0
  144. data/vendor/local/include/cairo/cairo-version.h +8 -0
  145. data/vendor/local/include/cairo/cairo-win32.h +112 -0
  146. data/vendor/local/include/cairo/cairo.h +3153 -0
  147. data/vendor/local/include/fontconfig/fcfreetype.h +59 -0
  148. data/vendor/local/include/fontconfig/fcprivate.h +124 -0
  149. data/vendor/local/include/fontconfig/fontconfig.h +1010 -0
  150. data/vendor/local/include/freetype2/config/ftconfig.h +706 -0
  151. data/vendor/local/include/freetype2/config/ftheader.h +832 -0
  152. data/vendor/local/include/freetype2/config/ftmodule.h +20 -0
  153. data/vendor/local/include/freetype2/config/ftoption.h +846 -0
  154. data/vendor/local/include/freetype2/config/ftstdlib.h +174 -0
  155. data/vendor/local/include/freetype2/freetype.h +4076 -0
  156. data/vendor/local/include/freetype2/ft2build.h +42 -0
  157. data/vendor/local/include/freetype2/ftadvanc.h +182 -0
  158. data/vendor/local/include/freetype2/ftautoh.h +402 -0
  159. data/vendor/local/include/freetype2/ftbbox.h +102 -0
  160. data/vendor/local/include/freetype2/ftbdf.h +210 -0
  161. data/vendor/local/include/freetype2/ftbitmap.h +227 -0
  162. data/vendor/local/include/freetype2/ftbzip2.h +102 -0
  163. data/vendor/local/include/freetype2/ftcache.h +1057 -0
  164. data/vendor/local/include/freetype2/ftcffdrv.h +254 -0
  165. data/vendor/local/include/freetype2/ftchapters.h +121 -0
  166. data/vendor/local/include/freetype2/ftcid.h +166 -0
  167. data/vendor/local/include/freetype2/fterrdef.h +249 -0
  168. data/vendor/local/include/freetype2/fterrors.h +198 -0
  169. data/vendor/local/include/freetype2/ftgasp.h +128 -0
  170. data/vendor/local/include/freetype2/ftglyph.h +620 -0
  171. data/vendor/local/include/freetype2/ftgxval.h +358 -0
  172. data/vendor/local/include/freetype2/ftgzip.h +149 -0
  173. data/vendor/local/include/freetype2/ftimage.h +1322 -0
  174. data/vendor/local/include/freetype2/ftincrem.h +353 -0
  175. data/vendor/local/include/freetype2/ftlcdfil.h +251 -0
  176. data/vendor/local/include/freetype2/ftlist.h +277 -0
  177. data/vendor/local/include/freetype2/ftlzw.h +99 -0
  178. data/vendor/local/include/freetype2/ftmac.h +274 -0
  179. data/vendor/local/include/freetype2/ftmm.h +377 -0
  180. data/vendor/local/include/freetype2/ftmodapi.h +641 -0
  181. data/vendor/local/include/freetype2/ftmoderr.h +194 -0
  182. data/vendor/local/include/freetype2/ftotval.h +203 -0
  183. data/vendor/local/include/freetype2/ftoutln.h +572 -0
  184. data/vendor/local/include/freetype2/ftpfr.h +172 -0
  185. data/vendor/local/include/freetype2/ftrender.h +238 -0
  186. data/vendor/local/include/freetype2/ftsizes.h +159 -0
  187. data/vendor/local/include/freetype2/ftsnames.h +200 -0
  188. data/vendor/local/include/freetype2/ftstroke.h +751 -0
  189. data/vendor/local/include/freetype2/ftsynth.h +81 -0
  190. data/vendor/local/include/freetype2/ftsystem.h +347 -0
  191. data/vendor/local/include/freetype2/fttrigon.h +350 -0
  192. data/vendor/local/include/freetype2/ftttdrv.h +170 -0
  193. data/vendor/local/include/freetype2/fttypes.h +598 -0
  194. data/vendor/local/include/freetype2/ftwinfnt.h +275 -0
  195. data/vendor/local/include/freetype2/ftxf86.h +83 -0
  196. data/vendor/local/include/freetype2/t1tables.h +662 -0
  197. data/vendor/local/include/freetype2/ttnameid.h +1237 -0
  198. data/vendor/local/include/freetype2/tttables.h +787 -0
  199. data/vendor/local/include/freetype2/tttags.h +111 -0
  200. data/vendor/local/include/freetype2/ttunpat.h +59 -0
  201. data/vendor/local/include/libpng16/png.h +3276 -0
  202. data/vendor/local/include/libpng16/pngconf.h +644 -0
  203. data/vendor/local/include/libpng16/pnglibconf.h +208 -0
  204. data/vendor/local/include/libxml2/libxml/DOCBparser.h +96 -0
  205. data/vendor/local/include/libxml2/libxml/HTMLparser.h +306 -0
  206. data/vendor/local/include/libxml2/libxml/HTMLtree.h +147 -0
  207. data/vendor/local/include/libxml2/libxml/SAX.h +173 -0
  208. data/vendor/local/include/libxml2/libxml/SAX2.h +178 -0
  209. data/vendor/local/include/libxml2/libxml/c14n.h +126 -0
  210. data/vendor/local/include/libxml2/libxml/catalog.h +182 -0
  211. data/vendor/local/include/libxml2/libxml/chvalid.h +230 -0
  212. data/vendor/local/include/libxml2/libxml/debugXML.h +217 -0
  213. data/vendor/local/include/libxml2/libxml/dict.h +80 -0
  214. data/vendor/local/include/libxml2/libxml/encoding.h +240 -0
  215. data/vendor/local/include/libxml2/libxml/entities.h +151 -0
  216. data/vendor/local/include/libxml2/libxml/globals.h +509 -0
  217. data/vendor/local/include/libxml2/libxml/hash.h +233 -0
  218. data/vendor/local/include/libxml2/libxml/list.h +137 -0
  219. data/vendor/local/include/libxml2/libxml/nanoftp.h +163 -0
  220. data/vendor/local/include/libxml2/libxml/nanohttp.h +81 -0
  221. data/vendor/local/include/libxml2/libxml/parser.h +1241 -0
  222. data/vendor/local/include/libxml2/libxml/parserInternals.h +644 -0
  223. data/vendor/local/include/libxml2/libxml/pattern.h +100 -0
  224. data/vendor/local/include/libxml2/libxml/relaxng.h +217 -0
  225. data/vendor/local/include/libxml2/libxml/schemasInternals.h +958 -0
  226. data/vendor/local/include/libxml2/libxml/schematron.h +142 -0
  227. data/vendor/local/include/libxml2/libxml/threads.h +84 -0
  228. data/vendor/local/include/libxml2/libxml/tree.h +1310 -0
  229. data/vendor/local/include/libxml2/libxml/uri.h +94 -0
  230. data/vendor/local/include/libxml2/libxml/valid.h +458 -0
  231. data/vendor/local/include/libxml2/libxml/xinclude.h +129 -0
  232. data/vendor/local/include/libxml2/libxml/xlink.h +189 -0
  233. data/vendor/local/include/libxml2/libxml/xmlIO.h +366 -0
  234. data/vendor/local/include/libxml2/libxml/xmlautomata.h +146 -0
  235. data/vendor/local/include/libxml2/libxml/xmlerror.h +945 -0
  236. data/vendor/local/include/libxml2/libxml/xmlexports.h +162 -0
  237. data/vendor/local/include/libxml2/libxml/xmlmemory.h +224 -0
  238. data/vendor/local/include/libxml2/libxml/xmlmodule.h +57 -0
  239. data/vendor/local/include/libxml2/libxml/xmlreader.h +428 -0
  240. data/vendor/local/include/libxml2/libxml/xmlregexp.h +222 -0
  241. data/vendor/local/include/libxml2/libxml/xmlsave.h +88 -0
  242. data/vendor/local/include/libxml2/libxml/xmlschemas.h +246 -0
  243. data/vendor/local/include/libxml2/libxml/xmlschemastypes.h +151 -0
  244. data/vendor/local/include/libxml2/libxml/xmlstring.h +140 -0
  245. data/vendor/local/include/libxml2/libxml/xmlunicode.h +202 -0
  246. data/vendor/local/include/libxml2/libxml/xmlversion.h +489 -0
  247. data/vendor/local/include/libxml2/libxml/xmlwriter.h +488 -0
  248. data/vendor/local/include/libxml2/libxml/xpath.h +557 -0
  249. data/vendor/local/include/libxml2/libxml/xpathInternals.h +632 -0
  250. data/vendor/local/include/libxml2/libxml/xpointer.h +114 -0
  251. data/vendor/local/include/pixman-1/pixman-version.h +50 -0
  252. data/vendor/local/include/pixman-1/pixman.h +1111 -0
  253. data/vendor/local/include/png.h +3276 -0
  254. data/vendor/local/include/pngconf.h +644 -0
  255. data/vendor/local/include/pnglibconf.h +208 -0
  256. data/vendor/local/include/zconf.h +511 -0
  257. data/vendor/local/include/zlib.h +1768 -0
  258. data/vendor/local/lib/cmake/libxml2/libxml2-config.cmake +50 -0
  259. data/vendor/local/lib/fontconfig.def +207 -0
  260. data/vendor/local/lib/libcairo-gobject.a +0 -0
  261. data/vendor/local/lib/libcairo-gobject.dll.a +0 -0
  262. data/vendor/local/lib/libcairo-gobject.la +41 -0
  263. data/vendor/local/lib/libcairo-script-interpreter.a +0 -0
  264. data/vendor/local/lib/libcairo-script-interpreter.dll.a +0 -0
  265. data/vendor/local/lib/libcairo-script-interpreter.la +41 -0
  266. data/vendor/local/lib/libcairo.a +0 -0
  267. data/vendor/local/lib/libcairo.dll.a +0 -0
  268. data/vendor/local/lib/libcairo.la +41 -0
  269. data/vendor/local/lib/libfontconfig.dll.a +0 -0
  270. data/vendor/local/lib/libfontconfig.la +41 -0
  271. data/vendor/local/lib/libfreetype.a +0 -0
  272. data/vendor/local/lib/libfreetype.dll.a +0 -0
  273. data/vendor/local/lib/libfreetype.la +41 -0
  274. data/vendor/local/lib/libpixman-1.a +0 -0
  275. data/vendor/local/lib/libpixman-1.dll.a +0 -0
  276. data/vendor/local/lib/libpixman-1.la +41 -0
  277. data/vendor/local/lib/libpng.a +0 -0
  278. data/vendor/local/lib/libpng.dll.a +0 -0
  279. data/vendor/local/lib/libpng.la +41 -0
  280. data/vendor/local/lib/libpng16.a +0 -0
  281. data/vendor/local/lib/libpng16.dll.a +0 -0
  282. data/vendor/local/lib/libpng16.la +41 -0
  283. data/vendor/local/lib/libxml2.a +0 -0
  284. data/vendor/local/lib/libxml2.dll.a +0 -0
  285. data/vendor/local/lib/libxml2.la +41 -0
  286. data/vendor/local/lib/libz.a +0 -0
  287. data/vendor/local/lib/libz.dll.a +0 -0
  288. data/vendor/local/lib/pkgconfig/cairo-fc.pc +12 -0
  289. data/vendor/local/lib/pkgconfig/cairo-ft.pc +12 -0
  290. data/vendor/local/lib/pkgconfig/cairo-gobject.pc +12 -0
  291. data/vendor/local/lib/pkgconfig/cairo-pdf.pc +12 -0
  292. data/vendor/local/lib/pkgconfig/cairo-png.pc +12 -0
  293. data/vendor/local/lib/pkgconfig/cairo-ps.pc +12 -0
  294. data/vendor/local/lib/pkgconfig/cairo-script.pc +12 -0
  295. data/vendor/local/lib/pkgconfig/cairo-svg.pc +12 -0
  296. data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +12 -0
  297. data/vendor/local/lib/pkgconfig/cairo-win32.pc +12 -0
  298. data/vendor/local/lib/pkgconfig/cairo.pc +13 -0
  299. data/vendor/local/lib/pkgconfig/fontconfig.pc +18 -0
  300. data/vendor/local/lib/pkgconfig/freetype2.pc +14 -0
  301. data/vendor/local/lib/pkgconfig/libpng.pc +11 -0
  302. data/vendor/local/lib/pkgconfig/libpng16.pc +11 -0
  303. data/vendor/local/lib/pkgconfig/libxml-2.0.pc +13 -0
  304. data/vendor/local/lib/pkgconfig/pixman-1.pc +11 -0
  305. data/vendor/local/lib/pkgconfig/zlib.pc +13 -0
  306. data/vendor/local/lib/xml2Conf.sh +8 -0
  307. data/vendor/local/share/aclocal/freetype2.m4 +194 -0
  308. data/vendor/local/share/aclocal/libxml.m4 +188 -0
  309. data/vendor/local/share/doc/libxml2-2.9.2/Copyright +23 -0
  310. data/vendor/local/share/doc/libxml2-2.9.2/examples/testHTML.c +880 -0
  311. data/vendor/local/share/doc/libxml2-2.9.2/examples/testSAX.c +1198 -0
  312. data/vendor/local/share/doc/libxml2-2.9.2/examples/testXPath.c +229 -0
  313. data/vendor/local/share/doc/libxml2-2.9.2/examples/xmllint.c +3801 -0
  314. data/vendor/local/share/doc/libxml2-2.9.2/html/DOM.gif +0 -0
  315. data/vendor/local/share/doc/libxml2-2.9.2/html/FAQ.html +299 -0
  316. data/vendor/local/share/doc/libxml2-2.9.2/html/Libxml2-Logo-180x168.gif +0 -0
  317. data/vendor/local/share/doc/libxml2-2.9.2/html/Libxml2-Logo-90x34.gif +0 -0
  318. data/vendor/local/share/doc/libxml2-2.9.2/html/encoding.html +217 -0
  319. data/vendor/local/share/doc/libxml2-2.9.2/html/examples.xml +751 -0
  320. data/vendor/local/share/doc/libxml2-2.9.2/html/examples.xsl +174 -0
  321. data/vendor/local/share/doc/libxml2-2.9.2/html/html/book1.html +13 -0
  322. data/vendor/local/share/doc/libxml2-2.9.2/html/html/home.png +0 -0
  323. data/vendor/local/share/doc/libxml2-2.9.2/html/html/index.html +13 -0
  324. data/vendor/local/share/doc/libxml2-2.9.2/html/html/left.png +0 -0
  325. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-DOCBparser.html +51 -0
  326. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-HTMLparser.html +184 -0
  327. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-HTMLtree.html +73 -0
  328. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-SAX.html +125 -0
  329. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-SAX2.html +128 -0
  330. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-c14n.html +38 -0
  331. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-catalog.html +142 -0
  332. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-chvalid.html +72 -0
  333. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-debugXML.html +120 -0
  334. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-dict.html +58 -0
  335. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-encoding.html +124 -0
  336. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-entities.html +79 -0
  337. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-globals.html +152 -0
  338. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-hash.html +116 -0
  339. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-lib.html +13 -0
  340. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-list.html +120 -0
  341. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-nanoftp.html +94 -0
  342. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-nanohttp.html +65 -0
  343. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-parser.html +559 -0
  344. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-parserInternals.html +322 -0
  345. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-pattern.html +76 -0
  346. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-relaxng.html +162 -0
  347. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-schemasInternals.html +373 -0
  348. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-schematron.html +81 -0
  349. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-threads.html +72 -0
  350. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-tree.html +990 -0
  351. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-uri.html +73 -0
  352. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-valid.html +289 -0
  353. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xinclude.html +59 -0
  354. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xlink.html +82 -0
  355. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlIO.html +212 -0
  356. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlautomata.html +85 -0
  357. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlerror.html +865 -0
  358. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlexports.html +20 -0
  359. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlmemory.html +107 -0
  360. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlmodule.html +38 -0
  361. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlreader.html +330 -0
  362. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlregexp.html +143 -0
  363. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlsave.html +60 -0
  364. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlschemas.html +185 -0
  365. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlschemastypes.html +123 -0
  366. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlstring.html +108 -0
  367. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlunicode.html +512 -0
  368. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlversion.html +63 -0
  369. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlwriter.html +261 -0
  370. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xpath.html +316 -0
  371. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xpathInternals.html +394 -0
  372. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xpointer.html +83 -0
  373. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xzlib.html +16 -0
  374. data/vendor/local/share/doc/libxml2-2.9.2/html/html/right.png +0 -0
  375. data/vendor/local/share/doc/libxml2-2.9.2/html/html/up.png +0 -0
  376. data/vendor/local/share/doc/libxml2-2.9.2/html/index.html +14 -0
  377. data/vendor/local/share/doc/libxml2-2.9.2/html/io1.c +166 -0
  378. data/vendor/local/share/doc/libxml2-2.9.2/html/io1.res +5 -0
  379. data/vendor/local/share/doc/libxml2-2.9.2/html/io2.c +58 -0
  380. data/vendor/local/share/doc/libxml2-2.9.2/html/io2.res +2 -0
  381. data/vendor/local/share/doc/libxml2-2.9.2/html/libxml.gif +0 -0
  382. data/vendor/local/share/doc/libxml2-2.9.2/html/parse1.c +56 -0
  383. data/vendor/local/share/doc/libxml2-2.9.2/html/parse2.c +72 -0
  384. data/vendor/local/share/doc/libxml2-2.9.2/html/parse3.c +60 -0
  385. data/vendor/local/share/doc/libxml2-2.9.2/html/parse4.c +143 -0
  386. data/vendor/local/share/doc/libxml2-2.9.2/html/reader1.c +107 -0
  387. data/vendor/local/share/doc/libxml2-2.9.2/html/reader1.res +14 -0
  388. data/vendor/local/share/doc/libxml2-2.9.2/html/reader2.c +122 -0
  389. data/vendor/local/share/doc/libxml2-2.9.2/html/reader3.c +120 -0
  390. data/vendor/local/share/doc/libxml2-2.9.2/html/reader3.res +13 -0
  391. data/vendor/local/share/doc/libxml2-2.9.2/html/reader4.c +122 -0
  392. data/vendor/local/share/doc/libxml2-2.9.2/html/reader4.res +3 -0
  393. data/vendor/local/share/doc/libxml2-2.9.2/html/redhat.gif +0 -0
  394. data/vendor/local/share/doc/libxml2-2.9.2/html/smallfootonly.gif +0 -0
  395. data/vendor/local/share/doc/libxml2-2.9.2/html/structure.gif +0 -0
  396. data/vendor/local/share/doc/libxml2-2.9.2/html/test1.xml +1 -0
  397. data/vendor/local/share/doc/libxml2-2.9.2/html/test2.xml +13 -0
  398. data/vendor/local/share/doc/libxml2-2.9.2/html/test3.xml +39 -0
  399. data/vendor/local/share/doc/libxml2-2.9.2/html/testWriter.c +1198 -0
  400. data/vendor/local/share/doc/libxml2-2.9.2/html/tree1.c +94 -0
  401. data/vendor/local/share/doc/libxml2-2.9.2/html/tree1.res +4 -0
  402. data/vendor/local/share/doc/libxml2-2.9.2/html/tree2.c +118 -0
  403. data/vendor/local/share/doc/libxml2-2.9.2/html/tree2.res +18 -0
  404. data/vendor/local/share/doc/libxml2-2.9.2/html/tst.xml +7 -0
  405. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apa.html +8 -0
  406. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apb.html +14 -0
  407. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apc.html +82 -0
  408. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apd.html +76 -0
  409. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ape.html +78 -0
  410. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apf.html +67 -0
  411. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apg.html +75 -0
  412. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/aph.html +76 -0
  413. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/api.html +4 -0
  414. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s02.html +14 -0
  415. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s03.html +47 -0
  416. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s04.html +54 -0
  417. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s05.html +55 -0
  418. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s06.html +35 -0
  419. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s07.html +30 -0
  420. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s08.html +38 -0
  421. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s09.html +63 -0
  422. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/blank.png +0 -0
  423. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/1.png +0 -0
  424. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/10.png +0 -0
  425. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/2.png +0 -0
  426. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/3.png +0 -0
  427. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/4.png +0 -0
  428. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/5.png +0 -0
  429. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/6.png +0 -0
  430. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/7.png +0 -0
  431. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/8.png +0 -0
  432. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/9.png +0 -0
  433. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/caution.png +0 -0
  434. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/draft.png +0 -0
  435. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/home.png +0 -0
  436. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/important.png +0 -0
  437. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/next.png +0 -0
  438. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/note.png +0 -0
  439. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/prev.png +0 -0
  440. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/tip.png +0 -0
  441. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/toc-blank.png +0 -0
  442. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/toc-minus.png +0 -0
  443. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/toc-plus.png +0 -0
  444. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/up.png +0 -0
  445. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/warning.png +0 -0
  446. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includeaddattribute.c +64 -0
  447. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includeaddkeyword.c +75 -0
  448. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includeconvert.c +73 -0
  449. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includegetattribute.c +72 -0
  450. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includekeyword.c +79 -0
  451. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includexpath.c +74 -0
  452. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/index.html +14 -0
  453. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ix01.html +1 -0
  454. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/xmltutorial.pdf +1336 -0
  455. data/vendor/local/share/doc/libxml2-2.9.2/html/w3c.png +0 -0
  456. data/vendor/local/share/doc/libxml2-2.9.2/html/writer.xml +2 -0
  457. data/vendor/local/share/doc/libxml2-2.9.2/html/xml.html +5995 -0
  458. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath1.c +250 -0
  459. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath1.res +5 -0
  460. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath2.c +190 -0
  461. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath2.res +30 -0
  462. data/vendor/local/share/fontconfig/conf.avail/10-autohint.conf +14 -0
  463. data/vendor/local/share/fontconfig/conf.avail/10-no-sub-pixel.conf +14 -0
  464. data/vendor/local/share/fontconfig/conf.avail/10-scale-bitmap-fonts.conf +81 -0
  465. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-bgr.conf +14 -0
  466. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf +14 -0
  467. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-vbgr.conf +14 -0
  468. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-vrgb.conf +14 -0
  469. data/vendor/local/share/fontconfig/conf.avail/10-unhinted.conf +14 -0
  470. data/vendor/local/share/fontconfig/conf.avail/11-lcdfilter-default.conf +16 -0
  471. data/vendor/local/share/fontconfig/conf.avail/11-lcdfilter-legacy.conf +16 -0
  472. data/vendor/local/share/fontconfig/conf.avail/11-lcdfilter-light.conf +16 -0
  473. data/vendor/local/share/fontconfig/conf.avail/20-unhint-small-vera.conf +48 -0
  474. data/vendor/local/share/fontconfig/conf.avail/25-unhint-nonlatin.conf +128 -0
  475. data/vendor/local/share/fontconfig/conf.avail/30-metric-aliases.conf +546 -0
  476. data/vendor/local/share/fontconfig/conf.avail/30-urw-aliases.conf +24 -0
  477. data/vendor/local/share/fontconfig/conf.avail/40-nonlatin.conf +231 -0
  478. data/vendor/local/share/fontconfig/conf.avail/45-latin.conf +189 -0
  479. data/vendor/local/share/fontconfig/conf.avail/49-sansserif.conf +21 -0
  480. data/vendor/local/share/fontconfig/conf.avail/50-user.conf +15 -0
  481. data/vendor/local/share/fontconfig/conf.avail/51-local.conf +6 -0
  482. data/vendor/local/share/fontconfig/conf.avail/60-latin.conf +70 -0
  483. data/vendor/local/share/fontconfig/conf.avail/65-fonts-persian.conf +419 -0
  484. data/vendor/local/share/fontconfig/conf.avail/65-khmer.conf +16 -0
  485. data/vendor/local/share/fontconfig/conf.avail/65-nonlatin.conf +196 -0
  486. data/vendor/local/share/fontconfig/conf.avail/69-unifont.conf +28 -0
  487. data/vendor/local/share/fontconfig/conf.avail/70-no-bitmaps.conf +12 -0
  488. data/vendor/local/share/fontconfig/conf.avail/70-yes-bitmaps.conf +12 -0
  489. data/vendor/local/share/fontconfig/conf.avail/80-delicious.conf +19 -0
  490. data/vendor/local/share/fontconfig/conf.avail/90-synthetic.conf +64 -0
  491. data/vendor/local/share/gtk-doc/html/cairo/bindings-errors.html +122 -0
  492. data/vendor/local/share/gtk-doc/html/cairo/bindings-fonts.html +53 -0
  493. data/vendor/local/share/gtk-doc/html/cairo/bindings-memory.html +123 -0
  494. data/vendor/local/share/gtk-doc/html/cairo/bindings-overloading.html +121 -0
  495. data/vendor/local/share/gtk-doc/html/cairo/bindings-path.html +117 -0
  496. data/vendor/local/share/gtk-doc/html/cairo/bindings-patterns.html +75 -0
  497. data/vendor/local/share/gtk-doc/html/cairo/bindings-return-values.html +120 -0
  498. data/vendor/local/share/gtk-doc/html/cairo/bindings-streams.html +92 -0
  499. data/vendor/local/share/gtk-doc/html/cairo/bindings-surfaces.html +93 -0
  500. data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +397 -0
  501. data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +428 -0
  502. data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +452 -0
  503. data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +342 -0
  504. data/vendor/local/share/gtk-doc/html/cairo/cairo-PNG-Support.html +315 -0
  505. data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +1194 -0
  506. data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +577 -0
  507. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html +129 -0
  508. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html +197 -0
  509. data/vendor/local/share/gtk-doc/html/cairo/cairo-Raster-Sources.html +600 -0
  510. data/vendor/local/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html +226 -0
  511. data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +810 -0
  512. data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +302 -0
  513. data/vendor/local/share/gtk-doc/html/cairo/cairo-Script-Surfaces.html +360 -0
  514. data/vendor/local/share/gtk-doc/html/cairo/cairo-Transformations.html +394 -0
  515. data/vendor/local/share/gtk-doc/html/cairo/cairo-Types.html +156 -0
  516. data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +677 -0
  517. data/vendor/local/share/gtk-doc/html/cairo/cairo-Version-Information.html +342 -0
  518. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +326 -0
  519. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +280 -0
  520. data/vendor/local/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html +527 -0
  521. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +535 -0
  522. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html +170 -0
  523. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +636 -0
  524. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +380 -0
  525. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +653 -0
  526. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html +559 -0
  527. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +2231 -0
  528. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +956 -0
  529. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +1637 -0
  530. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +2695 -0
  531. data/vendor/local/share/gtk-doc/html/cairo/cairo-drawing.html +53 -0
  532. data/vendor/local/share/gtk-doc/html/cairo/cairo-fonts.html +53 -0
  533. data/vendor/local/share/gtk-doc/html/cairo/cairo-support.html +44 -0
  534. data/vendor/local/share/gtk-doc/html/cairo/cairo-surfaces.html +74 -0
  535. data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +1138 -0
  536. data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp2 +747 -0
  537. data/vendor/local/share/gtk-doc/html/cairo/home.png +0 -0
  538. data/vendor/local/share/gtk-doc/html/cairo/index-1.10.html +177 -0
  539. data/vendor/local/share/gtk-doc/html/cairo/index-1.12.html +193 -0
  540. data/vendor/local/share/gtk-doc/html/cairo/index-1.2.html +179 -0
  541. data/vendor/local/share/gtk-doc/html/cairo/index-1.4.html +123 -0
  542. data/vendor/local/share/gtk-doc/html/cairo/index-1.6.html +107 -0
  543. data/vendor/local/share/gtk-doc/html/cairo/index-1.8.html +128 -0
  544. data/vendor/local/share/gtk-doc/html/cairo/index-all.html +1122 -0
  545. data/vendor/local/share/gtk-doc/html/cairo/index.html +157 -0
  546. data/vendor/local/share/gtk-doc/html/cairo/index.sgml +833 -0
  547. data/vendor/local/share/gtk-doc/html/cairo/language-bindings.html +73 -0
  548. data/vendor/local/share/gtk-doc/html/cairo/left.png +0 -0
  549. data/vendor/local/share/gtk-doc/html/cairo/right.png +0 -0
  550. data/vendor/local/share/gtk-doc/html/cairo/style.css +266 -0
  551. data/vendor/local/share/gtk-doc/html/cairo/up.png +0 -0
  552. data/vendor/local/share/gtk-doc/html/libxml2/general.html +38 -0
  553. data/vendor/local/share/gtk-doc/html/libxml2/home.png +0 -0
  554. data/vendor/local/share/gtk-doc/html/libxml2/index.html +67 -0
  555. data/vendor/local/share/gtk-doc/html/libxml2/left.png +0 -0
  556. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-DOCBparser.html +138 -0
  557. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-HTMLparser.html +373 -0
  558. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-HTMLtree.html +172 -0
  559. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-SAX.html +243 -0
  560. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-SAX2.html +247 -0
  561. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-c14n.html +91 -0
  562. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-catalog.html +278 -0
  563. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-chvalid.html +241 -0
  564. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-debugXML.html +225 -0
  565. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-dict.html +134 -0
  566. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-encoding.html +218 -0
  567. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-entities.html +166 -0
  568. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-globals.html +383 -0
  569. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-hash.html +214 -0
  570. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-list.html +226 -0
  571. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-nanoftp.html +187 -0
  572. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-nanohttp.html +142 -0
  573. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-parser.html +766 -0
  574. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-parserInternals.html +688 -0
  575. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-pattern.html +166 -0
  576. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-relaxng.html +278 -0
  577. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-schemasInternals.html +860 -0
  578. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-schematron.html +166 -0
  579. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-threads.html +161 -0
  580. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-tree.html +1597 -0
  581. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-uri.html +154 -0
  582. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-valid.html +528 -0
  583. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xinclude.html +169 -0
  584. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xlink.html +160 -0
  585. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlIO.html +347 -0
  586. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlautomata.html +176 -0
  587. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlerror.html +953 -0
  588. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlexports.html +87 -0
  589. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlmemory.html +186 -0
  590. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlmodule.html +97 -0
  591. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlreader.html +565 -0
  592. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlregexp.html +280 -0
  593. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlsave.html +133 -0
  594. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlschemas.html +314 -0
  595. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlschemastypes.html +237 -0
  596. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlstring.html +217 -0
  597. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlunicode.html +887 -0
  598. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlversion.html +292 -0
  599. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlwriter.html +479 -0
  600. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xpath.html +542 -0
  601. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xpathInternals.html +787 -0
  602. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xpointer.html +171 -0
  603. data/vendor/local/share/gtk-doc/html/libxml2/libxml2.devhelp +3573 -0
  604. data/vendor/local/share/gtk-doc/html/libxml2/right.png +0 -0
  605. data/vendor/local/share/gtk-doc/html/libxml2/style.css +66 -0
  606. data/vendor/local/share/gtk-doc/html/libxml2/up.png +0 -0
  607. data/vendor/local/share/license/cairo/AUTHORS +115 -0
  608. data/vendor/local/share/license/cairo/COPYING +33 -0
  609. data/vendor/local/share/license/cairo/COPYING-LGPL-2.1 +510 -0
  610. data/vendor/local/share/license/cairo/COPYING-MPL-1.1 +470 -0
  611. data/vendor/local/share/license/cairo/README +204 -0
  612. data/vendor/local/share/license/cairo/README.win32 +66 -0
  613. data/vendor/local/share/license/fontconfig/AUTHORS +3 -0
  614. data/vendor/local/share/license/fontconfig/COPYING +28 -0
  615. data/vendor/local/share/license/fontconfig/README +1484 -0
  616. data/vendor/local/share/license/freetype/README +83 -0
  617. data/vendor/local/share/license/freetype/README.git +50 -0
  618. data/vendor/local/share/license/libpng/README +215 -0
  619. data/vendor/local/share/license/libxml2/AUTHORS +5 -0
  620. data/vendor/local/share/license/libxml2/COPYING +23 -0
  621. data/vendor/local/share/license/libxml2/README +39 -0
  622. data/vendor/local/share/license/libxml2/README.tests +39 -0
  623. data/vendor/local/share/license/pixman/AUTHORS +0 -0
  624. data/vendor/local/share/license/pixman/COPYING +42 -0
  625. data/vendor/local/share/license/pixman/README +116 -0
  626. data/vendor/local/share/license/zlib/README +115 -0
  627. data/vendor/local/share/man/man1/freetype-config.1 +108 -0
  628. data/vendor/local/share/man/man1/xml2-config.1 +30 -0
  629. data/vendor/local/share/man/man1/xmlcatalog.1 +340 -0
  630. data/vendor/local/share/man/man1/xmllint.1 +647 -0
  631. data/vendor/local/share/man/man3/libpng.3 +6217 -0
  632. data/vendor/local/share/man/man3/libpngpf.3 +18 -0
  633. data/vendor/local/share/man/man3/libxml.3 +71 -0
  634. data/vendor/local/share/man/man5/png.5 +74 -0
  635. data/vendor/local/share/xml/fontconfig/fonts.dtd +233 -0
  636. metadata +774 -0
@@ -0,0 +1,44 @@
1
+ /* -*- c-file-style: "gnu"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Ruby Cairo Binding
4
+ *
5
+ * Copyright 2005-2010 Kouhei Sutou <kou@cozmixng.org>
6
+ *
7
+ * This file is made available under the same terms as Ruby
8
+ *
9
+ */
10
+
11
+ #ifndef RB_CAIRO_IO_H
12
+ #define RB_CAIRO_IO_H
13
+
14
+ #include <rb_cairo.h>
15
+
16
+ typedef struct rb_cairo__io_callback_closure {
17
+ VALUE target;
18
+ VALUE error;
19
+ unsigned char *data;
20
+ unsigned int length;
21
+ } rb_cairo__io_callback_closure_t;
22
+
23
+ typedef struct rb_cairo__io_invoke_data {
24
+ cr_callback_func_t func;
25
+ VALUE data;
26
+ } rb_cairo__io_invoke_data_t;
27
+
28
+ RB_CAIRO_VAR ID rb_cairo__io_id_read;
29
+ RB_CAIRO_VAR ID rb_cairo__io_id_write;
30
+ RB_CAIRO_VAR ID rb_cairo__io_id_output;
31
+
32
+ rb_cairo__io_callback_closure_t *
33
+ rb_cairo__io_closure_new (VALUE target);
34
+ void rb_cairo__io_closure_destroy (rb_cairo__io_callback_closure_t *closure);
35
+ void rb_cairo__io_closure_free (void *closure);
36
+ cairo_status_t rb_cairo__io_write_func (void *write_closure,
37
+ const unsigned char *data,
38
+ unsigned int length);
39
+ cairo_status_t rb_cairo__io_read_func (void *read_closure,
40
+ unsigned char *data,
41
+ unsigned int length);
42
+
43
+
44
+ #endif
@@ -0,0 +1,366 @@
1
+ /* -*- c-file-style: "gnu"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Ruby Cairo Binding
4
+ *
5
+ * $Author: kou $
6
+ * $Date: 2008-08-14 12:37:50 $
7
+ *
8
+ * Copyright 2006-2008 Kouhei Sutou <kou@cozmixng.org>
9
+ * Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
10
+ * Copyright 2004-2005 MenTaLguY <mental@rydia.com>
11
+ *
12
+ * This file is made available under the same terms as Ruby
13
+ *
14
+ */
15
+
16
+
17
+ #include "rb_cairo.h"
18
+ #include "rb_cairo_private.h"
19
+
20
+ VALUE rb_cCairo_Matrix;
21
+
22
+ static ID cr_id_equal;
23
+
24
+ #define _SELF (RVAL2CRMATRIX(self))
25
+
26
+ cairo_matrix_t *
27
+ rb_cairo_matrix_from_ruby_object (VALUE obj)
28
+ {
29
+ cairo_matrix_t *matrix;
30
+ if (!rb_cairo__is_kind_of (obj, rb_cCairo_Matrix))
31
+ {
32
+ rb_raise (rb_eTypeError, "not a cairo matrix");
33
+ }
34
+ Data_Get_Struct (obj, cairo_matrix_t, matrix);
35
+ return matrix;
36
+ }
37
+
38
+ static void
39
+ cr_matrix_free (void *ptr)
40
+ {
41
+ if (ptr)
42
+ {
43
+ xfree ((cairo_matrix_t *) ptr);
44
+ }
45
+ }
46
+
47
+ VALUE
48
+ rb_cairo_matrix_to_ruby_object (cairo_matrix_t *matrix)
49
+ {
50
+ if (matrix)
51
+ {
52
+ cairo_matrix_t *new_matrix = ALLOC (cairo_matrix_t);
53
+ *new_matrix = *matrix;
54
+ return Data_Wrap_Struct (rb_cCairo_Matrix, NULL,
55
+ cr_matrix_free, new_matrix);
56
+ }
57
+ else
58
+ {
59
+ return Qnil;
60
+ }
61
+ }
62
+
63
+ static VALUE
64
+ cr_matrix_allocate (VALUE klass)
65
+ {
66
+ return Data_Wrap_Struct (klass, NULL, cr_matrix_free, NULL);
67
+ }
68
+
69
+ static VALUE
70
+ cr_matrix_initialize (VALUE self,
71
+ VALUE xx, VALUE yx,
72
+ VALUE xy, VALUE yy,
73
+ VALUE x0, VALUE y0)
74
+ {
75
+ cairo_matrix_t *matrix = ALLOC (cairo_matrix_t);
76
+
77
+ cairo_matrix_init (matrix,
78
+ NUM2DBL (xx), NUM2DBL (yx),
79
+ NUM2DBL (xy), NUM2DBL (yy),
80
+ NUM2DBL (x0), NUM2DBL (y0));
81
+ DATA_PTR (self) = matrix;
82
+ return Qnil;
83
+ }
84
+
85
+ static VALUE
86
+ cr_matrix_init_identity (VALUE self)
87
+ {
88
+ cairo_matrix_t matrix;
89
+ cairo_matrix_init_identity (&matrix);
90
+ return CRMATRIX2RVAL (&matrix);
91
+ }
92
+
93
+ static VALUE
94
+ cr_matrix_init_translate (VALUE self, VALUE tx, VALUE ty)
95
+ {
96
+ cairo_matrix_t matrix;
97
+ cairo_matrix_init_translate (&matrix, NUM2DBL (tx), NUM2DBL (ty));
98
+ return CRMATRIX2RVAL (&matrix);
99
+ }
100
+
101
+ static VALUE
102
+ cr_matrix_init_scale (VALUE self, VALUE sx, VALUE sy)
103
+ {
104
+ cairo_matrix_t matrix;
105
+ cairo_matrix_init_scale (&matrix, NUM2DBL (sx), NUM2DBL (sy));
106
+ return CRMATRIX2RVAL (&matrix);
107
+ }
108
+
109
+ static VALUE
110
+ cr_matrix_init_rotate (VALUE self, VALUE radius)
111
+ {
112
+ cairo_matrix_t matrix;
113
+ cairo_matrix_init_rotate (&matrix, NUM2DBL (radius));
114
+ return CRMATRIX2RVAL (&matrix);
115
+ }
116
+
117
+ static VALUE
118
+ cr_matrix_identity (VALUE self)
119
+ {
120
+ cairo_matrix_init_identity (_SELF);
121
+ return self;
122
+ }
123
+
124
+ static VALUE
125
+ cr_matrix_translate (VALUE self, VALUE tx, VALUE ty)
126
+ {
127
+ cairo_matrix_translate (_SELF, NUM2DBL (tx), NUM2DBL (ty));
128
+ return self;
129
+ }
130
+
131
+ static VALUE
132
+ cr_matrix_scale (VALUE self, VALUE sx, VALUE sy)
133
+ {
134
+ cairo_matrix_scale (_SELF, NUM2DBL (sx), NUM2DBL (sy));
135
+ return self;
136
+ }
137
+
138
+ static VALUE
139
+ cr_matrix_rotate (VALUE self, VALUE radians)
140
+ {
141
+ cairo_matrix_rotate (_SELF, NUM2DBL (radians));
142
+ return self;
143
+ }
144
+
145
+ static VALUE
146
+ cr_matrix_invert (VALUE self)
147
+ {
148
+ rb_cairo_check_status (cairo_matrix_invert (_SELF));
149
+ return self;
150
+ }
151
+
152
+ static VALUE
153
+ cr_matrix_multiply (VALUE self, VALUE other)
154
+ {
155
+ cairo_matrix_multiply (_SELF, _SELF, RVAL2CRMATRIX (other));
156
+ return self;
157
+ }
158
+
159
+ static VALUE
160
+ cr_matrix_transform_distance (VALUE self, VALUE dx, VALUE dy)
161
+ {
162
+ double pair[2];
163
+ pair[0] = NUM2DBL (dx);
164
+ pair[1] = NUM2DBL (dy);
165
+ cairo_matrix_transform_distance (_SELF, pair, pair + 1);
166
+ return rb_cairo__float_array (pair, 2);
167
+ }
168
+
169
+ static VALUE
170
+ cr_matrix_transform_point (VALUE self, VALUE x, VALUE y)
171
+ {
172
+ double pair[2];
173
+ pair[0] = NUM2DBL (x);
174
+ pair[1] = NUM2DBL (y);
175
+ cairo_matrix_transform_point (_SELF, pair, pair + 1);
176
+ return rb_cairo__float_array (pair, 2);
177
+ }
178
+
179
+
180
+ /* Accessors */
181
+ static VALUE
182
+ cr_matrix_get_xx (VALUE self)
183
+ {
184
+ return rb_float_new (_SELF->xx);
185
+ }
186
+
187
+ static VALUE
188
+ cr_matrix_set_xx (VALUE self, VALUE xx)
189
+ {
190
+ _SELF->xx = NUM2DBL (xx);
191
+ return Qnil;
192
+ }
193
+
194
+ static VALUE
195
+ cr_matrix_get_yx (VALUE self)
196
+ {
197
+ return rb_float_new (_SELF->yx);
198
+ }
199
+
200
+ static VALUE
201
+ cr_matrix_set_yx (VALUE self, VALUE yx)
202
+ {
203
+ _SELF->yx = NUM2DBL (yx);
204
+ return Qnil;
205
+ }
206
+
207
+ static VALUE
208
+ cr_matrix_get_xy (VALUE self)
209
+ {
210
+ return rb_float_new (_SELF->xy);
211
+ }
212
+
213
+ static VALUE
214
+ cr_matrix_set_xy (VALUE self, VALUE xy)
215
+ {
216
+ _SELF->xy = NUM2DBL (xy);
217
+ return Qnil;
218
+ }
219
+
220
+ static VALUE
221
+ cr_matrix_get_yy (VALUE self)
222
+ {
223
+ return rb_float_new (_SELF->yy);
224
+ }
225
+
226
+ static VALUE
227
+ cr_matrix_set_yy (VALUE self, VALUE yy)
228
+ {
229
+ _SELF->yy = NUM2DBL (yy);
230
+ return Qnil;
231
+ }
232
+
233
+ static VALUE
234
+ cr_matrix_get_x0 (VALUE self)
235
+ {
236
+ return rb_float_new (_SELF->x0);
237
+ }
238
+
239
+ static VALUE
240
+ cr_matrix_set_x0 (VALUE self, VALUE x0)
241
+ {
242
+ _SELF->x0 = NUM2DBL (x0);
243
+ return Qnil;
244
+ }
245
+
246
+ static VALUE
247
+ cr_matrix_get_y0 (VALUE self)
248
+ {
249
+ return rb_float_new (_SELF->y0);
250
+ }
251
+
252
+ static VALUE
253
+ cr_matrix_set_y0 (VALUE self, VALUE y0)
254
+ {
255
+ _SELF->y0 = NUM2DBL (y0);
256
+ return Qnil;
257
+ }
258
+
259
+ /* Utilities */
260
+ static VALUE
261
+ cr_matrix_set (VALUE self,
262
+ VALUE xx, VALUE yx,
263
+ VALUE xy, VALUE yy,
264
+ VALUE x0, VALUE y0)
265
+ {
266
+ cairo_matrix_init (_SELF,
267
+ NUM2DBL (xx), NUM2DBL (yx),
268
+ NUM2DBL (xy), NUM2DBL (yy),
269
+ NUM2DBL (x0), NUM2DBL (y0));
270
+ return self;
271
+ }
272
+
273
+ static VALUE
274
+ cr_matrix_to_a (VALUE self)
275
+ {
276
+ cairo_matrix_t *matrix = _SELF;
277
+ double affine[6];
278
+ affine[0] = matrix->xx;
279
+ affine[1] = matrix->yx;
280
+ affine[2] = matrix->xy;
281
+ affine[3] = matrix->yy;
282
+ affine[4] = matrix->x0;
283
+ affine[5] = matrix->y0;
284
+ return rb_cairo__float_array (affine, 6);
285
+ }
286
+
287
+ static VALUE
288
+ cr_matrix_to_s(VALUE self)
289
+ {
290
+ VALUE ret;
291
+
292
+ ret = rb_str_new2 ("#<");
293
+ rb_str_cat2 (ret, rb_class2name (CLASS_OF (self)));
294
+ rb_str_cat2 (ret, ":");
295
+ rb_str_concat (ret, rb_inspect (cr_matrix_to_a (self)));
296
+ rb_str_cat2 (ret, ">");
297
+
298
+ return ret;
299
+ }
300
+
301
+ static VALUE
302
+ cr_matrix_equal (VALUE self, VALUE other)
303
+ {
304
+ if (!rb_cairo__is_kind_of (other, rb_cCairo_Matrix))
305
+ return Qfalse;
306
+
307
+ return rb_funcall (cr_matrix_to_a (self),
308
+ cr_id_equal, 1,
309
+ cr_matrix_to_a (other));
310
+ }
311
+
312
+ void
313
+ Init_cairo_matrix (void)
314
+ {
315
+ cr_id_equal = rb_intern ("==");
316
+
317
+ rb_cCairo_Matrix =
318
+ rb_define_class_under (rb_mCairo, "Matrix", rb_cObject);
319
+
320
+ rb_define_alloc_func (rb_cCairo_Matrix, cr_matrix_allocate);
321
+
322
+ rb_define_singleton_method (rb_cCairo_Matrix, "identity",
323
+ cr_matrix_init_identity, 0);
324
+ rb_define_singleton_method (rb_cCairo_Matrix, "translate",
325
+ cr_matrix_init_translate, 2);
326
+ rb_define_singleton_method (rb_cCairo_Matrix, "scale",
327
+ cr_matrix_init_scale, 2);
328
+ rb_define_singleton_method (rb_cCairo_Matrix, "rotate",
329
+ cr_matrix_init_rotate, 1);
330
+
331
+ rb_define_method (rb_cCairo_Matrix, "initialize", cr_matrix_initialize, 6);
332
+
333
+ rb_define_method (rb_cCairo_Matrix, "identity!", cr_matrix_identity, 0);
334
+ rb_define_method (rb_cCairo_Matrix, "translate!", cr_matrix_translate, 2);
335
+ rb_define_method (rb_cCairo_Matrix, "scale!", cr_matrix_scale, 2);
336
+ rb_define_method (rb_cCairo_Matrix, "rotate!", cr_matrix_rotate, 1);
337
+ rb_define_method (rb_cCairo_Matrix, "invert!", cr_matrix_invert, 0);
338
+ rb_define_method (rb_cCairo_Matrix, "multiply!", cr_matrix_multiply, 1);
339
+ rb_define_method (rb_cCairo_Matrix, "transform_distance",
340
+ cr_matrix_transform_distance, 2);
341
+ rb_define_method (rb_cCairo_Matrix, "transform_point",
342
+ cr_matrix_transform_point, 2);
343
+
344
+ /* Accessors */
345
+ rb_define_method (rb_cCairo_Matrix, "xx", cr_matrix_get_xx, 0);
346
+ rb_define_method (rb_cCairo_Matrix, "set_xx", cr_matrix_set_xx, 1);
347
+ rb_define_method (rb_cCairo_Matrix, "yx", cr_matrix_get_yx, 0);
348
+ rb_define_method (rb_cCairo_Matrix, "set_yx", cr_matrix_set_yx, 1);
349
+ rb_define_method (rb_cCairo_Matrix, "xy", cr_matrix_get_xy, 0);
350
+ rb_define_method (rb_cCairo_Matrix, "set_xy", cr_matrix_set_xy, 1);
351
+ rb_define_method (rb_cCairo_Matrix, "yy", cr_matrix_get_yy, 0);
352
+ rb_define_method (rb_cCairo_Matrix, "set_yy", cr_matrix_set_yy, 1);
353
+ rb_define_method (rb_cCairo_Matrix, "x0", cr_matrix_get_x0, 0);
354
+ rb_define_method (rb_cCairo_Matrix, "set_x0", cr_matrix_set_x0, 1);
355
+ rb_define_method (rb_cCairo_Matrix, "y0", cr_matrix_get_y0, 0);
356
+ rb_define_method (rb_cCairo_Matrix, "set_y0", cr_matrix_set_y0, 1);
357
+
358
+ /* Utilities */
359
+ rb_define_method (rb_cCairo_Matrix, "set", cr_matrix_set, 6);
360
+ rb_define_method (rb_cCairo_Matrix, "to_a", cr_matrix_to_a, 0);
361
+ rb_define_method (rb_cCairo_Matrix, "to_s", cr_matrix_to_s, 0);
362
+ rb_define_method (rb_cCairo_Matrix, "==", cr_matrix_equal, 1);
363
+
364
+
365
+ RB_CAIRO_DEF_SETTERS (rb_cCairo_Matrix);
366
+ }
@@ -0,0 +1,459 @@
1
+ /* -*- c-file-style: "gnu"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Ruby Cairo Binding
4
+ *
5
+ * $Author: kou $
6
+ * $Date: 2008-04-04 03:52:31 $
7
+ *
8
+ * Copyright 2005 Kouhei Sutou <kou@cozmixng.org>
9
+ *
10
+ * This file is made available under the same terms as Ruby
11
+ *
12
+ */
13
+
14
+ #include "rb_cairo.h"
15
+ #include "rb_cairo_private.h"
16
+
17
+ #define _SELF(self) (RVAL2CRPATH (self))
18
+
19
+ VALUE rb_cCairo_Point;
20
+ VALUE rb_cCairo_Path;
21
+ VALUE rb_cCairo_PathData;
22
+ VALUE rb_cCairo_PathMoveTo;
23
+ VALUE rb_cCairo_PathLineTo;
24
+ VALUE rb_cCairo_PathCurveTo;
25
+ VALUE rb_cCairo_PathClosePath;
26
+
27
+ static ID id_new, id_current_path;
28
+ static ID id_at_x, id_at_y, id_at_type, id_at_points, id_at_context;
29
+
30
+ static VALUE
31
+ cr_point_new (VALUE x, VALUE y)
32
+ {
33
+ return rb_funcall (rb_cCairo_Point, id_new, 2, x, y);
34
+ }
35
+
36
+ static VALUE
37
+ cr_point_initialize (VALUE self, VALUE x, VALUE y)
38
+ {
39
+ rb_ivar_set (self, id_at_x, x);
40
+ rb_ivar_set (self, id_at_y, y);
41
+ return Qnil;
42
+ }
43
+
44
+ static VALUE
45
+ cr_point_to_a (VALUE self)
46
+ {
47
+ return rb_ary_new3 (2,
48
+ rb_ivar_get (self, id_at_x),
49
+ rb_ivar_get (self, id_at_y));
50
+ }
51
+
52
+ static VALUE
53
+ cr_path_data_initialize (VALUE self, VALUE type, VALUE points)
54
+ {
55
+ rb_ivar_set (self, id_at_type, type);
56
+ rb_ivar_set (self, id_at_points, points);
57
+ return Qnil;
58
+ }
59
+
60
+ static VALUE
61
+ cr_path_data_move_to_p (VALUE self)
62
+ {
63
+ return CBOOL2RVAL (RVAL2CRPATHDATATYPE (rb_ivar_get (self, id_at_type)) ==
64
+ CAIRO_PATH_MOVE_TO);
65
+ }
66
+
67
+ static VALUE
68
+ cr_path_data_line_to_p (VALUE self)
69
+ {
70
+ return CBOOL2RVAL (RVAL2CRPATHDATATYPE (rb_ivar_get (self, id_at_type)) ==
71
+ CAIRO_PATH_LINE_TO);
72
+ }
73
+
74
+ static VALUE
75
+ cr_path_data_curve_to_p (VALUE self)
76
+ {
77
+ return CBOOL2RVAL (RVAL2CRPATHDATATYPE (rb_ivar_get (self, id_at_type)) ==
78
+ CAIRO_PATH_CURVE_TO);
79
+ }
80
+
81
+ static VALUE
82
+ cr_path_data_close_path_p (VALUE self)
83
+ {
84
+ return CBOOL2RVAL (RVAL2CRPATHDATATYPE (rb_ivar_get (self, id_at_type)) ==
85
+ CAIRO_PATH_CLOSE_PATH);
86
+ }
87
+
88
+ static VALUE
89
+ cr_path_data_each (VALUE self)
90
+ {
91
+ return rb_ary_each (rb_ivar_get (self, id_at_points));
92
+ }
93
+
94
+
95
+ static VALUE
96
+ cr_path_data_to_a (VALUE self)
97
+ {
98
+ return rb_ary_new3 (2,
99
+ rb_ivar_get (self, id_at_type),
100
+ rb_ivar_get (self, id_at_points));
101
+ }
102
+
103
+ static VALUE
104
+ cr_path_data_to_ruby_object (cairo_path_data_t *data)
105
+ {
106
+ VALUE rb_data = Qnil;
107
+
108
+ switch (data->header.type)
109
+ {
110
+ case CAIRO_PATH_MOVE_TO:
111
+ rb_data = rb_funcall (rb_cCairo_PathMoveTo, id_new, 2,
112
+ rb_float_new (data[1].point.x),
113
+ rb_float_new (data[1].point.y));
114
+ break;
115
+ case CAIRO_PATH_LINE_TO:
116
+ rb_data = rb_funcall (rb_cCairo_PathLineTo, id_new, 2,
117
+ rb_float_new (data[1].point.x),
118
+ rb_float_new (data[1].point.y));
119
+ break;
120
+ case CAIRO_PATH_CURVE_TO:
121
+ rb_data = rb_funcall (rb_cCairo_PathCurveTo, id_new, 6,
122
+ rb_float_new (data[1].point.x),
123
+ rb_float_new (data[1].point.y),
124
+ rb_float_new (data[2].point.x),
125
+ rb_float_new (data[2].point.y),
126
+ rb_float_new (data[3].point.x),
127
+ rb_float_new (data[3].point.y));
128
+ break;
129
+ case CAIRO_PATH_CLOSE_PATH:
130
+ rb_data = rb_funcall (rb_cCairo_PathClosePath, id_new, 0);
131
+ break;
132
+ }
133
+
134
+ return rb_data;
135
+ }
136
+
137
+
138
+ static VALUE
139
+ cr_path_move_to_initialize (int argc, VALUE *argv, VALUE self)
140
+ {
141
+ VALUE point, x, y;
142
+ VALUE super_argv[2];
143
+
144
+ rb_scan_args (argc, argv, "11", &x, &y);
145
+
146
+ if (argc == 1)
147
+ point = x;
148
+ else
149
+ point = cr_point_new (x, y);
150
+
151
+ super_argv[0] = INT2NUM (CAIRO_PATH_MOVE_TO);
152
+ super_argv[1] = rb_ary_new3 (1, point);
153
+ rb_call_super (2, super_argv);
154
+ return Qnil;
155
+ }
156
+
157
+ static VALUE
158
+ cr_path_line_to_initialize (int argc, VALUE *argv, VALUE self)
159
+ {
160
+ VALUE point, x, y;
161
+ VALUE super_argv[2];
162
+
163
+ rb_scan_args (argc, argv, "11", &x, &y);
164
+
165
+ if (argc == 1)
166
+ point = x;
167
+ else
168
+ point = cr_point_new (x, y);
169
+
170
+ super_argv[0] = INT2NUM (CAIRO_PATH_LINE_TO);
171
+ super_argv[1] = rb_ary_new3 (1, point);
172
+ rb_call_super (2, super_argv);
173
+ return Qnil;
174
+ }
175
+
176
+ static VALUE
177
+ cr_path_curve_to_initialize (int argc, VALUE *argv, VALUE self)
178
+ {
179
+ VALUE point1, point2, point3, x1, y1, x2, y2, x3, y3;
180
+ VALUE super_argv[2];
181
+
182
+ rb_scan_args (argc, argv, "33", &x1, &y1, &x2, &y2, &x3, &y3);
183
+
184
+ if (argc == 3)
185
+ {
186
+ point1 = x1;
187
+ point2 = y1;
188
+ point3 = x2;
189
+ }
190
+ else if (argc == 6)
191
+ {
192
+ point1 = cr_point_new (x1, y1);
193
+ point2 = cr_point_new (x2, y2);
194
+ point3 = cr_point_new (x3, y3);
195
+ }
196
+ else
197
+ {
198
+ VALUE inspected_arg = rb_inspect (rb_ary_new4 (argc, argv));
199
+ rb_raise (rb_eArgError,
200
+ "invalid argument: %s (expect "
201
+ "(point1, point2, point3) or "
202
+ "(x1, y1, x2, y2, x3, y3))",
203
+ StringValuePtr (inspected_arg));
204
+ }
205
+
206
+ super_argv[0] = INT2NUM (CAIRO_PATH_CURVE_TO);
207
+ super_argv[1] = rb_ary_new3 (3, point1, point2, point3);
208
+ rb_call_super (2, super_argv);
209
+ return Qnil;
210
+ }
211
+
212
+ static VALUE
213
+ cr_path_close_path_initialize (VALUE self)
214
+ {
215
+ VALUE super_argv[2];
216
+ super_argv[0] = INT2NUM (CAIRO_PATH_CLOSE_PATH);
217
+ super_argv[1] = rb_ary_new ();
218
+ rb_call_super (2, super_argv);
219
+ return Qnil;
220
+ }
221
+
222
+
223
+ static void
224
+ cr_path_free (void *ptr)
225
+ {
226
+ if (ptr)
227
+ {
228
+ cairo_path_destroy ((cairo_path_t *)ptr);
229
+ }
230
+ }
231
+
232
+ cairo_path_t *
233
+ rb_cairo_path_from_ruby_object (VALUE obj)
234
+ {
235
+ VALUE context;
236
+ cairo_t *cr;
237
+ cairo_path_t *path, *copied_path;
238
+
239
+ if (!rb_cairo__is_kind_of (obj, rb_cCairo_Path))
240
+ {
241
+ rb_raise (rb_eTypeError, "not a cairo path");
242
+ }
243
+ Data_Get_Struct (obj, cairo_path_t, path);
244
+
245
+ context = rb_ivar_get (obj, id_at_context);
246
+ if (NIL_P (context))
247
+ return path;
248
+
249
+ cr = RVAL2CRCONTEXT (context);
250
+ if (cairo_status (cr) != CAIRO_STATUS_SUCCESS)
251
+ return path;
252
+
253
+ copied_path = cairo_copy_path (cr);
254
+ rb_ivar_set (obj, id_current_path, CRPATH2RVAL (copied_path));
255
+ return copied_path;
256
+ }
257
+
258
+ static void
259
+ cr_path_ensure_internal_context (VALUE rb_path, cairo_path_t *path)
260
+ {
261
+ cairo_surface_t *surface;
262
+ cairo_t *cr;
263
+
264
+ if (!NIL_P (rb_ivar_get (rb_path, id_at_context)))
265
+ return;
266
+
267
+ surface = cairo_image_surface_create (CAIRO_FORMAT_A1, 1, 1);
268
+ cr = cairo_create (surface);
269
+ if (path->num_data > 0)
270
+ cairo_append_path (cr, path);
271
+ rb_cairo_check_status (cairo_status (cr));
272
+ rb_ivar_set (rb_path, id_at_context, CRCONTEXT2RVAL (cr));
273
+ cairo_destroy (cr);
274
+ }
275
+
276
+ VALUE
277
+ rb_cairo_path_to_ruby_object (cairo_path_t *path)
278
+ {
279
+ if (path)
280
+ {
281
+ VALUE rb_path;
282
+ rb_path = Data_Wrap_Struct (rb_cCairo_Path, NULL, cr_path_free, path);
283
+ cr_path_ensure_internal_context (rb_path, path);
284
+ return rb_path;
285
+ }
286
+ else
287
+ {
288
+ return Qnil;
289
+ }
290
+ }
291
+
292
+ static VALUE
293
+ cr_path_allocate (VALUE klass)
294
+ {
295
+ return Data_Wrap_Struct (klass, NULL, cr_path_free, NULL);
296
+ }
297
+
298
+ static VALUE
299
+ cr_path_initialize (VALUE self)
300
+ {
301
+ cairo_path_t *path;
302
+
303
+ path = ALLOC(cairo_path_t);
304
+ path->status = CAIRO_STATUS_SUCCESS;
305
+ path->data = NULL;
306
+ path->num_data = 0;
307
+
308
+ DATA_PTR (self) = path;
309
+ cr_path_ensure_internal_context (self, path);
310
+
311
+ return Qnil;
312
+ }
313
+
314
+ static VALUE
315
+ cr_path_empty_p (VALUE self)
316
+ {
317
+ cairo_path_t *path = _SELF (self);
318
+
319
+ return CBOOL2RVAL (path->num_data == 0);
320
+ }
321
+
322
+ static int
323
+ cairo_path_get_size (cairo_path_t *path)
324
+ {
325
+ int i, size;
326
+
327
+ for (i = 0, size = 0; i < path->num_data; i += path->data[i].header.length)
328
+ size++;
329
+
330
+ return size;
331
+ }
332
+
333
+ static VALUE
334
+ cr_path_size (VALUE self)
335
+ {
336
+ cairo_path_t *path = _SELF (self);
337
+ return INT2NUM (cairo_path_get_size (path));
338
+ }
339
+
340
+ static VALUE
341
+ cr_path_ref (VALUE self, VALUE index)
342
+ {
343
+ cairo_path_t *path = _SELF (self);
344
+ int i, requested_index, real_index;
345
+
346
+ requested_index = NUM2INT (index);
347
+ if (requested_index < 0)
348
+ {
349
+ requested_index += cairo_path_get_size (path);
350
+ if (requested_index < 0)
351
+ return Qnil;
352
+ }
353
+
354
+
355
+ for (i = 0, real_index = 0; i < requested_index; i++)
356
+ {
357
+ if (real_index >= path->num_data)
358
+ return Qnil;
359
+ real_index += path->data[real_index].header.length;
360
+ }
361
+
362
+ if (real_index < path->num_data)
363
+ return cr_path_data_to_ruby_object (&path->data[real_index]);
364
+ else
365
+ return Qnil;
366
+ }
367
+
368
+ static VALUE
369
+ cr_path_each (VALUE self)
370
+ {
371
+ cairo_path_t *path = _SELF(self);
372
+ int i;
373
+
374
+ for (i = 0; i < path->num_data; i += path->data[i].header.length)
375
+ {
376
+ rb_yield (cr_path_data_to_ruby_object (&(path->data[i])));
377
+ }
378
+
379
+ return self;
380
+ }
381
+
382
+ void
383
+ Init_cairo_path (void)
384
+ {
385
+ id_new = rb_intern ("new");
386
+ id_current_path = rb_intern ("current_path");
387
+
388
+ id_at_x = rb_intern ("@x");
389
+ id_at_y = rb_intern ("@y");
390
+ id_at_type = rb_intern ("@type");
391
+ id_at_points = rb_intern ("@points");
392
+ id_at_context = rb_intern ("@context");
393
+
394
+ rb_cCairo_Point = rb_define_class_under (rb_mCairo, "Point", rb_cObject);
395
+ rb_define_attr (rb_cCairo_Point, "x", CR_TRUE, CR_FALSE);
396
+ rb_define_attr (rb_cCairo_Point, "y", CR_TRUE, CR_FALSE);
397
+ rb_define_method (rb_cCairo_Point, "initialize", cr_point_initialize, 2);
398
+
399
+ rb_define_method (rb_cCairo_Point, "to_a", cr_point_to_a, 0);
400
+ rb_define_alias (rb_cCairo_Point, "to_ary", "to_a");
401
+
402
+
403
+ rb_cCairo_PathData = rb_define_class_under (rb_mCairo, "PathData", rb_cObject);
404
+
405
+ rb_include_module (rb_cCairo_PathData, rb_mEnumerable);
406
+
407
+ rb_define_attr (rb_cCairo_PathData, "type", CR_TRUE, CR_FALSE);
408
+ rb_define_attr (rb_cCairo_PathData, "points", CR_TRUE, CR_FALSE);
409
+ rb_define_method (rb_cCairo_PathData, "initialize",
410
+ cr_path_data_initialize, 2);
411
+
412
+ rb_define_method (rb_cCairo_PathData, "move_to?", cr_path_data_move_to_p, 0);
413
+ rb_define_method (rb_cCairo_PathData, "line_to?", cr_path_data_line_to_p, 0);
414
+ rb_define_method (rb_cCairo_PathData, "curve_to?",
415
+ cr_path_data_curve_to_p, 0);
416
+ rb_define_method (rb_cCairo_PathData, "close_path?",
417
+ cr_path_data_close_path_p, 0);
418
+
419
+ rb_define_method (rb_cCairo_PathData, "each", cr_path_data_each, 0);
420
+
421
+ rb_define_method (rb_cCairo_PathData, "to_a", cr_path_data_to_a, 0);
422
+ rb_define_alias (rb_cCairo_PathData, "to_ary", "to_a");
423
+
424
+
425
+ rb_cCairo_PathMoveTo =
426
+ rb_define_class_under (rb_mCairo, "PathMoveTo", rb_cCairo_PathData);
427
+ rb_define_method (rb_cCairo_PathMoveTo, "initialize",
428
+ cr_path_move_to_initialize, -1);
429
+
430
+ rb_cCairo_PathLineTo =
431
+ rb_define_class_under (rb_mCairo, "PathLineTo", rb_cCairo_PathData);
432
+ rb_define_method (rb_cCairo_PathLineTo, "initialize",
433
+ cr_path_line_to_initialize, -1);
434
+
435
+ rb_cCairo_PathCurveTo =
436
+ rb_define_class_under (rb_mCairo, "PathCurveTo", rb_cCairo_PathData);
437
+ rb_define_method (rb_cCairo_PathCurveTo, "initialize",
438
+ cr_path_curve_to_initialize, -1);
439
+
440
+ rb_cCairo_PathClosePath =
441
+ rb_define_class_under (rb_mCairo, "PathClosePath", rb_cCairo_PathData);
442
+ rb_define_method (rb_cCairo_PathClosePath, "initialize",
443
+ cr_path_close_path_initialize, 0);
444
+
445
+
446
+ rb_cCairo_Path = rb_define_class_under (rb_mCairo, "Path", rb_cObject);
447
+ rb_define_alloc_func (rb_cCairo_Path, cr_path_allocate);
448
+
449
+ rb_include_module (rb_cCairo_Path, rb_mEnumerable);
450
+
451
+ rb_define_method (rb_cCairo_Path, "initialize", cr_path_initialize, 0);
452
+
453
+ rb_define_method (rb_cCairo_Path, "empty?", cr_path_empty_p, 0);
454
+ rb_define_method (rb_cCairo_Path, "size", cr_path_size, 0);
455
+ rb_define_alias (rb_cCairo_Path, "length", "size");
456
+ rb_define_method (rb_cCairo_Path, "[]", cr_path_ref, 1);
457
+
458
+ rb_define_method (rb_cCairo_Path, "each", cr_path_each, 0);
459
+ }