pygments.rb 0.6.3 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (606) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +11 -0
  3. data/README.md +6 -6
  4. data/Rakefile +2 -1
  5. data/cache-lexers.rb +1 -1
  6. data/circle.yml +7 -0
  7. data/lib/pygments/lexer.rb +3 -3
  8. data/lib/pygments/popen.rb +67 -30
  9. data/lib/pygments/version.rb +1 -1
  10. data/pygments.rb.gemspec +2 -1
  11. data/test/test_pygments.rb +16 -16
  12. data/vendor/pygments-main/AUTHORS +54 -8
  13. data/vendor/pygments-main/CHANGES +247 -25
  14. data/vendor/pygments-main/LICENSE +1 -1
  15. data/vendor/pygments-main/Makefile +15 -6
  16. data/vendor/pygments-main/README.rst +39 -0
  17. data/vendor/pygments-main/REVISION +1 -1
  18. data/vendor/pygments-main/TODO +0 -3
  19. data/vendor/pygments-main/doc/_themes/pygments14/layout.html +1 -1
  20. data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +1 -1
  21. data/vendor/pygments-main/doc/conf.py +3 -11
  22. data/vendor/pygments-main/doc/docs/api.rst +15 -0
  23. data/vendor/pygments-main/doc/docs/cmdline.rst +6 -2
  24. data/vendor/pygments-main/doc/docs/filterdevelopment.rst +4 -3
  25. data/vendor/pygments-main/doc/docs/integrate.rst +11 -15
  26. data/vendor/pygments-main/doc/docs/java.rst +7 -7
  27. data/vendor/pygments-main/doc/docs/lexerdevelopment.rst +258 -171
  28. data/vendor/pygments-main/doc/docs/lexers.rst +2 -2
  29. data/vendor/pygments-main/doc/docs/styles.rst +58 -0
  30. data/vendor/pygments-main/doc/docs/tokens.rst +22 -2
  31. data/vendor/pygments-main/doc/docs/unicode.rst +15 -7
  32. data/vendor/pygments-main/doc/faq.rst +17 -21
  33. data/vendor/pygments-main/doc/index.rst +12 -11
  34. data/vendor/pygments-main/doc/languages.rst +10 -7
  35. data/vendor/pygments-main/external/autopygmentize +9 -6
  36. data/vendor/pygments-main/external/lasso-builtins-generator-9.lasso +70 -52
  37. data/vendor/pygments-main/external/markdown-processor.py +1 -1
  38. data/vendor/pygments-main/external/moin-parser.py +1 -1
  39. data/vendor/pygments-main/external/rst-directive.py +1 -1
  40. data/vendor/pygments-main/pygmentize +2 -1
  41. data/vendor/pygments-main/pygments/__init__.py +14 -15
  42. data/vendor/pygments-main/pygments/cmdline.py +188 -113
  43. data/vendor/pygments-main/pygments/console.py +13 -13
  44. data/vendor/pygments-main/pygments/filter.py +7 -7
  45. data/vendor/pygments-main/pygments/filters/__init__.py +24 -32
  46. data/vendor/pygments-main/pygments/formatter.py +5 -5
  47. data/vendor/pygments-main/pygments/formatters/__init__.py +92 -44
  48. data/vendor/pygments-main/pygments/formatters/_mapping.py +51 -69
  49. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
  50. data/vendor/pygments-main/pygments/formatters/html.py +63 -51
  51. data/vendor/pygments-main/pygments/formatters/img.py +25 -22
  52. data/vendor/pygments-main/pygments/formatters/irc.py +182 -0
  53. data/vendor/pygments-main/pygments/formatters/latex.py +34 -22
  54. data/vendor/pygments-main/pygments/formatters/other.py +5 -7
  55. data/vendor/pygments-main/pygments/formatters/rtf.py +28 -31
  56. data/vendor/pygments-main/pygments/formatters/svg.py +1 -2
  57. data/vendor/pygments-main/pygments/formatters/terminal.py +29 -45
  58. data/vendor/pygments-main/pygments/formatters/terminal256.py +118 -31
  59. data/vendor/pygments-main/pygments/lexer.py +120 -34
  60. data/vendor/pygments-main/pygments/lexers/__init__.py +85 -53
  61. data/vendor/pygments-main/pygments/lexers/{_asybuiltins.py → _asy_builtins.py} +7 -7
  62. data/vendor/pygments-main/pygments/lexers/{_clbuiltins.py → _cl_builtins.py} +17 -17
  63. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +72 -0
  64. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1346 -0
  65. data/vendor/pygments-main/pygments/lexers/{_lassobuiltins.py → _lasso_builtins.py} +4699 -4561
  66. data/vendor/pygments-main/pygments/lexers/{_luabuiltins.py → _lua_builtins.py} +91 -51
  67. data/vendor/pygments-main/pygments/lexers/_mapping.py +342 -242
  68. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1172 -0
  69. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +2547 -0
  70. data/vendor/pygments-main/pygments/lexers/{_phpbuiltins.py → _php_builtins.py} +350 -353
  71. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +600 -212
  72. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +3084 -30
  73. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1163 -0
  74. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +91 -13
  75. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +419 -0
  76. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1004 -0
  77. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1939 -0
  78. data/vendor/pygments-main/pygments/lexers/actionscript.py +240 -0
  79. data/vendor/pygments-main/pygments/lexers/agile.py +14 -2542
  80. data/vendor/pygments-main/pygments/lexers/algebra.py +221 -0
  81. data/vendor/pygments-main/pygments/lexers/ambient.py +76 -0
  82. data/vendor/pygments-main/pygments/lexers/ampl.py +87 -0
  83. data/vendor/pygments-main/pygments/lexers/apl.py +101 -0
  84. data/vendor/pygments-main/pygments/lexers/archetype.py +318 -0
  85. data/vendor/pygments-main/pygments/lexers/asm.py +276 -81
  86. data/vendor/pygments-main/pygments/lexers/automation.py +374 -0
  87. data/vendor/pygments-main/pygments/lexers/basic.py +500 -0
  88. data/vendor/pygments-main/pygments/lexers/bibtex.py +156 -0
  89. data/vendor/pygments-main/pygments/lexers/business.py +594 -0
  90. data/vendor/pygments-main/pygments/lexers/c_cpp.py +252 -0
  91. data/vendor/pygments-main/pygments/lexers/c_like.py +541 -0
  92. data/vendor/pygments-main/pygments/lexers/capnproto.py +79 -0
  93. data/vendor/pygments-main/pygments/lexers/chapel.py +101 -0
  94. data/vendor/pygments-main/pygments/lexers/clean.py +288 -0
  95. data/vendor/pygments-main/pygments/lexers/compiled.py +24 -5182
  96. data/vendor/pygments-main/pygments/lexers/configs.py +833 -0
  97. data/vendor/pygments-main/pygments/lexers/console.py +114 -0
  98. data/vendor/pygments-main/pygments/lexers/crystal.py +384 -0
  99. data/vendor/pygments-main/pygments/lexers/csound.py +366 -0
  100. data/vendor/pygments-main/pygments/lexers/css.py +689 -0
  101. data/vendor/pygments-main/pygments/lexers/d.py +251 -0
  102. data/vendor/pygments-main/pygments/lexers/dalvik.py +6 -6
  103. data/vendor/pygments-main/pygments/lexers/data.py +555 -0
  104. data/vendor/pygments-main/pygments/lexers/diff.py +165 -0
  105. data/vendor/pygments-main/pygments/lexers/dotnet.py +96 -88
  106. data/vendor/pygments-main/pygments/lexers/dsls.py +878 -0
  107. data/vendor/pygments-main/pygments/lexers/dylan.py +289 -0
  108. data/vendor/pygments-main/pygments/lexers/ecl.py +125 -0
  109. data/vendor/pygments-main/pygments/lexers/eiffel.py +65 -0
  110. data/vendor/pygments-main/pygments/lexers/elm.py +121 -0
  111. data/vendor/pygments-main/pygments/lexers/erlang.py +533 -0
  112. data/vendor/pygments-main/pygments/lexers/esoteric.py +275 -0
  113. data/vendor/pygments-main/pygments/lexers/ezhil.py +68 -0
  114. data/vendor/pygments-main/pygments/lexers/factor.py +344 -0
  115. data/vendor/pygments-main/pygments/lexers/fantom.py +250 -0
  116. data/vendor/pygments-main/pygments/lexers/felix.py +273 -0
  117. data/vendor/pygments-main/pygments/lexers/forth.py +177 -0
  118. data/vendor/pygments-main/pygments/lexers/fortran.py +205 -0
  119. data/vendor/pygments-main/pygments/lexers/foxpro.py +1 -1
  120. data/vendor/pygments-main/pygments/lexers/functional.py +11 -3661
  121. data/vendor/pygments-main/pygments/lexers/go.py +101 -0
  122. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +213 -0
  123. data/vendor/pygments-main/pygments/lexers/graph.py +7 -8
  124. data/vendor/pygments-main/pygments/lexers/graphics.py +553 -0
  125. data/vendor/pygments-main/pygments/lexers/haskell.py +840 -0
  126. data/vendor/pygments-main/pygments/lexers/haxe.py +936 -0
  127. data/vendor/pygments-main/pygments/lexers/hdl.py +172 -145
  128. data/vendor/pygments-main/pygments/lexers/hexdump.py +97 -0
  129. data/vendor/pygments-main/pygments/lexers/html.py +602 -0
  130. data/vendor/pygments-main/pygments/lexers/idl.py +270 -0
  131. data/vendor/pygments-main/pygments/lexers/igor.py +288 -0
  132. data/vendor/pygments-main/pygments/lexers/inferno.py +3 -3
  133. data/vendor/pygments-main/pygments/lexers/installers.py +322 -0
  134. data/vendor/pygments-main/pygments/lexers/int_fiction.py +1343 -0
  135. data/vendor/pygments-main/pygments/lexers/iolang.py +63 -0
  136. data/vendor/pygments-main/pygments/lexers/j.py +146 -0
  137. data/vendor/pygments-main/pygments/lexers/javascript.py +1506 -0
  138. data/vendor/pygments-main/pygments/lexers/julia.py +333 -0
  139. data/vendor/pygments-main/pygments/lexers/jvm.py +232 -186
  140. data/vendor/pygments-main/pygments/lexers/lisp.py +2621 -0
  141. data/vendor/pygments-main/pygments/lexers/make.py +202 -0
  142. data/vendor/pygments-main/pygments/lexers/markup.py +595 -0
  143. data/vendor/pygments-main/pygments/lexers/math.py +11 -2276
  144. data/vendor/pygments-main/pygments/lexers/matlab.py +663 -0
  145. data/vendor/pygments-main/pygments/lexers/ml.py +769 -0
  146. data/vendor/pygments-main/pygments/lexers/modeling.py +358 -0
  147. data/vendor/pygments-main/pygments/lexers/modula2.py +1561 -0
  148. data/vendor/pygments-main/pygments/lexers/monte.py +203 -0
  149. data/vendor/pygments-main/pygments/lexers/ncl.py +1053 -0
  150. data/vendor/pygments-main/pygments/lexers/nimrod.py +159 -0
  151. data/vendor/pygments-main/pygments/lexers/nit.py +64 -0
  152. data/vendor/pygments-main/pygments/lexers/nix.py +136 -0
  153. data/vendor/pygments-main/pygments/lexers/oberon.py +105 -0
  154. data/vendor/pygments-main/pygments/lexers/objective.py +504 -0
  155. data/vendor/pygments-main/pygments/lexers/ooc.py +85 -0
  156. data/vendor/pygments-main/pygments/lexers/other.py +30 -4481
  157. data/vendor/pygments-main/pygments/lexers/parasail.py +79 -0
  158. data/vendor/pygments-main/pygments/lexers/parsers.py +171 -114
  159. data/vendor/pygments-main/pygments/lexers/pascal.py +644 -0
  160. data/vendor/pygments-main/pygments/lexers/pawn.py +199 -0
  161. data/vendor/pygments-main/pygments/lexers/perl.py +616 -0
  162. data/vendor/pygments-main/pygments/lexers/php.py +267 -0
  163. data/vendor/pygments-main/pygments/lexers/praat.py +294 -0
  164. data/vendor/pygments-main/pygments/lexers/prolog.py +306 -0
  165. data/vendor/pygments-main/pygments/lexers/python.py +938 -0
  166. data/vendor/pygments-main/pygments/lexers/qvt.py +152 -0
  167. data/vendor/pygments-main/pygments/lexers/r.py +453 -0
  168. data/vendor/pygments-main/pygments/lexers/rdf.py +195 -24
  169. data/vendor/pygments-main/pygments/lexers/rebol.py +431 -0
  170. data/vendor/pygments-main/pygments/lexers/resource.py +85 -0
  171. data/vendor/pygments-main/pygments/lexers/rnc.py +67 -0
  172. data/vendor/pygments-main/pygments/lexers/roboconf.py +82 -0
  173. data/vendor/pygments-main/pygments/lexers/{_robotframeworklexer.py → robotframework.py} +20 -18
  174. data/vendor/pygments-main/pygments/lexers/ruby.py +519 -0
  175. data/vendor/pygments-main/pygments/lexers/rust.py +209 -0
  176. data/vendor/pygments-main/pygments/lexers/sas.py +228 -0
  177. data/vendor/pygments-main/pygments/lexers/scripting.py +1222 -0
  178. data/vendor/pygments-main/pygments/lexers/shell.py +478 -115
  179. data/vendor/pygments-main/pygments/lexers/smalltalk.py +195 -0
  180. data/vendor/pygments-main/pygments/lexers/smv.py +75 -0
  181. data/vendor/pygments-main/pygments/lexers/snobol.py +83 -0
  182. data/vendor/pygments-main/pygments/lexers/special.py +6 -2
  183. data/vendor/pygments-main/pygments/lexers/sql.py +209 -120
  184. data/vendor/pygments-main/pygments/lexers/stata.py +106 -0
  185. data/vendor/pygments-main/pygments/lexers/supercollider.py +90 -0
  186. data/vendor/pygments-main/pygments/lexers/tcl.py +145 -0
  187. data/vendor/pygments-main/pygments/lexers/templates.py +282 -90
  188. data/vendor/pygments-main/pygments/lexers/testing.py +207 -0
  189. data/vendor/pygments-main/pygments/lexers/text.py +15 -2045
  190. data/vendor/pygments-main/pygments/lexers/textedit.py +169 -0
  191. data/vendor/pygments-main/pygments/lexers/textfmts.py +297 -0
  192. data/vendor/pygments-main/pygments/lexers/theorem.py +458 -0
  193. data/vendor/pygments-main/pygments/lexers/trafficscript.py +54 -0
  194. data/vendor/pygments-main/pygments/lexers/typoscript.py +225 -0
  195. data/vendor/pygments-main/pygments/lexers/urbi.py +133 -0
  196. data/vendor/pygments-main/pygments/lexers/varnish.py +190 -0
  197. data/vendor/pygments-main/pygments/lexers/verification.py +111 -0
  198. data/vendor/pygments-main/pygments/lexers/web.py +13 -4499
  199. data/vendor/pygments-main/pygments/lexers/webmisc.py +979 -0
  200. data/vendor/pygments-main/pygments/lexers/whiley.py +117 -0
  201. data/vendor/pygments-main/pygments/lexers/x10.py +69 -0
  202. data/vendor/pygments-main/pygments/modeline.py +5 -2
  203. data/vendor/pygments-main/pygments/plugin.py +1 -1
  204. data/vendor/pygments-main/pygments/regexopt.py +92 -0
  205. data/vendor/pygments-main/pygments/scanner.py +3 -2
  206. data/vendor/pygments-main/pygments/sphinxext.py +11 -6
  207. data/vendor/pygments-main/pygments/style.py +41 -4
  208. data/vendor/pygments-main/pygments/styles/__init__.py +5 -1
  209. data/vendor/pygments-main/pygments/styles/algol.py +63 -0
  210. data/vendor/pygments-main/pygments/styles/algol_nu.py +63 -0
  211. data/vendor/pygments-main/pygments/styles/arduino.py +98 -0
  212. data/vendor/pygments-main/pygments/styles/autumn.py +1 -1
  213. data/vendor/pygments-main/pygments/styles/borland.py +1 -1
  214. data/vendor/pygments-main/pygments/styles/bw.py +1 -1
  215. data/vendor/pygments-main/pygments/styles/colorful.py +1 -1
  216. data/vendor/pygments-main/pygments/styles/default.py +1 -1
  217. data/vendor/pygments-main/pygments/styles/emacs.py +1 -1
  218. data/vendor/pygments-main/pygments/styles/friendly.py +1 -1
  219. data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
  220. data/vendor/pygments-main/pygments/styles/igor.py +1 -1
  221. data/vendor/pygments-main/pygments/styles/lovelace.py +97 -0
  222. data/vendor/pygments-main/pygments/styles/manni.py +1 -1
  223. data/vendor/pygments-main/pygments/styles/monokai.py +1 -1
  224. data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
  225. data/vendor/pygments-main/pygments/styles/native.py +1 -1
  226. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -1
  227. data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -1
  228. data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
  229. data/vendor/pygments-main/pygments/styles/perldoc.py +2 -2
  230. data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
  231. data/vendor/pygments-main/pygments/styles/sas.py +41 -0
  232. data/vendor/pygments-main/pygments/styles/stata.py +37 -0
  233. data/vendor/pygments-main/pygments/styles/tango.py +1 -1
  234. data/vendor/pygments-main/pygments/styles/trac.py +1 -1
  235. data/vendor/pygments-main/pygments/styles/vim.py +1 -1
  236. data/vendor/pygments-main/pygments/styles/vs.py +1 -1
  237. data/vendor/pygments-main/pygments/styles/xcode.py +1 -1
  238. data/vendor/pygments-main/pygments/token.py +31 -16
  239. data/vendor/pygments-main/pygments/unistring.py +141 -65
  240. data/vendor/pygments-main/pygments/util.py +129 -33
  241. data/vendor/pygments-main/requirements.txt +5 -0
  242. data/vendor/pygments-main/scripts/check_sources.py +25 -40
  243. data/vendor/pygments-main/scripts/debug_lexer.py +246 -0
  244. data/vendor/pygments-main/scripts/find_error.py +1 -0
  245. data/vendor/pygments-main/scripts/get_vimkw.py +35 -4
  246. data/vendor/pygments-main/setup.cfg +3 -0
  247. data/vendor/pygments-main/setup.py +17 -30
  248. data/vendor/pygments-main/tox.ini +7 -0
  249. metadata +159 -387
  250. data/vendor/pygments-main/ez_setup.py +0 -382
  251. data/vendor/pygments-main/pygments/lexers/_cocoabuiltins.py +0 -73
  252. data/vendor/pygments-main/pygments/lexers/_openedgebuiltins.py +0 -562
  253. data/vendor/pygments-main/pygments/lexers/_sourcemodbuiltins.py +0 -1077
  254. data/vendor/pygments-main/pygments/lexers/_vimbuiltins.py +0 -13
  255. data/vendor/pygments-main/pygments/lexers/qbasic.py +0 -157
  256. data/vendor/pygments-main/scripts/find_codetags.py +0 -213
  257. data/vendor/pygments-main/scripts/find_error.py +0 -173
  258. data/vendor/pygments-main/tests/dtds/HTML4-f.dtd +0 -37
  259. data/vendor/pygments-main/tests/dtds/HTML4-s.dtd +0 -869
  260. data/vendor/pygments-main/tests/dtds/HTML4.dcl +0 -88
  261. data/vendor/pygments-main/tests/dtds/HTML4.dtd +0 -1092
  262. data/vendor/pygments-main/tests/dtds/HTML4.soc +0 -9
  263. data/vendor/pygments-main/tests/dtds/HTMLlat1.ent +0 -195
  264. data/vendor/pygments-main/tests/dtds/HTMLspec.ent +0 -77
  265. data/vendor/pygments-main/tests/dtds/HTMLsym.ent +0 -241
  266. data/vendor/pygments-main/tests/examplefiles/99_bottles_of_beer.chpl +0 -118
  267. data/vendor/pygments-main/tests/examplefiles/AcidStateAdvanced.hs +0 -209
  268. data/vendor/pygments-main/tests/examplefiles/AlternatingGroup.mu +0 -102
  269. data/vendor/pygments-main/tests/examplefiles/BOM.js +0 -1
  270. data/vendor/pygments-main/tests/examplefiles/CPDictionary.j +0 -611
  271. data/vendor/pygments-main/tests/examplefiles/Config.in.cache +0 -1973
  272. data/vendor/pygments-main/tests/examplefiles/Constants.mo +0 -158
  273. data/vendor/pygments-main/tests/examplefiles/DancingSudoku.lhs +0 -411
  274. data/vendor/pygments-main/tests/examplefiles/Deflate.fs +0 -578
  275. data/vendor/pygments-main/tests/examplefiles/Error.pmod +0 -38
  276. data/vendor/pygments-main/tests/examplefiles/Errors.scala +0 -18
  277. data/vendor/pygments-main/tests/examplefiles/FakeFile.pike +0 -360
  278. data/vendor/pygments-main/tests/examplefiles/Get-CommandDefinitionHtml.ps1 +0 -66
  279. data/vendor/pygments-main/tests/examplefiles/IPDispatchC.nc +0 -104
  280. data/vendor/pygments-main/tests/examplefiles/IPDispatchP.nc +0 -671
  281. data/vendor/pygments-main/tests/examplefiles/Intro.java +0 -1660
  282. data/vendor/pygments-main/tests/examplefiles/Makefile +0 -1131
  283. data/vendor/pygments-main/tests/examplefiles/Object.st +0 -4394
  284. data/vendor/pygments-main/tests/examplefiles/OrderedMap.hx +0 -584
  285. data/vendor/pygments-main/tests/examplefiles/RoleQ.pm6 +0 -23
  286. data/vendor/pygments-main/tests/examplefiles/SmallCheck.hs +0 -378
  287. data/vendor/pygments-main/tests/examplefiles/Sorting.mod +0 -470
  288. data/vendor/pygments-main/tests/examplefiles/Sudoku.lhs +0 -382
  289. data/vendor/pygments-main/tests/examplefiles/addressbook.proto +0 -30
  290. data/vendor/pygments-main/tests/examplefiles/antlr_ANTLRv3.g +0 -608
  291. data/vendor/pygments-main/tests/examplefiles/antlr_throws +0 -1
  292. data/vendor/pygments-main/tests/examplefiles/apache2.conf +0 -393
  293. data/vendor/pygments-main/tests/examplefiles/as3_test.as +0 -143
  294. data/vendor/pygments-main/tests/examplefiles/as3_test2.as +0 -46
  295. data/vendor/pygments-main/tests/examplefiles/as3_test3.as +0 -3
  296. data/vendor/pygments-main/tests/examplefiles/aspx-cs_example +0 -27
  297. data/vendor/pygments-main/tests/examplefiles/autoit_submit.au3 +0 -25
  298. data/vendor/pygments-main/tests/examplefiles/badcase.java +0 -2
  299. data/vendor/pygments-main/tests/examplefiles/batchfile.bat +0 -49
  300. data/vendor/pygments-main/tests/examplefiles/bigtest.nsi +0 -308
  301. data/vendor/pygments-main/tests/examplefiles/boot-9.scm +0 -1557
  302. data/vendor/pygments-main/tests/examplefiles/ca65_example +0 -284
  303. data/vendor/pygments-main/tests/examplefiles/cbmbas_example +0 -9
  304. data/vendor/pygments-main/tests/examplefiles/cells.ps +0 -515
  305. data/vendor/pygments-main/tests/examplefiles/ceval.c +0 -2604
  306. data/vendor/pygments-main/tests/examplefiles/cheetah_example.html +0 -13
  307. data/vendor/pygments-main/tests/examplefiles/classes.dylan +0 -125
  308. data/vendor/pygments-main/tests/examplefiles/clojure-weird-keywords.clj +0 -5
  309. data/vendor/pygments-main/tests/examplefiles/condensed_ruby.rb +0 -10
  310. data/vendor/pygments-main/tests/examplefiles/coq_RelationClasses +0 -447
  311. data/vendor/pygments-main/tests/examplefiles/core.cljs +0 -52
  312. data/vendor/pygments-main/tests/examplefiles/database.pytb +0 -20
  313. data/vendor/pygments-main/tests/examplefiles/de.MoinMoin.po +0 -2461
  314. data/vendor/pygments-main/tests/examplefiles/demo.ahk +0 -181
  315. data/vendor/pygments-main/tests/examplefiles/demo.cfm +0 -50
  316. data/vendor/pygments-main/tests/examplefiles/demo.hbs +0 -12
  317. data/vendor/pygments-main/tests/examplefiles/django_sample.html+django +0 -68
  318. data/vendor/pygments-main/tests/examplefiles/dwarf.cw +0 -17
  319. data/vendor/pygments-main/tests/examplefiles/ember.handlebars +0 -33
  320. data/vendor/pygments-main/tests/examplefiles/erl_session +0 -10
  321. data/vendor/pygments-main/tests/examplefiles/escape_semicolon.clj +0 -1
  322. data/vendor/pygments-main/tests/examplefiles/evil_regex.js +0 -48
  323. data/vendor/pygments-main/tests/examplefiles/example.Rd +0 -78
  324. data/vendor/pygments-main/tests/examplefiles/example.als +0 -217
  325. data/vendor/pygments-main/tests/examplefiles/example.bug +0 -54
  326. data/vendor/pygments-main/tests/examplefiles/example.c +0 -2080
  327. data/vendor/pygments-main/tests/examplefiles/example.ceylon +0 -52
  328. data/vendor/pygments-main/tests/examplefiles/example.chai +0 -6
  329. data/vendor/pygments-main/tests/examplefiles/example.clay +0 -33
  330. data/vendor/pygments-main/tests/examplefiles/example.cls +0 -15
  331. data/vendor/pygments-main/tests/examplefiles/example.cob +0 -3556
  332. data/vendor/pygments-main/tests/examplefiles/example.coffee +0 -27
  333. data/vendor/pygments-main/tests/examplefiles/example.cpp +0 -2363
  334. data/vendor/pygments-main/tests/examplefiles/example.e +0 -124
  335. data/vendor/pygments-main/tests/examplefiles/example.f90 +0 -8
  336. data/vendor/pygments-main/tests/examplefiles/example.feature +0 -16
  337. data/vendor/pygments-main/tests/examplefiles/example.gd +0 -23
  338. data/vendor/pygments-main/tests/examplefiles/example.gi +0 -64
  339. data/vendor/pygments-main/tests/examplefiles/example.groovy +0 -2
  340. data/vendor/pygments-main/tests/examplefiles/example.gs +0 -106
  341. data/vendor/pygments-main/tests/examplefiles/example.gst +0 -7
  342. data/vendor/pygments-main/tests/examplefiles/example.hs +0 -27
  343. data/vendor/pygments-main/tests/examplefiles/example.hx +0 -185
  344. data/vendor/pygments-main/tests/examplefiles/example.i6t +0 -32
  345. data/vendor/pygments-main/tests/examplefiles/example.i7x +0 -45
  346. data/vendor/pygments-main/tests/examplefiles/example.inf +0 -374
  347. data/vendor/pygments-main/tests/examplefiles/example.j +0 -564
  348. data/vendor/pygments-main/tests/examplefiles/example.jag +0 -48
  349. data/vendor/pygments-main/tests/examplefiles/example.java +0 -16
  350. data/vendor/pygments-main/tests/examplefiles/example.kal +0 -75
  351. data/vendor/pygments-main/tests/examplefiles/example.kt +0 -47
  352. data/vendor/pygments-main/tests/examplefiles/example.lagda +0 -19
  353. data/vendor/pygments-main/tests/examplefiles/example.liquid +0 -42
  354. data/vendor/pygments-main/tests/examplefiles/example.lua +0 -250
  355. data/vendor/pygments-main/tests/examplefiles/example.ma +0 -8
  356. data/vendor/pygments-main/tests/examplefiles/example.monkey +0 -152
  357. data/vendor/pygments-main/tests/examplefiles/example.moo +0 -26
  358. data/vendor/pygments-main/tests/examplefiles/example.moon +0 -629
  359. data/vendor/pygments-main/tests/examplefiles/example.mq4 +0 -187
  360. data/vendor/pygments-main/tests/examplefiles/example.mqh +0 -123
  361. data/vendor/pygments-main/tests/examplefiles/example.msc +0 -43
  362. data/vendor/pygments-main/tests/examplefiles/example.ni +0 -57
  363. data/vendor/pygments-main/tests/examplefiles/example.nim +0 -1010
  364. data/vendor/pygments-main/tests/examplefiles/example.nix +0 -80
  365. data/vendor/pygments-main/tests/examplefiles/example.ns2 +0 -69
  366. data/vendor/pygments-main/tests/examplefiles/example.pas +0 -2708
  367. data/vendor/pygments-main/tests/examplefiles/example.pp +0 -8
  368. data/vendor/pygments-main/tests/examplefiles/example.prg +0 -161
  369. data/vendor/pygments-main/tests/examplefiles/example.rb +0 -1852
  370. data/vendor/pygments-main/tests/examplefiles/example.red +0 -257
  371. data/vendor/pygments-main/tests/examplefiles/example.reds +0 -150
  372. data/vendor/pygments-main/tests/examplefiles/example.reg +0 -19
  373. data/vendor/pygments-main/tests/examplefiles/example.rexx +0 -50
  374. data/vendor/pygments-main/tests/examplefiles/example.rhtml +0 -561
  375. data/vendor/pygments-main/tests/examplefiles/example.rkt +0 -743
  376. data/vendor/pygments-main/tests/examplefiles/example.rpf +0 -4
  377. data/vendor/pygments-main/tests/examplefiles/example.sh +0 -22
  378. data/vendor/pygments-main/tests/examplefiles/example.sh-session +0 -19
  379. data/vendor/pygments-main/tests/examplefiles/example.shell-session +0 -45
  380. data/vendor/pygments-main/tests/examplefiles/example.slim +0 -31
  381. data/vendor/pygments-main/tests/examplefiles/example.sls +0 -51
  382. data/vendor/pygments-main/tests/examplefiles/example.sml +0 -156
  383. data/vendor/pygments-main/tests/examplefiles/example.snobol +0 -15
  384. data/vendor/pygments-main/tests/examplefiles/example.stan +0 -110
  385. data/vendor/pygments-main/tests/examplefiles/example.tea +0 -34
  386. data/vendor/pygments-main/tests/examplefiles/example.todotxt +0 -9
  387. data/vendor/pygments-main/tests/examplefiles/example.ts +0 -28
  388. data/vendor/pygments-main/tests/examplefiles/example.u +0 -548
  389. data/vendor/pygments-main/tests/examplefiles/example.weechatlog +0 -9
  390. data/vendor/pygments-main/tests/examplefiles/example.xhtml +0 -376
  391. data/vendor/pygments-main/tests/examplefiles/example.xtend +0 -34
  392. data/vendor/pygments-main/tests/examplefiles/example.yaml +0 -302
  393. data/vendor/pygments-main/tests/examplefiles/example2.aspx +0 -29
  394. data/vendor/pygments-main/tests/examplefiles/example2.msc +0 -79
  395. data/vendor/pygments-main/tests/examplefiles/exampleScript.cfc +0 -241
  396. data/vendor/pygments-main/tests/examplefiles/exampleTag.cfc +0 -18
  397. data/vendor/pygments-main/tests/examplefiles/example_elixir.ex +0 -205
  398. data/vendor/pygments-main/tests/examplefiles/example_file.fy +0 -128
  399. data/vendor/pygments-main/tests/examplefiles/firefox.mak +0 -586
  400. data/vendor/pygments-main/tests/examplefiles/flipflop.sv +0 -19
  401. data/vendor/pygments-main/tests/examplefiles/foo.sce +0 -6
  402. data/vendor/pygments-main/tests/examplefiles/format.ml +0 -1213
  403. data/vendor/pygments-main/tests/examplefiles/fucked_up.rb +0 -77
  404. data/vendor/pygments-main/tests/examplefiles/function.mu +0 -1
  405. data/vendor/pygments-main/tests/examplefiles/functional.rst +0 -1472
  406. data/vendor/pygments-main/tests/examplefiles/garcia-wachs.kk +0 -133
  407. data/vendor/pygments-main/tests/examplefiles/genclass.clj +0 -510
  408. data/vendor/pygments-main/tests/examplefiles/genshi_example.xml+genshi +0 -193
  409. data/vendor/pygments-main/tests/examplefiles/genshitext_example.genshitext +0 -33
  410. data/vendor/pygments-main/tests/examplefiles/glsl.frag +0 -7
  411. data/vendor/pygments-main/tests/examplefiles/glsl.vert +0 -13
  412. data/vendor/pygments-main/tests/examplefiles/grammar-test.p6 +0 -22
  413. data/vendor/pygments-main/tests/examplefiles/hash_syntax.rb +0 -5
  414. data/vendor/pygments-main/tests/examplefiles/hello.at +0 -6
  415. data/vendor/pygments-main/tests/examplefiles/hello.golo +0 -5
  416. data/vendor/pygments-main/tests/examplefiles/hello.lsl +0 -12
  417. data/vendor/pygments-main/tests/examplefiles/hello.smali +0 -40
  418. data/vendor/pygments-main/tests/examplefiles/hello.sp +0 -9
  419. data/vendor/pygments-main/tests/examplefiles/html+php_faulty.php +0 -1
  420. data/vendor/pygments-main/tests/examplefiles/http_request_example +0 -15
  421. data/vendor/pygments-main/tests/examplefiles/http_response_example +0 -29
  422. data/vendor/pygments-main/tests/examplefiles/hybris_File.hy +0 -174
  423. data/vendor/pygments-main/tests/examplefiles/idl_sample.pro +0 -73
  424. data/vendor/pygments-main/tests/examplefiles/iex_example +0 -23
  425. data/vendor/pygments-main/tests/examplefiles/inet_pton6.dg +0 -71
  426. data/vendor/pygments-main/tests/examplefiles/intro.ik +0 -24
  427. data/vendor/pygments-main/tests/examplefiles/ints.php +0 -10
  428. data/vendor/pygments-main/tests/examplefiles/intsyn.fun +0 -675
  429. data/vendor/pygments-main/tests/examplefiles/intsyn.sig +0 -286
  430. data/vendor/pygments-main/tests/examplefiles/irb_heredoc +0 -8
  431. data/vendor/pygments-main/tests/examplefiles/irc.lsp +0 -214
  432. data/vendor/pygments-main/tests/examplefiles/java.properties +0 -16
  433. data/vendor/pygments-main/tests/examplefiles/jbst_example1.jbst +0 -28
  434. data/vendor/pygments-main/tests/examplefiles/jbst_example2.jbst +0 -45
  435. data/vendor/pygments-main/tests/examplefiles/jinjadesignerdoc.rst +0 -713
  436. data/vendor/pygments-main/tests/examplefiles/json.lasso +0 -301
  437. data/vendor/pygments-main/tests/examplefiles/json.lasso9 +0 -213
  438. data/vendor/pygments-main/tests/examplefiles/language.hy +0 -165
  439. data/vendor/pygments-main/tests/examplefiles/lighttpd_config.conf +0 -13
  440. data/vendor/pygments-main/tests/examplefiles/limbo.b +0 -456
  441. data/vendor/pygments-main/tests/examplefiles/linecontinuation.py +0 -47
  442. data/vendor/pygments-main/tests/examplefiles/livescript-demo.ls +0 -43
  443. data/vendor/pygments-main/tests/examplefiles/logos_example.xm +0 -28
  444. data/vendor/pygments-main/tests/examplefiles/ltmain.sh +0 -2849
  445. data/vendor/pygments-main/tests/examplefiles/main.cmake +0 -44
  446. data/vendor/pygments-main/tests/examplefiles/markdown.lsp +0 -679
  447. data/vendor/pygments-main/tests/examplefiles/matlab_noreturn +0 -3
  448. data/vendor/pygments-main/tests/examplefiles/matlab_sample +0 -30
  449. data/vendor/pygments-main/tests/examplefiles/matlabsession_sample.txt +0 -37
  450. data/vendor/pygments-main/tests/examplefiles/metagrammar.treetop +0 -455
  451. data/vendor/pygments-main/tests/examplefiles/minehunt.qml +0 -112
  452. data/vendor/pygments-main/tests/examplefiles/minimal.ns2 +0 -4
  453. data/vendor/pygments-main/tests/examplefiles/moin_SyntaxReference.txt +0 -340
  454. data/vendor/pygments-main/tests/examplefiles/multiline_regexes.rb +0 -38
  455. data/vendor/pygments-main/tests/examplefiles/nanomsg.intr +0 -95
  456. data/vendor/pygments-main/tests/examplefiles/nasm_aoutso.asm +0 -96
  457. data/vendor/pygments-main/tests/examplefiles/nasm_objexe.asm +0 -30
  458. data/vendor/pygments-main/tests/examplefiles/nemerle_sample.n +0 -87
  459. data/vendor/pygments-main/tests/examplefiles/nginx_nginx.conf +0 -118
  460. data/vendor/pygments-main/tests/examplefiles/numbers.c +0 -12
  461. data/vendor/pygments-main/tests/examplefiles/objc_example.m +0 -179
  462. data/vendor/pygments-main/tests/examplefiles/openedge_example +0 -34
  463. data/vendor/pygments-main/tests/examplefiles/pawn_example +0 -25
  464. data/vendor/pygments-main/tests/examplefiles/perl_misc +0 -62
  465. data/vendor/pygments-main/tests/examplefiles/perl_perl5db +0 -998
  466. data/vendor/pygments-main/tests/examplefiles/perl_regex-delims +0 -120
  467. data/vendor/pygments-main/tests/examplefiles/perlfunc.1 +0 -856
  468. data/vendor/pygments-main/tests/examplefiles/phpMyAdmin.spec +0 -163
  469. data/vendor/pygments-main/tests/examplefiles/phpcomplete.vim +0 -567
  470. data/vendor/pygments-main/tests/examplefiles/pleac.in.rb +0 -1223
  471. data/vendor/pygments-main/tests/examplefiles/postgresql_test.txt +0 -47
  472. data/vendor/pygments-main/tests/examplefiles/pppoe.applescript +0 -10
  473. data/vendor/pygments-main/tests/examplefiles/psql_session.txt +0 -122
  474. data/vendor/pygments-main/tests/examplefiles/py3_test.txt +0 -2
  475. data/vendor/pygments-main/tests/examplefiles/py3tb_test.py3tb +0 -4
  476. data/vendor/pygments-main/tests/examplefiles/pycon_test.pycon +0 -14
  477. data/vendor/pygments-main/tests/examplefiles/pytb_test2.pytb +0 -2
  478. data/vendor/pygments-main/tests/examplefiles/pytb_test3.pytb +0 -4
  479. data/vendor/pygments-main/tests/examplefiles/python25-bsd.mak +0 -234
  480. data/vendor/pygments-main/tests/examplefiles/qbasic_example +0 -2
  481. data/vendor/pygments-main/tests/examplefiles/qsort.prolog +0 -13
  482. data/vendor/pygments-main/tests/examplefiles/r-console-transcript.Rout +0 -38
  483. data/vendor/pygments-main/tests/examplefiles/r6rs-comments.scm +0 -23
  484. data/vendor/pygments-main/tests/examplefiles/ragel-cpp_rlscan +0 -280
  485. data/vendor/pygments-main/tests/examplefiles/ragel-cpp_snippet +0 -2
  486. data/vendor/pygments-main/tests/examplefiles/regex.js +0 -22
  487. data/vendor/pygments-main/tests/examplefiles/reversi.lsp +0 -427
  488. data/vendor/pygments-main/tests/examplefiles/robotframework_test.txt +0 -39
  489. data/vendor/pygments-main/tests/examplefiles/rql-queries.rql +0 -34
  490. data/vendor/pygments-main/tests/examplefiles/ruby_func_def.rb +0 -11
  491. data/vendor/pygments-main/tests/examplefiles/rust_example.rs +0 -233
  492. data/vendor/pygments-main/tests/examplefiles/scilab.sci +0 -30
  493. data/vendor/pygments-main/tests/examplefiles/scope.cirru +0 -43
  494. data/vendor/pygments-main/tests/examplefiles/session.dylan-console +0 -9
  495. data/vendor/pygments-main/tests/examplefiles/sibling.prolog +0 -19
  496. data/vendor/pygments-main/tests/examplefiles/simple.md +0 -747
  497. data/vendor/pygments-main/tests/examplefiles/smarty_example.html +0 -209
  498. data/vendor/pygments-main/tests/examplefiles/source.lgt +0 -343
  499. data/vendor/pygments-main/tests/examplefiles/sources.list +0 -62
  500. data/vendor/pygments-main/tests/examplefiles/sparql.rq +0 -23
  501. data/vendor/pygments-main/tests/examplefiles/sphere.pov +0 -18
  502. data/vendor/pygments-main/tests/examplefiles/sqlite3.sqlite3-console +0 -27
  503. data/vendor/pygments-main/tests/examplefiles/squid.conf +0 -30
  504. data/vendor/pygments-main/tests/examplefiles/string.jl +0 -1031
  505. data/vendor/pygments-main/tests/examplefiles/string_delimiters.d +0 -21
  506. data/vendor/pygments-main/tests/examplefiles/stripheredoc.sh +0 -3
  507. data/vendor/pygments-main/tests/examplefiles/swig_java.swg +0 -1329
  508. data/vendor/pygments-main/tests/examplefiles/swig_std_vector.i +0 -225
  509. data/vendor/pygments-main/tests/examplefiles/test.R +0 -185
  510. data/vendor/pygments-main/tests/examplefiles/test.adb +0 -211
  511. data/vendor/pygments-main/tests/examplefiles/test.agda +0 -102
  512. data/vendor/pygments-main/tests/examplefiles/test.apl +0 -26
  513. data/vendor/pygments-main/tests/examplefiles/test.asy +0 -131
  514. data/vendor/pygments-main/tests/examplefiles/test.awk +0 -121
  515. data/vendor/pygments-main/tests/examplefiles/test.bb +0 -95
  516. data/vendor/pygments-main/tests/examplefiles/test.bmx +0 -145
  517. data/vendor/pygments-main/tests/examplefiles/test.boo +0 -39
  518. data/vendor/pygments-main/tests/examplefiles/test.bro +0 -250
  519. data/vendor/pygments-main/tests/examplefiles/test.cs +0 -374
  520. data/vendor/pygments-main/tests/examplefiles/test.css +0 -54
  521. data/vendor/pygments-main/tests/examplefiles/test.cu +0 -36
  522. data/vendor/pygments-main/tests/examplefiles/test.cyp +0 -123
  523. data/vendor/pygments-main/tests/examplefiles/test.d +0 -135
  524. data/vendor/pygments-main/tests/examplefiles/test.dart +0 -23
  525. data/vendor/pygments-main/tests/examplefiles/test.dtd +0 -89
  526. data/vendor/pygments-main/tests/examplefiles/test.ebnf +0 -31
  527. data/vendor/pygments-main/tests/examplefiles/test.ec +0 -605
  528. data/vendor/pygments-main/tests/examplefiles/test.ecl +0 -58
  529. data/vendor/pygments-main/tests/examplefiles/test.eh +0 -315
  530. data/vendor/pygments-main/tests/examplefiles/test.erl +0 -169
  531. data/vendor/pygments-main/tests/examplefiles/test.evoque +0 -33
  532. data/vendor/pygments-main/tests/examplefiles/test.fan +0 -818
  533. data/vendor/pygments-main/tests/examplefiles/test.flx +0 -57
  534. data/vendor/pygments-main/tests/examplefiles/test.gdc +0 -13
  535. data/vendor/pygments-main/tests/examplefiles/test.groovy +0 -97
  536. data/vendor/pygments-main/tests/examplefiles/test.html +0 -339
  537. data/vendor/pygments-main/tests/examplefiles/test.idr +0 -93
  538. data/vendor/pygments-main/tests/examplefiles/test.ini +0 -10
  539. data/vendor/pygments-main/tests/examplefiles/test.java +0 -653
  540. data/vendor/pygments-main/tests/examplefiles/test.jsp +0 -24
  541. data/vendor/pygments-main/tests/examplefiles/test.maql +0 -45
  542. data/vendor/pygments-main/tests/examplefiles/test.mask +0 -41
  543. data/vendor/pygments-main/tests/examplefiles/test.mod +0 -374
  544. data/vendor/pygments-main/tests/examplefiles/test.moo +0 -51
  545. data/vendor/pygments-main/tests/examplefiles/test.myt +0 -166
  546. data/vendor/pygments-main/tests/examplefiles/test.nim +0 -93
  547. data/vendor/pygments-main/tests/examplefiles/test.opa +0 -10
  548. data/vendor/pygments-main/tests/examplefiles/test.p6 +0 -252
  549. data/vendor/pygments-main/tests/examplefiles/test.pan +0 -54
  550. data/vendor/pygments-main/tests/examplefiles/test.pas +0 -743
  551. data/vendor/pygments-main/tests/examplefiles/test.php +0 -507
  552. data/vendor/pygments-main/tests/examplefiles/test.pig +0 -148
  553. data/vendor/pygments-main/tests/examplefiles/test.plot +0 -333
  554. data/vendor/pygments-main/tests/examplefiles/test.ps1 +0 -108
  555. data/vendor/pygments-main/tests/examplefiles/test.pwn +0 -253
  556. data/vendor/pygments-main/tests/examplefiles/test.pypylog +0 -1839
  557. data/vendor/pygments-main/tests/examplefiles/test.r3 +0 -114
  558. data/vendor/pygments-main/tests/examplefiles/test.rb +0 -177
  559. data/vendor/pygments-main/tests/examplefiles/test.rhtml +0 -43
  560. data/vendor/pygments-main/tests/examplefiles/test.rsl +0 -111
  561. data/vendor/pygments-main/tests/examplefiles/test.scaml +0 -8
  562. data/vendor/pygments-main/tests/examplefiles/test.ssp +0 -12
  563. data/vendor/pygments-main/tests/examplefiles/test.swift +0 -65
  564. data/vendor/pygments-main/tests/examplefiles/test.tcsh +0 -830
  565. data/vendor/pygments-main/tests/examplefiles/test.vb +0 -407
  566. data/vendor/pygments-main/tests/examplefiles/test.vhdl +0 -161
  567. data/vendor/pygments-main/tests/examplefiles/test.xqy +0 -138
  568. data/vendor/pygments-main/tests/examplefiles/test.xsl +0 -23
  569. data/vendor/pygments-main/tests/examplefiles/test.zep +0 -33
  570. data/vendor/pygments-main/tests/examplefiles/test2.pypylog +0 -120
  571. data/vendor/pygments-main/tests/examplefiles/truncated.pytb +0 -15
  572. data/vendor/pygments-main/tests/examplefiles/type.lisp +0 -1218
  573. data/vendor/pygments-main/tests/examplefiles/underscore.coffee +0 -603
  574. data/vendor/pygments-main/tests/examplefiles/unicode.applescript +0 -5
  575. data/vendor/pygments-main/tests/examplefiles/unicode.go +0 -10
  576. data/vendor/pygments-main/tests/examplefiles/unicodedoc.py +0 -11
  577. data/vendor/pygments-main/tests/examplefiles/unix-io.lid +0 -37
  578. data/vendor/pygments-main/tests/examplefiles/vbnet_test.bas +0 -29
  579. data/vendor/pygments-main/tests/examplefiles/vctreestatus_hg +0 -4
  580. data/vendor/pygments-main/tests/examplefiles/vimrc +0 -21
  581. data/vendor/pygments-main/tests/examplefiles/webkit-transition.css +0 -3
  582. data/vendor/pygments-main/tests/examplefiles/while.pov +0 -13
  583. data/vendor/pygments-main/tests/examplefiles/wiki.factor +0 -384
  584. data/vendor/pygments-main/tests/examplefiles/xml_example +0 -1897
  585. data/vendor/pygments-main/tests/examplefiles/zmlrpc.f90 +0 -798
  586. data/vendor/pygments-main/tests/run.py +0 -44
  587. data/vendor/pygments-main/tests/string_asserts.py +0 -22
  588. data/vendor/pygments-main/tests/support.py +0 -15
  589. data/vendor/pygments-main/tests/support/tags +0 -36
  590. data/vendor/pygments-main/tests/test_basic_api.py +0 -309
  591. data/vendor/pygments-main/tests/test_cfm.py +0 -46
  592. data/vendor/pygments-main/tests/test_clexer.py +0 -236
  593. data/vendor/pygments-main/tests/test_cmdline.py +0 -106
  594. data/vendor/pygments-main/tests/test_examplefiles.py +0 -110
  595. data/vendor/pygments-main/tests/test_html_formatter.py +0 -180
  596. data/vendor/pygments-main/tests/test_latex_formatter.py +0 -57
  597. data/vendor/pygments-main/tests/test_lexers_other.py +0 -68
  598. data/vendor/pygments-main/tests/test_objectiveclexer.py +0 -81
  599. data/vendor/pygments-main/tests/test_perllexer.py +0 -137
  600. data/vendor/pygments-main/tests/test_qbasiclexer.py +0 -43
  601. data/vendor/pygments-main/tests/test_regexlexer.py +0 -54
  602. data/vendor/pygments-main/tests/test_rtf_formatter.py +0 -109
  603. data/vendor/pygments-main/tests/test_string_asserts.py +0 -39
  604. data/vendor/pygments-main/tests/test_token.py +0 -46
  605. data/vendor/pygments-main/tests/test_using_api.py +0 -40
  606. data/vendor/pygments-main/tests/test_util.py +0 -135
@@ -1,1660 +0,0 @@
1
- /*
2
- * Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
3
- *
4
- * Redistribution and use in source and binary forms, with or without
5
- * modification, are permitted provided that the following conditions
6
- * are met:
7
- *
8
- * -Redistributions of source code must retain the above copyright
9
- * notice, this list of conditions and the following disclaimer.
10
- *
11
- * -Redistribution in binary form must reproduct the above copyright
12
- * notice, this list of conditions and the following disclaimer in
13
- * the documentation and/or other materials provided with the distribution.
14
- *
15
- * Neither the name of Sun Microsystems, Inc. or the names of contributors
16
- * may be used to endorse or promote products derived from this software
17
- * without specific prior written permission.
18
- *
19
- * This software is provided "AS IS," without a warranty of any kind. ALL
20
- * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING
21
- * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
22
- * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT
23
- * BE LIABLE FOR ANY DAMAGES OR LIABILITIES SUFFERED BY LICENSEE AS A RESULT
24
- * OF OR RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THE SOFTWARE OR ITS
25
- * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST
26
- * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,
27
- * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY
28
- * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN
29
- * IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
30
- *
31
- * You acknowledge that Software is not designed, licensed or intended for
32
- * use in the design, construction, operation or maintenance of any nuclear
33
- * facility.
34
- */
35
-
36
-
37
- package java2d;
38
-
39
- import java.awt.*;
40
- import java.awt.event.*;
41
- import java.awt.geom.*;
42
- import java.awt.image.BufferedImage;
43
- import java.awt.image.DataBuffer;
44
- import java.awt.font.*;
45
- import javax.swing.*;
46
- import javax.swing.border.*;
47
- import javax.swing.table.*;
48
- import javax.swing.event.*;
49
- import java.util.Vector;
50
- import java.util.List;
51
- import java.util.Arrays;
52
-
53
-
54
-
55
- /**
56
- * Introduction to the Java2Demo.
57
- *
58
- * @version @(#)Intro.java 1.19 03/06/26
59
- * @author Brian Lichtenwalter
60
- */
61
- public class Intro extends JPanel {
62
-
63
- static Color black = new Color(20, 20, 20);
64
- static Color white = new Color(240, 240, 255);
65
- static Color red = new Color(149, 43, 42);
66
- static Color blue = new Color(94, 105, 176);
67
- static Color yellow = new Color(255, 255, 140);
68
-
69
- static Surface surface;
70
- private ScenesTable scenesTable;
71
- private boolean doTable;
72
-
73
-
74
- public Intro() {
75
- EmptyBorder eb = new EmptyBorder(80,110,80,110);
76
- BevelBorder bb = new BevelBorder(BevelBorder.LOWERED);
77
- setBorder(new CompoundBorder(eb,bb));
78
- setLayout(new BorderLayout());
79
- setBackground(Color.gray);
80
- setToolTipText("click for scene table");
81
- add(surface = new Surface());
82
- addMouseListener(new MouseAdapter() {
83
- public void mouseClicked(MouseEvent e) {
84
- removeAll();
85
- if ((doTable = !doTable)) {
86
- setToolTipText("click for animation");
87
- surface.stop();
88
- if (scenesTable == null) {
89
- scenesTable = new ScenesTable();
90
- }
91
- add(scenesTable);
92
- } else {
93
- setToolTipText("click for scene table");
94
- surface.start();
95
- add(surface);
96
- }
97
- revalidate();
98
- repaint();
99
- }
100
- });
101
- }
102
-
103
-
104
- public void start() {
105
- if (!doTable) {
106
- surface.start();
107
- }
108
- }
109
-
110
-
111
- public void stop() {
112
- if (!doTable) {
113
- surface.stop();
114
- }
115
- }
116
-
117
-
118
- public static void main(String argv[]) {
119
- final Intro intro = new Intro();
120
- WindowListener l = new WindowAdapter() {
121
- public void windowClosing(WindowEvent e) {System.exit(0);}
122
- public void windowDeiconified(WindowEvent e) { intro.start(); }
123
- public void windowIconified(WindowEvent e) { intro.stop(); }
124
- };
125
- JFrame f = new JFrame("Java2D Demo - Intro");
126
- f.addWindowListener(l);
127
- f.getContentPane().add("Center", intro);
128
- f.pack();
129
- Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
130
- int w = 720;
131
- int h = 510;
132
- f.setLocation(screenSize.width/2 - w/2, screenSize.height/2 - h/2);
133
- f.setSize(w, h);
134
- f.setVisible(true);
135
- intro.start();
136
- }
137
-
138
-
139
- /**
140
- * ScenesTable is the list of scenes known to the Director.
141
- * Scene participation, scene name and scene pause amount columns.
142
- * Global animation delay for scene's steps.
143
- */
144
- static class ScenesTable extends JPanel implements ActionListener, ChangeListener {
145
-
146
- private JTable table;
147
- private TableModel dataModel;
148
-
149
- public ScenesTable() {
150
- setBackground(Color.white);
151
- setLayout(new BorderLayout());
152
- final String[] names = { "", "Scenes", "Pause" };
153
-
154
- dataModel = new AbstractTableModel() {
155
- public int getColumnCount() { return names.length; }
156
- public int getRowCount() { return surface.director.size();}
157
- public Object getValueAt(int row, int col) {
158
- Surface.Scene scene = (Surface.Scene) surface.director.get(row);
159
- if (col == 0) {
160
- return scene.participate;
161
- } else if (col == 1) {
162
- return scene.name;
163
- } else {
164
- return scene.pauseAmt;
165
- }
166
- }
167
- public String getColumnName(int col) {return names[col]; }
168
- public Class getColumnClass(int c) {
169
- return getValueAt(0, c).getClass();
170
- }
171
- public boolean isCellEditable(int row, int col) {
172
- return col != 1 ? true : false;
173
- }
174
- public void setValueAt(Object aValue, int row, int col) {
175
- Surface.Scene scene = (Surface.Scene) surface.director.get(row);
176
- if (col == 0) {
177
- scene.participate = aValue;
178
- } else if (col == 1) {
179
- scene.name = aValue;
180
- } else {
181
- scene.pauseAmt = aValue;
182
- }
183
- }
184
- };
185
-
186
- table = new JTable(dataModel);
187
- TableColumn col = table.getColumn("");
188
- col.setWidth(16);
189
- col.setMinWidth(16);
190
- col.setMaxWidth(20);
191
- col = table.getColumn("Pause");
192
- col.setWidth(60);
193
- col.setMinWidth(60);
194
- col.setMaxWidth(60);
195
- table.sizeColumnsToFit(0);
196
-
197
- JScrollPane scrollpane = new JScrollPane(table);
198
- add(scrollpane);
199
-
200
- JPanel panel = new JPanel(new BorderLayout());
201
- JButton b = new JButton("Unselect All");
202
- b.setHorizontalAlignment(JButton.LEFT);
203
- Font font = new Font("serif", Font.PLAIN, 10);
204
- b.setFont(font);
205
- b.addActionListener(this);
206
- panel.add("West", b);
207
-
208
- JSlider slider = new JSlider(JSlider.HORIZONTAL, 0, 200, (int) surface.sleepAmt);
209
- slider.addChangeListener(this);
210
- TitledBorder tb = new TitledBorder(new EtchedBorder());
211
- tb.setTitleFont(font);
212
- tb.setTitle("Anim delay = " + String.valueOf(surface.sleepAmt) + " ms");
213
- slider.setBorder(tb);
214
- slider.setPreferredSize(new Dimension(140,40));
215
- slider.setMinimumSize(new Dimension(100,40));
216
- slider.setMaximumSize(new Dimension(180,40));
217
- panel.add("East", slider);
218
-
219
- add("South", panel);
220
- }
221
-
222
-
223
- public void actionPerformed(ActionEvent e) {
224
- JButton b = (JButton) e.getSource();
225
- b.setSelected(!b.isSelected());
226
- b.setText(b.isSelected() ? "Select All" : "Unselect All");
227
- for (int i = 0; i < surface.director.size(); i++) {
228
- Surface.Scene scene = (Surface.Scene) surface.director.get(i);
229
- scene.participate = new Boolean(!b.isSelected());
230
- }
231
- table.tableChanged(new TableModelEvent(dataModel));
232
- }
233
-
234
-
235
- public void stateChanged(ChangeEvent e) {
236
- JSlider slider = (JSlider) e.getSource();
237
- int value = slider.getValue();
238
- TitledBorder tb = (TitledBorder) slider.getBorder();
239
- tb.setTitle("Anim delay = " + String.valueOf(value) + " ms");
240
- surface.sleepAmt = (long) value;
241
- slider.repaint();
242
- }
243
- } // End ScenesTable class
244
-
245
-
246
-
247
- /**
248
- * Surface is the stage where the Director plays its scenes.
249
- */
250
- static class Surface extends JPanel implements Runnable {
251
-
252
- static Surface surf;
253
- static Image cupanim, java_logo;
254
- static BufferedImage bimg;
255
- public Director director;
256
- public int index;
257
- public long sleepAmt = 30;
258
- private Thread thread;
259
-
260
-
261
- public Surface() {
262
- surf = this;
263
- setBackground(black);
264
- setLayout(new BorderLayout());
265
- addMouseListener(new MouseAdapter() {
266
- public void mouseClicked(MouseEvent e) {
267
- if (thread == null) start(); else stop();
268
- }
269
- });
270
- cupanim = DemoImages.getImage("cupanim.gif", this);
271
- java_logo = DemoImages.getImage("java_logo.png", this);
272
- director = new Director();
273
- }
274
-
275
-
276
- static FontMetrics getMetrics(Font font) {
277
- return surf.getFontMetrics(font);
278
- }
279
-
280
-
281
- public void paint(Graphics g) {
282
- Dimension d = getSize();
283
- if (d.width <= 0 || d.height <= 0) {
284
- return;
285
- }
286
- if (bimg == null || bimg.getWidth() != d.width || bimg.getHeight() != d.height) {
287
- bimg = getGraphicsConfiguration().createCompatibleImage(d.width, d.height);
288
- // reset future scenes
289
- for (int i = index+1; i < director.size(); i++) {
290
- ((Scene) director.get(i)).reset(d.width, d.height);
291
- }
292
- }
293
-
294
- Scene scene = (Scene) director.get(index);
295
- if (scene.index <= scene.length) {
296
- if (thread != null) {
297
- scene.step(d.width, d.height);
298
- }
299
-
300
- Graphics2D g2 = bimg.createGraphics();
301
- g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
302
- RenderingHints.VALUE_ANTIALIAS_ON);
303
- g2.setBackground(getBackground());
304
- g2.clearRect(0, 0, d.width, d.height);
305
-
306
- scene.render(d.width, d.height, g2);
307
-
308
- if (thread != null) {
309
- // increment scene.index after scene.render
310
- scene.index++;
311
- }
312
- g2.dispose();
313
- }
314
- g.drawImage(bimg, 0, 0, this);
315
- }
316
-
317
-
318
-
319
- public void start() {
320
- if (thread == null) {
321
- thread = new Thread(this);
322
- thread.setPriority(Thread.MIN_PRIORITY);
323
- thread.setName("Intro");
324
- thread.start();
325
- }
326
- }
327
-
328
-
329
- public synchronized void stop() {
330
- if (thread != null) {
331
- thread.interrupt();
332
- }
333
- thread = null;
334
- notifyAll();
335
- }
336
-
337
-
338
- public void reset() {
339
- index = 0;
340
- Dimension d = getSize();
341
- for (int i = 0; i < director.size(); i++) {
342
- ((Scene) director.get(i)).reset(d.width, d.height);
343
- }
344
- }
345
-
346
-
347
- public void run() {
348
-
349
- Thread me = Thread.currentThread();
350
-
351
- while (thread == me && !isShowing() || getSize().width <= 0) {
352
- try {
353
- thread.sleep(500);
354
- } catch (InterruptedException e) { return; }
355
- }
356
-
357
- if (index == 0) {
358
- reset();
359
- }
360
-
361
- while (thread == me) {
362
- Scene scene = (Scene) director.get(index);
363
- if (((Boolean) scene.participate).booleanValue()) {
364
- repaint();
365
- try {
366
- thread.sleep(sleepAmt);
367
- } catch (InterruptedException e) { break; }
368
- if (scene.index > scene.length) {
369
- scene.pause(thread);
370
- if (++index >= director.size()) {
371
- reset();
372
- }
373
- }
374
- } else {
375
- if (++index >= director.size()) {
376
- reset();
377
- }
378
- }
379
- }
380
- thread = null;
381
- }
382
-
383
-
384
-
385
- /**
386
- * Part is a piece of the scene. Classes must implement Part
387
- * inorder to participate in a scene.
388
- */
389
- interface Part {
390
- public void reset(int newwidth, int newheight);
391
- public void step(int w, int h);
392
- public void render(int w, int h, Graphics2D g2);
393
- public int getBegin();
394
- public int getEnd();
395
- }
396
-
397
-
398
-
399
- /**
400
- * Director is the holder of the scenes, their names & pause amounts
401
- * between scenes.
402
- */
403
- static class Director extends Vector {
404
-
405
- GradientPaint gp = new GradientPaint(0,40,blue,38,2,black);
406
- Font f1 = new Font("serif", Font.PLAIN, 200);
407
- Font f2 = new Font("serif", Font.PLAIN, 120);
408
- Font f3 = new Font("serif", Font.PLAIN, 72);
409
- Object parts[][][] = {
410
- { { "J - scale text on gradient", "0" },
411
- { new GpE(GpE.BURI, black, blue, 0, 20),
412
- new TxE("J", f1, TxE.SCI, yellow, 2, 20) } },
413
- { { "2 - scale & rotate text on gradient" , "0" },
414
- { new GpE(GpE.BURI, blue, black, 0, 22),
415
- new TxE("2", f1, TxE.RI | TxE.SCI, yellow, 2, 22) } },
416
- { { "D - scale text on gradient", "0" },
417
- { new GpE(GpE.BURI, black, blue, 0, 20),
418
- new TxE("D", f1, TxE.SCI, yellow, 2, 20) } },
419
- { { "Java2D - scale & rotate text on gradient", "1000" },
420
- { new GpE(GpE.SIH, blue, black, 0, 40),
421
- new TxE("Java2D", f2, TxE.RI | TxE.SCI, yellow, 0, 40) }},
422
- { { "Previous scene dither dissolve out", "0"},
423
- { new DdE(0, 20, 1) }},
424
- { { "Graphics Features", "999" },
425
- { new Temp(Temp.RECT, null, 0, 15),
426
- new Temp(Temp.IMG, java_logo, 2, 15),
427
- new Temp(Temp.RNA | Temp.INA, java_logo, 16, 130),
428
- new Features(Features.GRAPHICS, 16, 130) }},
429
- { { "Java2D - texture text on gradient", "1000"},
430
- { new GpE(GpE.WI, blue, black, 0, 20),
431
- new GpE(GpE.WD, blue, black, 21, 40),
432
- new TpE(TpE.OI | TpE.NF, black, yellow, 4, 0, 10),
433
- new TpE(TpE.OD | TpE.NF, black, yellow, 4, 11, 20),
434
- new TpE(TpE.OI | TpE.NF | TpE.HAF, black, yellow,5,21,40),
435
- new TxE("Java2D", f2, 0, null, 0, 40) }},
436
- { { "Previous scene random close out", "0"},
437
- { new CoE(CoE.RAND, 0, 20) } },
438
- { { "Text Features", "999" },
439
- { new Temp(Temp.RECT, null, 0, 15),
440
- new Temp(Temp.IMG, java_logo, 2, 15),
441
- new Temp(Temp.RNA | Temp.INA, java_logo, 16, 130),
442
- new Features(Features.TEXT, 16, 130) }},
443
- { { "Java2D - composite text on texture", "1000"},
444
- { new TpE(TpE.RI, black, gp, 40, 0, 20),
445
- new TpE(TpE.RD, black, gp, 40, 21, 40),
446
- new TpE(TpE.RI, black, gp, 40, 41, 60),
447
- new TxE("Java2D", f2, TxE.AC, yellow, 0, 60) }},
448
- { { "Previous scene dither dissolve out", "0"},
449
- { new DdE(0, 20, 4) }},
450
- { { "Imaging Features", "999" },
451
- { new Temp(Temp.RECT, null, 0, 15),
452
- new Temp(Temp.IMG, java_logo, 2, 15),
453
- new Temp(Temp.RNA | Temp.INA, java_logo, 16, 130),
454
- new Features(Features.IMAGES, 16, 130) }},
455
- { { "Java2D - text on gradient", "1000" },
456
- { new GpE(GpE.SDH, blue, black, 0, 20),
457
- new GpE(GpE.SIH, blue, black, 21, 40),
458
- new GpE(GpE.SDH, blue, black, 41, 50),
459
- new GpE(GpE.INC | GpE.NF, red, yellow, 0, 50),
460
- new TxE("Java2D", f2, TxE.NOP, null, 0, 50) }},
461
- { { "Previous scene ellipse close out", "0"},
462
- { new CoE(CoE.OVAL, 0, 20) } },
463
- { { "Color Features", "999" },
464
- { new Temp(Temp.RECT, null, 0, 15),
465
- new Temp(Temp.IMG, java_logo, 2, 15),
466
- new Temp(Temp.RNA | Temp.INA, java_logo, 16, 99),
467
- new Features(Features.COLOR, 16, 99) }},
468
- { { "Java2D - composite and rotate text on paints", "2000" },
469
- { new GpE(GpE.BURI, black, blue, 0, 20),
470
- new GpE(GpE.BURD, black, blue, 21, 30),
471
- new TpE(TpE.OI | TpE.HAF, black, blue, 10, 31, 40),
472
- new TxE("Java2D", f2, TxE.AC | TxE.RI, yellow, 0, 40) }},
473
- { { "Previous scene subimage transform out", "0" },
474
- { new SiE(60, 60, 0, 40) }},
475
- { { "CREDITS - transform in", "1000" },
476
- { new LnE(LnE.ACI | LnE.ZOOMI | LnE.RI, 0, 60),
477
- new TxE("CREDITS", f3, TxE.AC | TxE.SCI, Color.red,20,30),
478
- new TxE("CREDITS", f3, TxE.SCXD, Color.red, 31, 38),
479
- new TxE("CREDITS", f3, TxE.SCXI, Color.red, 39, 48),
480
- new TxE("CREDITS", f3, TxE.SCXD, Color.red, 49, 54),
481
- new TxE("CREDITS", f3, TxE.SCXI, Color.red, 55, 60) }},
482
- { { "CREDITS - transform out", "0" },
483
- { new LnE(LnE.ACD | LnE.ZOOMD | LnE.RD, 0, 45),
484
- new TxE("CREDITS", f3, 0, Color.red, 0, 9),
485
- new TxE("CREDITS", f3, TxE.SCD | TxE.RD, Color.red,10,30)}},
486
- { { "Contributors", "1000" },
487
- { new Temp(Temp.RECT, null, 0, 30),
488
- new Temp(Temp.IMG, cupanim, 4, 30),
489
- new Temp(Temp.RNA | Temp.INA, cupanim, 31, 200),
490
- new Contributors(34, 200) } },
491
- };
492
-
493
-
494
- public Director() {
495
- for (int i = 0; i < parts.length; i++) {
496
- Vector v = new Vector();
497
- for (int j = 0; j < parts[i][1].length; j++) {
498
- v.addElement(parts[i][1][j]);
499
- }
500
- addElement(new Scene(v, parts[i][0][0], parts[i][0][1]));
501
- }
502
- }
503
- }
504
-
505
-
506
-
507
- /**
508
- * Scene is the manager of the parts.
509
- */
510
- static class Scene extends Object {
511
- public Object name;
512
- public Object participate = new Boolean(true);
513
- public Object pauseAmt;
514
- public Vector parts;
515
- public int index;
516
- public int length;
517
-
518
- public Scene(Vector parts, Object name, Object pauseAmt) {
519
- this.name = name;
520
- this.parts = parts;
521
- this.pauseAmt = pauseAmt;
522
- for (int i = 0; i < parts.size(); i++) {
523
- if (((Part) parts.get(i)).getEnd() > length) {
524
- length = ((Part) parts.get(i)).getEnd();
525
- }
526
- }
527
- }
528
-
529
- public void reset(int w, int h) {
530
- index = 0;
531
- for (int i = 0; i < parts.size(); i++) {
532
- ((Part) parts.get(i)).reset(w, h);
533
- }
534
- }
535
-
536
- public void step(int w, int h) {
537
- for (int i = 0; i < parts.size(); i++) {
538
- Part part = (Part) parts.get(i);
539
- if (index >= part.getBegin() && index <= part.getEnd()) {
540
- part.step(w, h);
541
- }
542
- }
543
- }
544
-
545
- public void render(int w, int h, Graphics2D g2) {
546
- for (int i = 0; i < parts.size(); i++) {
547
- Part part = (Part) parts.get(i);
548
- if (index >= part.getBegin() && index <= part.getEnd()) {
549
- part.render(w, h, g2);
550
- }
551
- }
552
- }
553
-
554
- public void pause(Thread thread) {
555
- try {
556
- thread.sleep(Long.parseLong((String) pauseAmt));
557
- } catch (Exception e) { }
558
- System.gc();
559
- }
560
- } // End Scene class
561
-
562
-
563
-
564
- /**
565
- * Text Effect. Transformation of characters. Clip or fill.
566
- */
567
- static class TxE implements Part {
568
-
569
- static final int INC = 1;
570
- static final int DEC = 2;
571
- static final int R = 4; // rotate
572
- static final int RI = R | INC;
573
- static final int RD = R | DEC;
574
- static final int SC = 8; // scale
575
- static final int SCI = SC | INC;
576
- static final int SCD = SC | DEC;
577
- static final int SCX = 16; // scale invert x
578
- static final int SCXI = SCX | SC | INC;
579
- static final int SCXD = SCX | SC | DEC;
580
- static final int SCY = 32; // scale invert y
581
- static final int SCYI = SCY | SC | INC;
582
- static final int SCYD = SCY | SC | DEC;
583
- static final int AC = 64; // AlphaComposite
584
- static final int CLIP = 128; // Clipping
585
- static final int NOP = 512; // No Paint
586
- private int beginning, ending;
587
- private int type;
588
- private double rIncr, sIncr;
589
- private double sx, sy, rotate;
590
- private Shape shapes[], txShapes[];
591
- private int sw;
592
- private int numRev;
593
- private Paint paint;
594
-
595
-
596
- public TxE(String text,
597
- Font font,
598
- int type,
599
- Paint paint,
600
- int beg,
601
- int end) {
602
- this.type = type;
603
- this.paint = paint;
604
- this.beginning = beg;
605
- this.ending = end;
606
-
607
- setIncrements(2);
608
-
609
- char[] chars = text.toCharArray();
610
- shapes = new Shape[chars.length];
611
- txShapes = new Shape[chars.length];
612
- FontRenderContext frc = new FontRenderContext(null,true,true);
613
- TextLayout tl = new TextLayout(text, font, frc);
614
- sw = (int) tl.getOutline(null).getBounds().getWidth();
615
- for (int j = 0; j < chars.length; j++) {
616
- String s = String.valueOf(chars[j]);
617
- shapes[j] = new TextLayout(s, font, frc).getOutline(null);
618
- }
619
- }
620
-
621
-
622
- public void setIncrements(double numRevolutions) {
623
- this.numRev = (int) numRevolutions;
624
- rIncr = 360.0 / ((ending - beginning) / numRevolutions);
625
- sIncr = 1.0 / (ending - beginning);
626
- if ((type & SCX) != 0 || (type & SCY) != 0) {
627
- sIncr *= 2;
628
- }
629
- if ((type & DEC) != 0) {
630
- rIncr = -rIncr;
631
- sIncr = -sIncr;
632
- }
633
- }
634
-
635
-
636
- public void reset(int w, int h) {
637
- if (type == SCXI) {
638
- sx = -1.0; sy = 1.0;
639
- } else if (type == SCYI) {
640
- sx = 1.0; sy = -1.0;
641
- } else {
642
- sx = sy = (type & DEC) != 0 ? 1.0 : 0.0;
643
- }
644
- rotate = 0;
645
- }
646
-
647
-
648
- public void step(int w, int h) {
649
-
650
- float charWidth = w/2-sw/2;
651
-
652
- for (int i = 0; i < shapes.length; i++) {
653
- AffineTransform at = new AffineTransform();
654
- Rectangle2D maxBounds = shapes[i].getBounds();
655
- at.translate(charWidth, h/2+maxBounds.getHeight()/2);
656
- charWidth += (float) maxBounds.getWidth() + 1;
657
- Shape shape = at.createTransformedShape(shapes[i]);
658
- Rectangle2D b1 = shape.getBounds2D();
659
-
660
- if ((type & R) != 0) {
661
- at.rotate(Math.toRadians(rotate));
662
- }
663
- if ((type & SC) != 0) {
664
- at.scale(sx, sy);
665
- }
666
- shape = at.createTransformedShape(shapes[i]);
667
- Rectangle2D b2 = shape.getBounds2D();
668
-
669
- double xx = (b1.getX()+b1.getWidth()/2)
670
- - (b2.getX()+b2.getWidth()/2);
671
- double yy = (b1.getY()+b1.getHeight()/2)
672
- - (b2.getY()+b2.getHeight()/2);
673
- AffineTransform toCenterAT = new AffineTransform();
674
- toCenterAT.translate(xx, yy);
675
- toCenterAT.concatenate(at);
676
- txShapes[i] = toCenterAT.createTransformedShape(shapes[i]);
677
- }
678
- // avoid over rotation
679
- if (Math.abs(rotate) <= numRev * 360) {
680
- rotate += rIncr;
681
- if ((type & SCX) != 0) {
682
- sx += sIncr;
683
- } else if ((type & SCY) != 0) {
684
- sy += sIncr;
685
- } else {
686
- sx += sIncr; sy += sIncr;
687
- }
688
- }
689
- }
690
-
691
-
692
- public void render(int w, int h, Graphics2D g2) {
693
- Composite saveAC = null;
694
- if ((type & AC) != 0 && sx > 0 && sx < 1) {
695
- saveAC = g2.getComposite();
696
- g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, (float) sx));
697
- }
698
- GeneralPath path = null;
699
- if ((type & CLIP) != 0) {
700
- path = new GeneralPath();
701
- }
702
- if (paint != null) {
703
- g2.setPaint(paint);
704
- }
705
- for (int i = 0; i < txShapes.length; i++) {
706
- if ((type & CLIP) != 0) {
707
- path.append(txShapes[i], false);
708
- } else {
709
- g2.fill(txShapes[i]);
710
- }
711
- }
712
- if ((type & CLIP) != 0) {
713
- g2.clip(path);
714
- }
715
- if (saveAC != null) {
716
- g2.setComposite(saveAC);
717
- }
718
- }
719
-
720
-
721
- public int getBegin() {
722
- return beginning;
723
- }
724
-
725
- public int getEnd() {
726
- return ending;
727
- }
728
- } // End TxE class
729
-
730
-
731
-
732
-
733
- /**
734
- * GradientPaint Effect. Burst, split, horizontal and
735
- * vertical gradient fill effects.
736
- */
737
- static class GpE implements Part {
738
-
739
- static final int INC = 1; // increasing
740
- static final int DEC = 2; // decreasing
741
- static final int CNT = 4; // center
742
- static final int WID = 8; // width
743
- static final int WI = WID | INC;
744
- static final int WD = WID | DEC;
745
- static final int HEI = 16; // height
746
- static final int HI = HEI | INC;
747
- static final int HD = HEI | DEC;
748
- static final int SPL = 32 | CNT; // split
749
- static final int SIW = SPL | INC | WID;
750
- static final int SDW = SPL | DEC | WID;
751
- static final int SIH = SPL | INC | HEI;
752
- static final int SDH = SPL | DEC | HEI;
753
- static final int BUR = 64 | CNT; // burst
754
- static final int BURI = BUR | INC;
755
- static final int BURD = BUR | DEC;
756
- static final int NF = 128; // no fill
757
- private Color c1, c2;
758
- private int beginning, ending;
759
- private float incr, index;
760
- private Vector rect = new Vector();
761
- private Vector grad = new Vector();
762
- private int type;
763
-
764
-
765
- public GpE(int type, Color c1, Color c2, int beg, int end) {
766
- this.type = type;
767
- this.c1 = c1;
768
- this.c2 = c2;
769
- this.beginning = beg;
770
- this.ending = end;
771
- }
772
-
773
-
774
- public void reset(int w, int h) {
775
- incr = 1.0f / (ending - beginning);
776
- if ((type & CNT) != 0) {
777
- incr /= 2.3f;
778
- }
779
- if ((type & CNT) != 0 && (type & INC) != 0) {
780
- index = 0.5f;
781
- } else if ((type & DEC) != 0) {
782
- index = 1.0f;
783
- incr = -incr;
784
- } else {
785
- index = 0.0f;
786
- }
787
- index += incr;
788
- }
789
-
790
-
791
- public void step(int w, int h) {
792
- rect.clear();
793
- grad.clear();
794
-
795
- if ((type & WID) != 0) {
796
- float w2 = 0, x1 = 0, x2 = 0;
797
- if ((type & SPL) != 0) {
798
- w2 = w * 0.5f;
799
- x1 = w * (1.0f - index);
800
- x2 = w * index;
801
- } else {
802
- w2 = w * index;
803
- x1 = x2 = w2;
804
- }
805
- rect.addElement(new Rectangle2D.Float(0, 0, w2, h));
806
- rect.addElement(new Rectangle2D.Float(w2, 0, w-w2, h));
807
- grad.addElement(new GradientPaint(0,0,c1,x1,0,c2));
808
- grad.addElement(new GradientPaint(x2,0,c2,w,0,c1));
809
- } else if ((type & HEI) != 0) {
810
- float h2 = 0, y1 = 0, y2 = 0;
811
- if ((type & SPL) != 0) {
812
- h2 = h * 0.5f;
813
- y1 = h * (1.0f - index);
814
- y2 = h * index;
815
- } else {
816
- h2 = h * index;
817
- y1 = y2 = h2;
818
- }
819
- rect.addElement(new Rectangle2D.Float(0, 0, w, h2));
820
- rect.addElement(new Rectangle2D.Float(0, h2, w, h-h2));
821
- grad.addElement(new GradientPaint(0,0,c1,0,y1,c2));
822
- grad.addElement(new GradientPaint(0,y2,c2,0,h,c1));
823
- } else if ((type & BUR) != 0) {
824
-
825
- float w2 = w/2;
826
- float h2 = h/2;
827
-
828
- rect.addElement(new Rectangle2D.Float(0, 0, w2, h2));
829
- rect.addElement(new Rectangle2D.Float(w2, 0, w2, h2));
830
- rect.addElement(new Rectangle2D.Float(0, h2, w2, h2));
831
- rect.addElement(new Rectangle2D.Float(w2, h2, w2, h2));
832
-
833
- float x1 = w * (1.0f - index);
834
- float x2 = w * index;
835
- float y1 = h * (1.0f - index);
836
- float y2 = h * index;
837
-
838
- grad.addElement(new GradientPaint(0,0,c1,x1,y1,c2));
839
- grad.addElement(new GradientPaint(w,0,c1,x2,y1,c2));
840
- grad.addElement(new GradientPaint(0,h,c1,x1,y2,c2));
841
- grad.addElement(new GradientPaint(w,h,c1,x2,y2,c2));
842
- } else if ((type & NF) != 0) {
843
- float x = w * index;
844
- float y = h * index;
845
- grad.addElement(new GradientPaint(0,0,c1,0,y,c2));
846
- }
847
-
848
- if ((type & INC) != 0 || (type & DEC) != 0) {
849
- index += incr;
850
- }
851
- }
852
-
853
-
854
- public void render(int w, int h, Graphics2D g2) {
855
- g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
856
- RenderingHints.VALUE_ANTIALIAS_OFF);
857
- for (int i = 0; i < grad.size(); i++) {
858
- g2.setPaint((GradientPaint) grad.get(i));
859
- if ((type & NF) == 0) {
860
- g2.fill((Rectangle2D) rect.get(i));
861
- }
862
- }
863
- g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
864
- RenderingHints.VALUE_ANTIALIAS_ON);
865
- }
866
-
867
- public int getBegin() {
868
- return beginning;
869
- }
870
-
871
- public int getEnd() {
872
- return ending;
873
- }
874
- } // End GpE class
875
-
876
-
877
-
878
- /**
879
- * TexturePaint Effect. Expand and collapse a texture.
880
- */
881
- static class TpE implements Part {
882
-
883
- static final int INC = 1; // increasing
884
- static final int DEC = 2; // decreasing
885
- static final int OVAL = 4; // oval
886
- static final int RECT = 8; // rectangle
887
- static final int HAF = 16; // half oval or rect size
888
- static final int OI = OVAL | INC;
889
- static final int OD = OVAL | DEC;
890
- static final int RI = RECT | INC;
891
- static final int RD = RECT | DEC;
892
- static final int NF = 32; // no fill
893
- private Paint p1, p2;
894
- private int beginning, ending;
895
- private float incr, index;
896
- private TexturePaint texture;
897
- private int type;
898
- private int size;
899
- private BufferedImage bimg;
900
- private Rectangle rect;
901
-
902
-
903
- public TpE(int type, Paint p1, Paint p2, int size,
904
- int beg, int end) {
905
- this.type = type;
906
- this.p1 = p1;
907
- this.p2 = p2;
908
- this.beginning = beg;
909
- this.ending = end;
910
- setTextureSize(size);
911
- }
912
-
913
-
914
- public void setTextureSize(int size) {
915
- this.size = size;
916
- bimg = new BufferedImage(size,size,BufferedImage.TYPE_INT_RGB);
917
- rect = new Rectangle(0,0,size,size);
918
- }
919
-
920
-
921
- public void reset(int w, int h) {
922
- incr = (float) (size) / (float) (ending - beginning);
923
- if ((type & HAF) != 0) {
924
- incr /= 2;
925
- }
926
- if ((type & DEC) != 0) {
927
- index = size;
928
- if ((type & HAF) != 0) {
929
- index /= 2;
930
- }
931
- incr = -incr;
932
- } else {
933
- index = 0.0f;
934
- }
935
- index += incr;
936
- }
937
-
938
-
939
- public void step(int w, int h) {
940
- Graphics2D g2 = bimg.createGraphics();
941
- g2.setPaint(p1);
942
- g2.fillRect(0,0,size,size);
943
- g2.setPaint(p2);
944
- if ((type & OVAL) != 0) {
945
- g2.fill(new Ellipse2D.Float(0,0,index,index));
946
- } else if ((type & RECT) != 0) {
947
- g2.fill(new Rectangle2D.Float(0,0,index,index));
948
- }
949
- texture = new TexturePaint(bimg, rect);
950
- g2.dispose();
951
- index += incr;
952
- }
953
-
954
-
955
- public void render(int w, int h, Graphics2D g2) {
956
- g2.setPaint(texture);
957
- if ((type & NF) == 0) {
958
- g2.fillRect(0, 0, w, h);
959
- }
960
- }
961
-
962
- public int getBegin() {
963
- return beginning;
964
- }
965
-
966
- public int getEnd() {
967
- return ending;
968
- }
969
- } // End TpE class
970
-
971
-
972
-
973
- /**
974
- * Close out effect. Close out the buffered image with different
975
- * geometry shapes.
976
- */
977
- static class CoE implements Part {
978
-
979
- static final int WID = 1;
980
- static final int HEI = 2;
981
- static final int OVAL = 4;
982
- static final int RECT = 8;
983
- static final int RAND = 16;
984
- static final int ARC = 32;
985
- private int type;
986
- private int beginning, ending;
987
- private BufferedImage bimg;
988
- private Shape shape;
989
- private double zoom, extent;
990
- private double zIncr, eIncr;
991
- private boolean doRandom;
992
-
993
-
994
- public CoE(int type, int beg, int end) {
995
- this.type = type;
996
- this.beginning = beg;
997
- this.ending = end;
998
- zIncr = -(2.0 / (ending - beginning));
999
- eIncr = 360.0 / (ending - beginning);
1000
- doRandom = (type & RAND) != 0;
1001
- }
1002
-
1003
-
1004
- public void reset(int w, int h) {
1005
- if (doRandom) {
1006
- int num = (int) (Math.random() * 5.0);
1007
- switch (num) {
1008
- case 0 : type = OVAL; break;
1009
- case 1 : type = RECT; break;
1010
- case 2 : type = RECT | WID; break;
1011
- case 3 : type = RECT | HEI; break;
1012
- case 4 : type = ARC; break;
1013
- default : type = OVAL;
1014
- }
1015
- }
1016
- shape = null;
1017
- bimg = null;
1018
- extent = 360.0;
1019
- zoom = 2.0;
1020
- }
1021
-
1022
-
1023
- public void step(int w, int h) {
1024
- if (bimg == null) {
1025
- int biw = Surface.bimg.getWidth();
1026
- int bih = Surface.bimg.getHeight();
1027
- bimg = new BufferedImage(biw, bih, BufferedImage.TYPE_INT_RGB);
1028
- Graphics2D big = bimg.createGraphics();
1029
- big.drawImage(Surface.bimg, 0, 0, null);
1030
- }
1031
- double z = Math.min(w, h) * zoom;
1032
- if ((type & OVAL) != 0) {
1033
- shape = new Ellipse2D.Double(w/2-z/2,h/2-z/2,z,z);
1034
- } else if ((type & ARC) != 0) {
1035
- shape = new Arc2D.Double(-100,-100,w+200,h+200,90,extent,Arc2D.PIE);
1036
- extent -= eIncr;
1037
- } else if ((type & RECT) != 0) {
1038
- if ((type & WID) != 0) {
1039
- shape = new Rectangle2D.Double(w/2-z/2,0,z,h);
1040
- } else if ((type & HEI) != 0) {
1041
- shape = new Rectangle2D.Double(0,h/2-z/2,w,z);
1042
- } else {
1043
- shape = new Rectangle2D.Double(w/2-z/2,h/2-z/2,z,z);
1044
- }
1045
- }
1046
- zoom += zIncr;
1047
- }
1048
-
1049
-
1050
- public void render(int w, int h, Graphics2D g2) {
1051
- g2.clip(shape);
1052
- g2.drawImage(bimg, 0, 0, null);
1053
- }
1054
-
1055
- public int getBegin() {
1056
- return beginning;
1057
- }
1058
-
1059
- public int getEnd() {
1060
- return ending;
1061
- }
1062
- } // End CoE class
1063
-
1064
-
1065
-
1066
- /**
1067
- * Dither Dissolve Effect. For each successive step in the animation,
1068
- * a pseudo-random starting horizontal position is chosen using list,
1069
- * and then the corresponding points created from xlist and ylist are
1070
- * blacked out for the current "chunk". The x and y chunk starting
1071
- * positions are each incremented by the associated chunk size, and
1072
- * this process is repeated for the number of "steps" in the
1073
- * animation, causing an equal number of pseudo-randomly picked
1074
- * "blocks" to be blacked out during each step of the animation.
1075
- */
1076
- static class DdE implements Part {
1077
-
1078
- private int beginning, ending;
1079
- private BufferedImage bimg;
1080
- private Graphics2D big;
1081
- private List list, xlist, ylist;
1082
- private int xeNum, yeNum; // element number
1083
- private int xcSize, ycSize; // chunk size
1084
- private int inc;
1085
- private int blocksize;
1086
-
1087
-
1088
- public DdE(int beg, int end, int blocksize) {
1089
- this.beginning = beg;
1090
- this.ending = end;
1091
- this.blocksize = blocksize;
1092
- }
1093
-
1094
- private void createShuffledLists() {
1095
- int width = bimg.getWidth();
1096
- int height = bimg.getHeight();
1097
- Integer xarray[] = new Integer[width];
1098
- Integer yarray[] = new Integer[height];
1099
- Integer array[] = new Integer[ending - beginning + 1];
1100
- for (int i = 0; i < xarray.length; i++) {
1101
- xarray[i] = new Integer(i);
1102
- }
1103
- for (int j = 0; j < yarray.length; j++) {
1104
- yarray[j] = new Integer(j);
1105
- }
1106
- for (int k = 0; k < array.length; k++) {
1107
- array[k] = new Integer(k);
1108
- }
1109
- java.util.Collections.shuffle(xlist = Arrays.asList(xarray));
1110
- java.util.Collections.shuffle(ylist = Arrays.asList(yarray));
1111
- java.util.Collections.shuffle(list = Arrays.asList(array));
1112
- }
1113
-
1114
- public void reset(int w, int h) {
1115
- bimg = null;
1116
- }
1117
-
1118
- public void step(int w, int h) {
1119
- if (bimg == null) {
1120
- int biw = Surface.bimg.getWidth();
1121
- int bih = Surface.bimg.getHeight();
1122
- bimg = new BufferedImage(biw, bih, BufferedImage.TYPE_INT_RGB);
1123
- createShuffledLists();
1124
- big = bimg.createGraphics();
1125
- big.drawImage(Surface.bimg, 0, 0, null);
1126
- xcSize = (xlist.size() / (ending - beginning)) + 1;
1127
- ycSize = (ylist.size() / (ending - beginning)) + 1;
1128
- xeNum = 0;
1129
- inc = 0;
1130
- }
1131
- xeNum = xcSize * ((Integer)list.get(inc)).intValue();
1132
- yeNum = -ycSize;
1133
- inc++;
1134
- }
1135
-
1136
-
1137
- public void render(int w, int h, Graphics2D g2) {
1138
- big.setColor(black);
1139
-
1140
- for (int k = 0; k <= (ending - beginning); k++) {
1141
- if ((xeNum + xcSize) > xlist.size()) {
1142
- xeNum = 0;
1143
- } else {
1144
- xeNum += xcSize;
1145
- }
1146
- yeNum += ycSize;
1147
-
1148
- for (int i = xeNum; i < xeNum+xcSize && i < xlist.size(); i++) {
1149
- for (int j = yeNum; j < yeNum+ycSize && j < ylist.size(); j++) {
1150
- int xval = ((Integer)xlist.get(i)).intValue();
1151
- int yval = ((Integer)ylist.get(j)).intValue();
1152
- if (((xval % blocksize) == 0) &&
1153
- ((yval % blocksize) == 0)) {
1154
- big.fillRect(xval, yval, blocksize, blocksize);
1155
- }
1156
- }
1157
- }
1158
- }
1159
-
1160
- g2.drawImage(bimg, 0, 0, null);
1161
- }
1162
-
1163
- public int getBegin() {
1164
- return beginning;
1165
- }
1166
-
1167
- public int getEnd() {
1168
- return ending;
1169
- }
1170
- } // End DdE class
1171
-
1172
-
1173
- /**
1174
- * Subimage effect. Subimage the scene's buffered
1175
- * image then rotate and scale down the subimages.
1176
- */
1177
- static class SiE implements Part {
1178
-
1179
- private int beginning, ending;
1180
- private BufferedImage bimg;
1181
- private double rIncr, sIncr;
1182
- private double scale, rotate;
1183
- private int siw, sih;
1184
- private Vector subs = new Vector(20);
1185
- private Vector pts = new Vector(20);
1186
-
1187
-
1188
- public SiE(int siw, int sih, int beg, int end) {
1189
- this.siw = siw;
1190
- this.sih = sih;
1191
- this.beginning = beg;
1192
- this.ending = end;
1193
- rIncr = 360.0 / (ending - beginning);
1194
- sIncr = 1.0 / (ending - beginning);
1195
- }
1196
-
1197
-
1198
- public void reset(int w, int h) {
1199
- scale = 1.0;
1200
- rotate = 0.0;
1201
- bimg = null;
1202
- subs.clear();
1203
- pts.clear();
1204
- }
1205
-
1206
-
1207
- public void step(int w, int h) {
1208
- if (bimg == null) {
1209
- int biw = Surface.bimg.getWidth();
1210
- int bih = Surface.bimg.getHeight();
1211
- bimg = new BufferedImage(biw, bih, BufferedImage.TYPE_INT_RGB);
1212
- Graphics2D big = bimg.createGraphics();
1213
- big.drawImage(Surface.bimg, 0, 0, null);
1214
- for (int x = 0; x < w && scale > 0.0; x+=siw) {
1215
- int ww = x+siw < w ? siw : w-x;
1216
- for (int y = 0; y < h; y+=sih) {
1217
- int hh = y+sih < h ? sih : h-y;
1218
- subs.addElement(bimg.getSubimage(x,y,ww,hh));
1219
- pts.addElement(new Point(x, y));
1220
- }
1221
- }
1222
- }
1223
-
1224
- rotate += rIncr;
1225
- scale -= sIncr;
1226
- }
1227
-
1228
-
1229
- public void render(int w, int h, Graphics2D g2) {
1230
- AffineTransform saveTx = g2.getTransform();
1231
- g2.setColor(blue);
1232
- for (int i = 0; i < subs.size() && scale > 0.0; i++) {
1233
- BufferedImage bi = (BufferedImage) subs.get(i);
1234
- Point p = (Point) pts.get(i);
1235
- int ww = bi.getWidth();
1236
- int hh = bi.getHeight();
1237
- AffineTransform at = new AffineTransform();
1238
- at.rotate(Math.toRadians(rotate), p.x+ww/2, p.y+hh/2);
1239
- at.translate(p.x, p.y);
1240
- at.scale(scale, scale);
1241
-
1242
- Rectangle b1 = new Rectangle(0, 0, ww, hh);
1243
- Shape shape = at.createTransformedShape(b1);
1244
- Rectangle2D b2 = shape.getBounds2D();
1245
- double xx = (p.x+ww/2) - (b2.getX()+b2.getWidth()/2);
1246
- double yy = (p.y+hh/2) - (b2.getY()+b2.getHeight()/2);
1247
- AffineTransform toCenterAT = new AffineTransform();
1248
- toCenterAT.translate(xx, yy);
1249
- toCenterAT.concatenate(at);
1250
-
1251
- g2.setTransform(toCenterAT);
1252
- g2.drawImage(bi, 0, 0, null);
1253
- g2.draw(b1);
1254
- }
1255
- g2.setTransform(saveTx);
1256
- }
1257
-
1258
- public int getBegin() {
1259
- return beginning;
1260
- }
1261
-
1262
- public int getEnd() {
1263
- return ending;
1264
- }
1265
- } // End SiE class
1266
-
1267
-
1268
-
1269
-
1270
- /**
1271
- * Line Effect. Flattened ellipse with lines from the center
1272
- * to the edge. Expand or collapse the ellipse. Fade in or out
1273
- * the lines.
1274
- */
1275
- static class LnE implements Part {
1276
-
1277
- static final int INC = 1;
1278
- static final int DEC = 2;
1279
- static final int R = 4; // rotate
1280
- static final int RI = R | INC;
1281
- static final int RD = R | DEC;
1282
- static final int ZOOM = 8; // zoom
1283
- static final int ZOOMI = ZOOM | INC;
1284
- static final int ZOOMD = ZOOM | DEC;
1285
- static final int AC = 32; // AlphaComposite
1286
- static final int ACI = 32 | INC;
1287
- static final int ACD = 32 | DEC;
1288
- private int beginning, ending;
1289
- private double rIncr, rotate;
1290
- private double zIncr, zoom;
1291
- private Vector pts = new Vector();
1292
- private float alpha, aIncr;
1293
- private int type;
1294
-
1295
-
1296
- public LnE(int type, int beg, int end) {
1297
- this.type = type;
1298
- this.beginning = beg;
1299
- this.ending = end;
1300
- rIncr = 360.0 / (ending - beginning);
1301
- aIncr = 0.9f / (ending - beginning);
1302
- zIncr = 2.0 / (ending - beginning);
1303
- if ((type & DEC) != 0) {
1304
- rIncr = -rIncr;
1305
- aIncr = -aIncr;
1306
- zIncr = -zIncr;
1307
- }
1308
- }
1309
-
1310
-
1311
- public void generatePts(int w, int h, double sizeF) {
1312
- pts.clear();
1313
- double size = Math.min(w, h) * sizeF;
1314
- Ellipse2D ellipse = new Ellipse2D.Double(w/2-size/2,h/2-size/2,size,size);
1315
- PathIterator pi = ellipse.getPathIterator(null, 0.8);
1316
- while ( !pi.isDone() ) {
1317
- double[] pt = new double[6];
1318
- switch ( pi.currentSegment(pt) ) {
1319
- case FlatteningPathIterator.SEG_MOVETO:
1320
- case FlatteningPathIterator.SEG_LINETO:
1321
- pts.addElement(new Point2D.Double(pt[0], pt[1]));
1322
- }
1323
- pi.next();
1324
- }
1325
- }
1326
-
1327
-
1328
- public void reset(int w, int h) {
1329
- if ((type & DEC) != 0) {
1330
- rotate = 360;
1331
- alpha = 1.0f;
1332
- zoom = 2.0;
1333
- } else {
1334
- rotate = alpha = 0;
1335
- zoom = 0;
1336
- }
1337
- if ((type & ZOOM) == 0) {
1338
- generatePts(w, h, 0.5);
1339
- }
1340
- }
1341
-
1342
-
1343
- public void step(int w, int h) {
1344
- if ((type & ZOOM) != 0) {
1345
- generatePts(w, h, zoom += zIncr);
1346
- }
1347
- if ((type & RI) != 0 || (type & RI) != 0) {
1348
- rotate += rIncr;
1349
- }
1350
- if ((type & ACI) != 0 || (type & ACD) != 0) {
1351
- alpha += aIncr;
1352
- }
1353
- }
1354
-
1355
-
1356
- public void render(int w, int h, Graphics2D g2) {
1357
- Composite saveAC = null;
1358
- if ((type & AC) != 0 && alpha >= 0 && alpha <= 1) {
1359
- saveAC = g2.getComposite();
1360
- g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha));
1361
- }
1362
- AffineTransform saveTx = null;
1363
- if ((type & R) != 0) {
1364
- saveTx = g2.getTransform();
1365
- AffineTransform at = new AffineTransform();
1366
- at.rotate(Math.toRadians(rotate), w/2, h/2);
1367
- g2.setTransform(at);
1368
- }
1369
- Point2D p1 = new Point2D.Double(w/2, h/2);
1370
- g2.setColor(Color.yellow);
1371
- for (int i = 0; i < pts.size()-1; i++) {
1372
- g2.draw(new Line2D.Float(p1, (Point2D) pts.get(i)));
1373
- }
1374
- if (saveTx != null) {
1375
- g2.setTransform(saveTx);
1376
- }
1377
- if (saveAC != null) {
1378
- g2.setComposite(saveAC);
1379
- }
1380
- }
1381
-
1382
- public int getBegin() {
1383
- return beginning;
1384
- }
1385
-
1386
- public int getEnd() {
1387
- return ending;
1388
- }
1389
- } // End LnE class
1390
-
1391
-
1392
-
1393
- /**
1394
- * Template for Features & Contributors consisting of translating
1395
- * blue and red rectangles and an image going from transparent to
1396
- * opaque.
1397
- */
1398
- static class Temp implements Part {
1399
- static final int NOANIM = 1;
1400
- static final int RECT = 2;
1401
- static final int RNA = RECT | NOANIM;
1402
- static final int IMG = 4;
1403
- static final int INA = IMG | NOANIM;
1404
- private int beginning, ending;
1405
- private float alpha, aIncr;
1406
- private int type;
1407
- private Rectangle rect1, rect2;
1408
- private int x, y, xIncr, yIncr;
1409
- private Image img;
1410
-
1411
-
1412
- public Temp(int type, Image img, int beg, int end) {
1413
- this.type = type;
1414
- this.img = img;
1415
- this.beginning = beg;
1416
- this.ending = end;
1417
- aIncr = 0.9f / (ending - beginning);
1418
- if ((type & NOANIM) != 0) {
1419
- alpha = 1.0f;
1420
- }
1421
- }
1422
-
1423
-
1424
-
1425
- public void reset(int w, int h) {
1426
- rect1 = new Rectangle(8, 20, w-20, 30);
1427
- rect2 = new Rectangle(20, 8, 30, h-20);
1428
- if ((type & NOANIM) == 0) {
1429
- alpha = 0.0f;
1430
- xIncr = w / (ending - beginning);
1431
- yIncr = h / (ending - beginning);
1432
- x = w+(int)(xIncr*1.4);
1433
- y = h+(int)(yIncr*1.4);
1434
- }
1435
- }
1436
-
1437
-
1438
- public void step(int w, int h) {
1439
- if ((type & NOANIM) != 0) {
1440
- return;
1441
- }
1442
- if ((type & RECT) != 0) {
1443
- rect1.setLocation(x-=xIncr, 20);
1444
- rect2.setLocation(20, y-=yIncr);
1445
- }
1446
- if ((type & IMG) != 0) {
1447
- alpha += aIncr;
1448
- }
1449
- }
1450
-
1451
-
1452
- public void render(int w, int h, Graphics2D g2) {
1453
- if ((type & RECT) != 0) {
1454
- g2.setColor(blue);
1455
- g2.fill(rect1);
1456
- g2.setColor(red);
1457
- g2.fill(rect2);
1458
- }
1459
- if ((type & IMG) != 0) {
1460
- Composite saveAC = g2.getComposite();
1461
- if (alpha >= 0 && alpha <= 1) {
1462
- g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha));
1463
- }
1464
- g2.drawImage(img, 30, 30, null);
1465
- g2.setComposite(saveAC);
1466
- }
1467
- }
1468
-
1469
- public int getBegin() {
1470
- return beginning;
1471
- }
1472
-
1473
- public int getEnd() {
1474
- return ending;
1475
- }
1476
- } // End Temp class
1477
-
1478
-
1479
-
1480
- /**
1481
- * Features of Java2D. Single character advancement effect.
1482
- */
1483
- static class Features implements Part {
1484
-
1485
- static final int GRAPHICS = 0;
1486
- static final int TEXT = 1;
1487
- static final int IMAGES = 2;
1488
- static final int COLOR = 3;
1489
- static Font font1 = new Font("serif", Font.BOLD, 38);
1490
- static Font font2 = new Font("serif", Font.PLAIN, 24);
1491
- static FontMetrics fm1 = Surface.getMetrics(font1);
1492
- static FontMetrics fm2 = Surface.getMetrics(font2);
1493
- static String table[][] =
1494
- {{ "Graphics", "Antialiased rendering", "Bezier paths",
1495
- "Transforms", "Compositing", "Stroking parameters" },
1496
- { "Text", "Extended font support",
1497
- "Advanced text layout", "Dynamic font loading",
1498
- "AttributeSets for font customization" },
1499
- { "Images", "Flexible image layouts",
1500
- "Extended imaging operations",
1501
- " Convolutions, Lookup Tables",
1502
- "RenderableImage interface"},
1503
- { "Color", "ICC profile support", "Color conversion",
1504
- "Arbitrary color spaces"} };
1505
- private String list[];
1506
- private int beginning, ending;
1507
- private int strH;
1508
- private int endIndex, listIndex;
1509
- private Vector v = new Vector();
1510
-
1511
-
1512
- public Features(int type, int beg, int end) {
1513
- list = table[type];
1514
- this.beginning = beg;
1515
- this.ending = end;
1516
- }
1517
-
1518
-
1519
- public void reset(int w, int h) {
1520
- strH = (int) (fm2.getAscent()+fm2.getDescent());
1521
- endIndex = 1;
1522
- listIndex = 0;
1523
- v.clear();
1524
- v.addElement(list[listIndex].substring(0,endIndex));
1525
- }
1526
-
1527
-
1528
- public void step(int w, int h) {
1529
- if (listIndex < list.length) {
1530
- if (++endIndex > list[listIndex].length()) {
1531
- if (++listIndex < list.length) {
1532
- endIndex = 1;
1533
- v.addElement(list[listIndex].substring(0,endIndex));
1534
- }
1535
- } else {
1536
- v.set(listIndex, list[listIndex].substring(0,endIndex));
1537
- }
1538
- }
1539
- }
1540
-
1541
-
1542
- public void render(int w, int h, Graphics2D g2) {
1543
- g2.setColor(white);
1544
- g2.setFont(font1);
1545
- g2.drawString((String) v.get(0), 90, 85);
1546
- g2.setFont(font2);
1547
- for (int i = 1, y = 90; i < v.size(); i++) {
1548
- g2.drawString((String) v.get(i), 120, y += strH);
1549
- }
1550
- }
1551
-
1552
- public int getBegin() {
1553
- return beginning;
1554
- }
1555
-
1556
- public int getEnd() {
1557
- return ending;
1558
- }
1559
- } // End Features class
1560
-
1561
-
1562
-
1563
- /**
1564
- * Scrolling text of Java2D contributors.
1565
- */
1566
- static class Contributors implements Part {
1567
-
1568
- static String members[] =
1569
- {
1570
- "Brian Lichtenwalter", "Jeannette Hung",
1571
- "Thanh Nguyen", "Jim Graham", "Jerry Evans",
1572
- "John Raley", "Michael Peirce", "Robert Kim",
1573
- "Jennifer Ball", "Deborah Adair", "Paul Charlton",
1574
- "Dmitry Feld", "Gregory Stone", "Richard Blanchard",
1575
- "Link Perry", "Phil Race", "Vincent Hardy",
1576
- "Parry Kejriwal", "Doug Felt", "Rekha Rangarajan",
1577
- "Paula Patel", "Michael Bundschuh", "Joe Warzecha",
1578
- "Joey Beheler", "Aastha Bhardwaj", "Daniel Rice",
1579
- "Chris Campbell", "Shinsuke Fukuda", "Dmitri Trembovetski",
1580
- "Chet Haase", "Jennifer Godinez", "Nicholas Talian",
1581
- "Raul Vera", "Ankit Patel", "Ilya Bagrak"
1582
- };
1583
- static Font font = new Font("serif", Font.PLAIN, 26);
1584
- static FontMetrics fm = Surface.getMetrics(font);
1585
- private int beginning, ending;
1586
- private int nStrs, strH, index, yh, height;
1587
- private Vector v = new Vector();
1588
- private Vector cast = new Vector(members.length+3);
1589
- private int counter, cntMod;
1590
- private GradientPaint gp;
1591
-
1592
-
1593
- public Contributors(int beg, int end) {
1594
- this.beginning = beg;
1595
- this.ending = end;
1596
- java.util.Arrays.sort(members);
1597
- cast.addElement("CONTRIBUTORS");
1598
- cast.addElement(" ");
1599
- for (int i = 0; i < members.length; i++) {
1600
- cast.addElement(members[i]);
1601
- }
1602
- cast.addElement(" "); cast.addElement(" ");
1603
- cntMod = (ending - beginning) / cast.size() - 1;
1604
- }
1605
-
1606
-
1607
- public void reset(int w, int h) {
1608
- v.clear();
1609
- strH = (int) (fm.getAscent()+fm.getDescent());
1610
- nStrs = (h-40)/strH + 1;
1611
- height = strH * (nStrs-1) + 48;
1612
- index = 0;
1613
- gp = new GradientPaint(0,h/2,Color.white,0,h+20,Color.black);
1614
- counter = 0;
1615
- }
1616
-
1617
-
1618
- public void step(int w, int h) {
1619
- if (counter++%cntMod == 0) {
1620
- if (index < cast.size()) {
1621
- v.addElement(cast.get(index));
1622
- }
1623
- if ((v.size() == nStrs || index >= cast.size()) && v.size() != 0) {
1624
- v.removeElementAt(0);
1625
- }
1626
- ++index;
1627
- }
1628
- }
1629
-
1630
-
1631
- public void render(int w, int h, Graphics2D g2) {
1632
- g2.setPaint(gp);
1633
- g2.setFont(font);
1634
- double remainder = counter%cntMod;
1635
- double incr = 1.0-remainder/cntMod;
1636
- incr = incr == 1.0 ? 0 : incr;
1637
- int y = (int) (incr * strH);
1638
-
1639
- if (index >= cast.size()) {
1640
- y = yh + y;
1641
- } else {
1642
- y = yh = height - v.size() * strH + y;
1643
- }
1644
- for (int i = 0; i < v.size(); i++) {
1645
- String s = (String) v.get(i);
1646
- g2.drawString(s, w/2-fm.stringWidth(s)/2, y += strH);
1647
- }
1648
- }
1649
-
1650
- public int getBegin() {
1651
- return beginning;
1652
- }
1653
-
1654
- public int getEnd() {
1655
- return ending;
1656
- }
1657
- } // End Contributors class
1658
-
1659
- } // End Surface class
1660
- } // End Intro class