lacci 0.2.1 → 0.2.2

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 (570) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -2
  3. data/Gemfile.lock +72 -0
  4. data/Rakefile +1 -4
  5. data/lib/lacci/scarpe_cli.rb +70 -0
  6. data/lib/lacci/scarpe_core.rb +21 -0
  7. data/lib/lacci/version.rb +13 -0
  8. data/lib/shoes/app.rb +91 -14
  9. data/lib/{scarpe → shoes}/background.rb +1 -1
  10. data/lib/{scarpe → shoes}/border.rb +1 -1
  11. data/lib/{scarpe → shoes}/colors.rb +1 -1
  12. data/lib/shoes/constants.rb +5 -2
  13. data/lib/{scarpe → shoes}/display_service.rb +8 -9
  14. data/lib/{scarpe → shoes}/download.rb +5 -5
  15. data/lib/shoes/log.rb +71 -0
  16. data/lib/{scarpe → shoes}/spacing.rb +1 -1
  17. data/lib/shoes/widget.rb +28 -19
  18. data/lib/{scarpe → shoes/widgets}/alert.rb +2 -2
  19. data/lib/{scarpe → shoes/widgets}/arc.rb +6 -4
  20. data/lib/{scarpe → shoes/widgets}/button.rb +2 -2
  21. data/lib/shoes/widgets/check.rb +28 -0
  22. data/lib/{scarpe → shoes/widgets}/document_root.rb +3 -3
  23. data/lib/{scarpe → shoes/widgets}/edit_box.rb +1 -1
  24. data/lib/{scarpe → shoes/widgets}/edit_line.rb +1 -1
  25. data/lib/{scarpe → shoes/widgets}/flow.rb +6 -2
  26. data/lib/{scarpe → shoes/widgets}/font.rb +1 -1
  27. data/lib/{scarpe → shoes/widgets}/image.rb +2 -8
  28. data/lib/shoes/widgets/line.rb +18 -0
  29. data/lib/{scarpe → shoes/widgets}/link.rb +1 -1
  30. data/lib/{scarpe → shoes/widgets}/list_box.rb +1 -1
  31. data/lib/{scarpe → shoes/widgets}/para.rb +1 -25
  32. data/lib/shoes/widgets/radio.rb +35 -0
  33. data/lib/shoes/widgets/shape.rb +37 -0
  34. data/lib/shoes/widgets/slot.rb +75 -0
  35. data/lib/{scarpe → shoes/widgets}/span.rb +1 -1
  36. data/lib/{scarpe → shoes/widgets}/stack.rb +5 -1
  37. data/lib/{scarpe → shoes/widgets}/star.rb +5 -8
  38. data/lib/{scarpe → shoes/widgets}/subscription_item.rb +1 -1
  39. data/lib/shoes/{text_widget.rb → widgets/text_widget.rb} +2 -3
  40. data/lib/{scarpe → shoes/widgets}/video.rb +1 -1
  41. data/lib/shoes/widgets.rb +29 -0
  42. data/lib/shoes.rb +71 -9
  43. metadata +38 -555
  44. data/.rubocop.yml +0 -85
  45. data/.ruby-version +0 -1
  46. data/.vscode/extensions.json +0 -5
  47. data/.yardopts +0 -12
  48. data/CHANGELOG.md +0 -19
  49. data/CODE_OF_CONDUCT.md +0 -84
  50. data/CONTRIBUTING.md +0 -20
  51. data/LICENSE.txt +0 -21
  52. data/README.md +0 -178
  53. data/bin/console +0 -15
  54. data/bin/setup +0 -8
  55. data/dev.yml +0 -7
  56. data/docs/static/PKGBUILD +0 -47
  57. data/docs/static/Shoes.icns +0 -0
  58. data/docs/static/avatar.png +0 -0
  59. data/docs/static/code_highlighter.js +0 -188
  60. data/docs/static/code_highlighter_ruby.js +0 -26
  61. data/docs/static/icon-debug.png +0 -0
  62. data/docs/static/icon-error.png +0 -0
  63. data/docs/static/icon-info.png +0 -0
  64. data/docs/static/icon-warn.png +0 -0
  65. data/docs/static/listbox_button1.png +0 -0
  66. data/docs/static/listbox_button2.png +0 -0
  67. data/docs/static/man-app.png +0 -0
  68. data/docs/static/man-builds.png +0 -0
  69. data/docs/static/man-builds1.png +0 -0
  70. data/docs/static/man-editor-notepad.png +0 -0
  71. data/docs/static/man-editor-osx.png +0 -0
  72. data/docs/static/man-ele-background.png +0 -0
  73. data/docs/static/man-ele-border.png +0 -0
  74. data/docs/static/man-ele-button.png +0 -0
  75. data/docs/static/man-ele-check.png +0 -0
  76. data/docs/static/man-ele-editbox.png +0 -0
  77. data/docs/static/man-ele-editline.png +0 -0
  78. data/docs/static/man-ele-image.png +0 -0
  79. data/docs/static/man-ele-listbox.png +0 -0
  80. data/docs/static/man-ele-progress.png +0 -0
  81. data/docs/static/man-ele-radio.png +0 -0
  82. data/docs/static/man-ele-shape.png +0 -0
  83. data/docs/static/man-ele-textblock.png +0 -0
  84. data/docs/static/man-ele-video.png +0 -0
  85. data/docs/static/man-intro-dmg.png +0 -0
  86. data/docs/static/man-intro-exe.png +0 -0
  87. data/docs/static/man-look-tiger.png +0 -0
  88. data/docs/static/man-look-ubuntu.png +0 -0
  89. data/docs/static/man-look-vista.png +0 -0
  90. data/docs/static/man-run-osx.png +0 -0
  91. data/docs/static/man-run-vista.png +0 -0
  92. data/docs/static/man-run-xp.png +0 -0
  93. data/docs/static/man-shot1.png +0 -0
  94. data/docs/static/manual-en.txt +0 -3529
  95. data/docs/static/manual-ja.txt +0 -2829
  96. data/docs/static/manual.css +0 -171
  97. data/docs/static/manual.md +0 -3528
  98. data/docs/static/menu-corner1.png +0 -0
  99. data/docs/static/menu-corner2.png +0 -0
  100. data/docs/static/menu-gray.png +0 -0
  101. data/docs/static/menu-left.png +0 -0
  102. data/docs/static/menu-right.png +0 -0
  103. data/docs/static/menu-top.png +0 -0
  104. data/docs/static/shoes-dmg.jpg +0 -0
  105. data/docs/static/shoes-icon-blue.png +0 -0
  106. data/docs/static/shoes-icon.png +0 -0
  107. data/docs/static/shoes-manual-apps.gif +0 -0
  108. data/docs/static/shoes_main_window.png +0 -0
  109. data/docs/static/stripe.png +0 -0
  110. data/docs/static/stubs/blank.exe +0 -0
  111. data/docs/static/stubs/blank.hfz +0 -0
  112. data/docs/static/stubs/blank.run +0 -375
  113. data/docs/static/stubs/cocoa-install +0 -0
  114. data/docs/static/stubs/sh-install +0 -49
  115. data/docs/static/stubs/shoes-stub-inject.exe +0 -0
  116. data/docs/static/stubs/shoes-stub.exe +0 -0
  117. data/docs/static/tutor-back.png +0 -0
  118. data/docs/yard/catscradle.md +0 -44
  119. data/docs/yard/template/default/fulldoc/html/setup.rb +0 -13
  120. data/docs/yard/template/default/layout/html/setup.rb +0 -9
  121. data/examples/backdround_with_image.rb +0 -16
  122. data/examples/bloopsaphone/working/1901_by_Aanand_Prasad.rb +0 -478
  123. data/examples/bloopsaphone/working/b1.rb +0 -64
  124. data/examples/bloopsaphone/working/b2.rb +0 -36
  125. data/examples/bloopsaphone/working/bloops_test.rb +0 -41
  126. data/examples/bloopsaphone/working/bloopsaphone_theme_song_by_why.rb +0 -31
  127. data/examples/bloopsaphone/working/feepogram.rb +0 -67
  128. data/examples/bloopsaphone/working/simpsons_theme_song_by_why.rb +0 -14
  129. data/examples/bloopsaphone/working/tune_cheeky_drat.rb +0 -210
  130. data/examples/button.rb +0 -10
  131. data/examples/button_alert.rb +0 -6
  132. data/examples/button_go_away.rb +0 -6
  133. data/examples/button_with_position_and_size.rb +0 -7
  134. data/examples/coffee.rb +0 -14
  135. data/examples/download.rb +0 -5
  136. data/examples/download_and_show_image.rb +0 -28
  137. data/examples/edit_box.rb +0 -8
  138. data/examples/edit_line.rb +0 -8
  139. data/examples/fill.rb +0 -25
  140. data/examples/flow.rb +0 -11
  141. data/examples/fonts.rb +0 -6
  142. data/examples/gen.rb +0 -140
  143. data/examples/get_headers.rb +0 -10
  144. data/examples/hello_world.rb +0 -3
  145. data/examples/highlander.rb +0 -87
  146. data/examples/image/clickable_image.rb +0 -5
  147. data/examples/image/image.rb +0 -3
  148. data/examples/image/image_size.rb +0 -7
  149. data/examples/image/image_with_position_and_size.rb +0 -3
  150. data/examples/info.rb +0 -9
  151. data/examples/legacy/not_checked/expert/colours.rb +0 -105
  152. data/examples/legacy/not_checked/expert/curve-animation.rb +0 -31
  153. data/examples/legacy/not_checked/expert/curve-control-point.rb +0 -51
  154. data/examples/legacy/not_checked/expert/custom-list-box.rb +0 -53
  155. data/examples/legacy/not_checked/expert/definr.rb +0 -23
  156. data/examples/legacy/not_checked/expert/funnies.rb +0 -56
  157. data/examples/legacy/not_checked/expert/minesweeper.rb +0 -267
  158. data/examples/legacy/not_checked/expert/othello.rb +0 -318
  159. data/examples/legacy/not_checked/expert/pong.rb +0 -62
  160. data/examples/legacy/not_checked/expert/tankspank.rb +0 -385
  161. data/examples/legacy/not_checked/expert/tooltips.rb +0 -45
  162. data/examples/legacy/not_checked/expert/url.rb +0 -37
  163. data/examples/legacy/not_checked/expert/video-player.rb +0 -256
  164. data/examples/legacy/not_checked/good/_why-stories.rb +0 -44
  165. data/examples/legacy/not_checked/good/_why-stories.yaml +0 -387
  166. data/examples/legacy/not_checked/good/arc.rb +0 -37
  167. data/examples/legacy/not_checked/good/cardflip.rb +0 -141
  168. data/examples/legacy/not_checked/good/clock.rb +0 -51
  169. data/examples/legacy/not_checked/good/console.rb +0 -21
  170. data/examples/legacy/not_checked/good/follow.rb +0 -26
  171. data/examples/legacy/not_checked/good/image-rotate.rb +0 -14
  172. data/examples/legacy/not_checked/good/paris.svg +0 -7236
  173. data/examples/legacy/not_checked/good/path-animation.rb +0 -46
  174. data/examples/legacy/not_checked/good/plots.rb +0 -100
  175. data/examples/legacy/not_checked/good/reminder.rb +0 -174
  176. data/examples/legacy/not_checked/good/svgview.rb +0 -113
  177. data/examples/legacy/not_checked/good/vjot.rb +0 -56
  178. data/examples/legacy/not_checked/shoes-contrib/.gitignore +0 -2
  179. data/examples/legacy/not_checked/shoes-contrib/README.md +0 -34
  180. data/examples/legacy/not_checked/shoes-contrib/animation/animate-ovals.rb +0 -21
  181. data/examples/legacy/not_checked/shoes-contrib/animation/flowers.rb +0 -59
  182. data/examples/legacy/not_checked/shoes-contrib/animation/happy-trails.rb +0 -31
  183. data/examples/legacy/not_checked/shoes-contrib/animation/mice-satellites.rb +0 -27
  184. data/examples/legacy/not_checked/shoes-contrib/animation/oval-motion.rb +0 -12
  185. data/examples/legacy/not_checked/shoes-contrib/animation/pink-bubbles.rb +0 -34
  186. data/examples/legacy/not_checked/shoes-contrib/animation/pulsate.rb +0 -18
  187. data/examples/legacy/not_checked/shoes-contrib/animation/rotating-star.rb +0 -18
  188. data/examples/legacy/not_checked/shoes-contrib/app/download-and-save.rb +0 -11
  189. data/examples/legacy/not_checked/shoes-contrib/app/download.rb +0 -10
  190. data/examples/legacy/not_checked/shoes-contrib/app/get-google.rb +0 -11
  191. data/examples/legacy/not_checked/shoes-contrib/app/mouse-detection.rb +0 -7
  192. data/examples/legacy/not_checked/shoes-contrib/app/resizeable-false.rb +0 -6
  193. data/examples/legacy/not_checked/shoes-contrib/art/bubble-bullseye.rb +0 -23
  194. data/examples/legacy/not_checked/shoes-contrib/art/faded.rb +0 -17
  195. data/examples/legacy/not_checked/shoes-contrib/art/fill-oval.rb +0 -5
  196. data/examples/legacy/not_checked/shoes-contrib/art/mask.rb +0 -15
  197. data/examples/legacy/not_checked/shoes-contrib/art/oval-gradient.rb +0 -6
  198. data/examples/legacy/not_checked/shoes-contrib/art/star-gradient.rb +0 -4
  199. data/examples/legacy/not_checked/shoes-contrib/basic/basic-edit-box.rb +0 -8
  200. data/examples/legacy/not_checked/shoes-contrib/basic/basic-new-window.rb +0 -8
  201. data/examples/legacy/not_checked/shoes-contrib/basic/basic-oval-image.rb +0 -8
  202. data/examples/legacy/not_checked/shoes-contrib/basic/basic-oval-shape.rb +0 -8
  203. data/examples/legacy/not_checked/shoes-contrib/basic/basic-oval.rb +0 -6
  204. data/examples/legacy/not_checked/shoes-contrib/basic/class-book.rb +0 -43
  205. data/examples/legacy/not_checked/shoes-contrib/basic/class-book.yaml +0 -387
  206. data/examples/legacy/not_checked/shoes-contrib/basic/clock.rb +0 -6
  207. data/examples/legacy/not_checked/shoes-contrib/basic/edit-stack +0 -14
  208. data/examples/legacy/not_checked/shoes-contrib/basic/gradient-shoes.rb +0 -7
  209. data/examples/legacy/not_checked/shoes-contrib/basic/list_box-shape-report.rb +0 -19
  210. data/examples/legacy/not_checked/shoes-contrib/basic/rect-arrow.rb +0 -7
  211. data/examples/legacy/not_checked/shoes-contrib/basic/scribble.rb +0 -8
  212. data/examples/legacy/not_checked/shoes-contrib/basic/search.rb +0 -32
  213. data/examples/legacy/not_checked/shoes-contrib/basic/shoes-notes.rb +0 -16
  214. data/examples/legacy/not_checked/shoes-contrib/basic/url-shoes-subclassing.rb +0 -24
  215. data/examples/legacy/not_checked/shoes-contrib/browser.rb +0 -21
  216. data/examples/legacy/not_checked/shoes-contrib/elements/background-column.rb +0 -3
  217. data/examples/legacy/not_checked/shoes-contrib/elements/background.rb +0 -4
  218. data/examples/legacy/not_checked/shoes-contrib/elements/basic-fps.rb +0 -6
  219. data/examples/legacy/not_checked/shoes-contrib/elements/border-cat.rb +0 -6
  220. data/examples/legacy/not_checked/shoes-contrib/elements/button-block.rb +0 -8
  221. data/examples/legacy/not_checked/shoes-contrib/elements/check-mate.rb +0 -15
  222. data/examples/legacy/not_checked/shoes-contrib/elements/common-styles.rb +0 -13
  223. data/examples/legacy/not_checked/shoes-contrib/elements/displace-animation.rb +0 -13
  224. data/examples/legacy/not_checked/shoes-contrib/elements/edit_box-character-count.rb +0 -7
  225. data/examples/legacy/not_checked/shoes-contrib/elements/edit_line-character-count.rb +0 -7
  226. data/examples/legacy/not_checked/shoes-contrib/elements/image-icon.rb +0 -3
  227. data/examples/legacy/not_checked/shoes-contrib/elements/list_box-select-class.rb +0 -13
  228. data/examples/legacy/not_checked/shoes-contrib/elements/list_box.rb +0 -6
  229. data/examples/legacy/not_checked/shoes-contrib/elements/move-flow-animate.rb +0 -13
  230. data/examples/legacy/not_checked/shoes-contrib/elements/phat-button.rb +0 -7
  231. data/examples/legacy/not_checked/shoes-contrib/elements/popup.rb +0 -7
  232. data/examples/legacy/not_checked/shoes-contrib/elements/progress-bar.rb +0 -10
  233. data/examples/legacy/not_checked/shoes-contrib/elements/radio-dreamcast-favs.rb +0 -17
  234. data/examples/legacy/not_checked/shoes-contrib/elements/timer.rb +0 -6
  235. data/examples/legacy/not_checked/shoes-contrib/elements/width-introspec.rb +0 -8
  236. data/examples/legacy/not_checked/shoes-contrib/events/background-hover.rb +0 -11
  237. data/examples/legacy/not_checked/shoes-contrib/events/motion-detect.rb +0 -9
  238. data/examples/legacy/not_checked/shoes-contrib/events/pressed-key.rb +0 -6
  239. data/examples/legacy/not_checked/shoes-contrib/expert/expert-funnies.rb +0 -51
  240. data/examples/legacy/not_checked/shoes-contrib/expert/expert-irb.rb +0 -112
  241. data/examples/legacy/not_checked/shoes-contrib/expert/expert-othello.rb +0 -319
  242. data/examples/legacy/not_checked/shoes-contrib/good/good-arc.rb +0 -37
  243. data/examples/legacy/not_checked/shoes-contrib/good/good-clock.rb +0 -51
  244. data/examples/legacy/not_checked/shoes-contrib/good/good-follow.rb +0 -26
  245. data/examples/legacy/not_checked/shoes-contrib/good/good-reminder.rb +0 -174
  246. data/examples/legacy/not_checked/shoes-contrib/good/good-vjot.rb +0 -56
  247. data/examples/legacy/not_checked/shoes-contrib/kernel/ask.rb +0 -4
  248. data/examples/legacy/not_checked/shoes-contrib/kernel/ask_color.rb +0 -4
  249. data/examples/legacy/not_checked/shoes-contrib/kernel/ask_open_file.rb +0 -4
  250. data/examples/legacy/not_checked/shoes-contrib/kernel/ask_save_file.rb +0 -7
  251. data/examples/legacy/not_checked/shoes-contrib/kernel/confirm.rb +0 -3
  252. data/examples/legacy/not_checked/shoes-contrib/kernel/debug.rb +0 -4
  253. data/examples/legacy/not_checked/shoes-contrib/kernel/exit.rb +0 -5
  254. data/examples/legacy/not_checked/shoes-contrib/kernel/font.rb +0 -5
  255. data/examples/legacy/not_checked/shoes-contrib/kernel/fonts.rb +0 -3
  256. data/examples/legacy/not_checked/shoes-contrib/manipulation/append-slot.rb +0 -9
  257. data/examples/legacy/not_checked/shoes-contrib/manipulation/clear-slot.rb +0 -6
  258. data/examples/legacy/not_checked/shoes-contrib/manipulation/prepend-slot.rb +0 -6
  259. data/examples/legacy/not_checked/shoes-contrib/manipulation/roll.rb +0 -17
  260. data/examples/legacy/not_checked/shoes-contrib/position/gutter-margin.rb +0 -5
  261. data/examples/legacy/not_checked/shoes-contrib/position/stack-width.rb +0 -3
  262. data/examples/legacy/not_checked/shoes-contrib/simple/simple-accordion.rb +0 -75
  263. data/examples/legacy/not_checked/shoes-contrib/simple/simple-anim-shapes.rb +0 -17
  264. data/examples/legacy/not_checked/shoes-contrib/simple/simple-anim-text.rb +0 -13
  265. data/examples/legacy/not_checked/shoes-contrib/simple/simple-arc.rb +0 -23
  266. data/examples/legacy/not_checked/shoes-contrib/simple/simple-bounce.rb +0 -24
  267. data/examples/legacy/not_checked/shoes-contrib/simple/simple-calc.rb +0 -70
  268. data/examples/legacy/not_checked/shoes-contrib/simple/simple-chipmunk.rb +0 -26
  269. data/examples/legacy/not_checked/shoes-contrib/simple/simple-control-sizes.rb +0 -24
  270. data/examples/legacy/not_checked/shoes-contrib/simple/simple-curve.rb +0 -26
  271. data/examples/legacy/not_checked/shoes-contrib/simple/simple-dialogs.rb +0 -29
  272. data/examples/legacy/not_checked/shoes-contrib/simple/simple-downloader.rb +0 -27
  273. data/examples/legacy/not_checked/shoes-contrib/simple/simple-draw.rb +0 -13
  274. data/examples/legacy/not_checked/shoes-contrib/simple/simple-editor.rb +0 -28
  275. data/examples/legacy/not_checked/shoes-contrib/simple/simple-form.rb +0 -28
  276. data/examples/legacy/not_checked/shoes-contrib/simple/simple-form.shy +0 -0
  277. data/examples/legacy/not_checked/shoes-contrib/simple/simple-mask.rb +0 -21
  278. data/examples/legacy/not_checked/shoes-contrib/simple/simple-menu.rb +0 -31
  279. data/examples/legacy/not_checked/shoes-contrib/simple/simple-menu1.rb +0 -35
  280. data/examples/legacy/not_checked/shoes-contrib/simple/simple-rubygems.rb +0 -29
  281. data/examples/legacy/not_checked/shoes-contrib/simple/simple-slide.rb +0 -45
  282. data/examples/legacy/not_checked/shoes-contrib/simple/simple-sphere.rb +0 -28
  283. data/examples/legacy/not_checked/shoes-contrib/simple/simple-sqlite3.rb +0 -13
  284. data/examples/legacy/not_checked/shoes-contrib/simple/simple-timer.rb +0 -13
  285. data/examples/legacy/not_checked/shoes-contrib/simple/simple-video.rb +0 -13
  286. data/examples/legacy/not_checked/shoes-contrib/styles/alignment.rb +0 -4
  287. data/examples/legacy/not_checked/shoes-contrib/styles/attachment.rb +0 -5
  288. data/examples/legacy/not_checked/shoes-contrib/styles/emphasis.rb +0 -3
  289. data/examples/legacy/not_checked/shoes-contrib/styles/gradient-angle.rb +0 -3
  290. data/examples/legacy/not_checked/shoes-contrib/styles/para-methods.rb +0 -5
  291. data/examples/legacy/not_checked/shoes-contrib/styles/para-red-underlined.rb +0 -3
  292. data/examples/legacy/not_checked/shoes-contrib/styles/para-style-method.rb +0 -4
  293. data/examples/legacy/not_checked/shoes-dep-samples/expert-game-of-life.rb +0 -243
  294. data/examples/legacy/not_checked/shoes-dep-samples/expert-othello.rb +0 -319
  295. data/examples/legacy/not_checked/shoes-dep-samples/good-clock.rb +0 -51
  296. data/examples/legacy/not_checked/shoes-dep-samples/good-follow.rb +0 -26
  297. data/examples/legacy/not_checked/shoes-dep-samples/good-reminder.rb +0 -174
  298. data/examples/legacy/not_checked/shoes-dep-samples/good-vjot.rb +0 -56
  299. data/examples/legacy/not_checked/shoes-dep-samples/simple-accordion.rb +0 -75
  300. data/examples/legacy/not_checked/shoes-dep-samples/simple-anim-shapes.rb +0 -17
  301. data/examples/legacy/not_checked/shoes-dep-samples/simple-anim-text.rb +0 -13
  302. data/examples/legacy/not_checked/shoes-dep-samples/simple-arc.rb +0 -23
  303. data/examples/legacy/not_checked/shoes-dep-samples/simple-bounce.rb +0 -24
  304. data/examples/legacy/not_checked/shoes-dep-samples/simple-calc.rb +0 -70
  305. data/examples/legacy/not_checked/shoes-dep-samples/simple-chipmunk.rb +0 -26
  306. data/examples/legacy/not_checked/shoes-dep-samples/simple-control-sizes.rb +0 -24
  307. data/examples/legacy/not_checked/shoes-dep-samples/simple-curve.rb +0 -26
  308. data/examples/legacy/not_checked/shoes-dep-samples/simple-dialogs.rb +0 -29
  309. data/examples/legacy/not_checked/shoes-dep-samples/simple-draw.rb +0 -13
  310. data/examples/legacy/not_checked/shoes-dep-samples/simple-editor.rb +0 -28
  311. data/examples/legacy/not_checked/shoes-dep-samples/simple-form.rb +0 -28
  312. data/examples/legacy/not_checked/shoes-dep-samples/simple-form.shy +0 -0
  313. data/examples/legacy/not_checked/shoes-dep-samples/simple-mask.rb +0 -21
  314. data/examples/legacy/not_checked/shoes-dep-samples/simple-menu.rb +0 -31
  315. data/examples/legacy/not_checked/shoes-dep-samples/simple-menu1.rb +0 -35
  316. data/examples/legacy/not_checked/shoes-dep-samples/simple-rubygems.rb +0 -29
  317. data/examples/legacy/not_checked/shoes-dep-samples/simple-slide.rb +0 -45
  318. data/examples/legacy/not_checked/shoes-dep-samples/simple-sphere.rb +0 -28
  319. data/examples/legacy/not_checked/shoes-dep-samples/simple-sqlite3.rb +0 -13
  320. data/examples/legacy/not_checked/shoes-dep-samples/simple-timer.rb +0 -13
  321. data/examples/legacy/not_checked/shoes-dep-samples/simple-video.rb +0 -13
  322. data/examples/legacy/not_checked/shoes3-tests/AnemicCinema1926marcelDuchampCut.mp4 +0 -0
  323. data/examples/legacy/not_checked/shoes3-tests/button/button.rb +0 -53
  324. data/examples/legacy/not_checked/shoes3-tests/cache/cache.rb +0 -41
  325. data/examples/legacy/not_checked/shoes3-tests/combo/combo.rb +0 -24
  326. data/examples/legacy/not_checked/shoes3-tests/curl/bare.rb +0 -34
  327. data/examples/legacy/not_checked/shoes3-tests/curl/downloader.rb +0 -40
  328. data/examples/legacy/not_checked/shoes3-tests/curl/m1.rb +0 -11
  329. data/examples/legacy/not_checked/shoes3-tests/curl/m2.rb +0 -12
  330. data/examples/legacy/not_checked/shoes3-tests/curl/m3.rb +0 -11
  331. data/examples/legacy/not_checked/shoes3-tests/curl/m4.rb +0 -5
  332. data/examples/legacy/not_checked/shoes3-tests/curl/typ.rb +0 -30
  333. data/examples/legacy/not_checked/shoes3-tests/cursor/c1.rb +0 -21
  334. data/examples/legacy/not_checked/shoes3-tests/decoration.rb +0 -14
  335. data/examples/legacy/not_checked/shoes3-tests/dialogs/ask.rb +0 -6
  336. data/examples/legacy/not_checked/shoes3-tests/dialogs/confirm.rb +0 -6
  337. data/examples/legacy/not_checked/shoes3-tests/editbox/editbox.rb +0 -36
  338. data/examples/legacy/not_checked/shoes3-tests/editline/editline.rb +0 -27
  339. data/examples/legacy/not_checked/shoes3-tests/events/button.rb +0 -32
  340. data/examples/legacy/not_checked/shoes3-tests/events/button.yaml +0 -40
  341. data/examples/legacy/not_checked/shoes3-tests/events/capture.rb +0 -57
  342. data/examples/legacy/not_checked/shoes3-tests/events/chipmunk.yaml +0 -47
  343. data/examples/legacy/not_checked/shoes3-tests/events/event0.rb +0 -8
  344. data/examples/legacy/not_checked/shoes3-tests/events/event1.rb +0 -51
  345. data/examples/legacy/not_checked/shoes3-tests/events/event1.yaml +0 -26
  346. data/examples/legacy/not_checked/shoes3-tests/events/event2.rb +0 -46
  347. data/examples/legacy/not_checked/shoes3-tests/events/event3.rb +0 -44
  348. data/examples/legacy/not_checked/shoes3-tests/events/event4.rb +0 -65
  349. data/examples/legacy/not_checked/shoes3-tests/events/event5.rb +0 -17
  350. data/examples/legacy/not_checked/shoes3-tests/events/event6.rb +0 -51
  351. data/examples/legacy/not_checked/shoes3-tests/events/replay.rb +0 -60
  352. data/examples/legacy/not_checked/shoes3-tests/gapp/fullscreen.rb +0 -38
  353. data/examples/legacy/not_checked/shoes3-tests/gapp/icon.rb +0 -56
  354. data/examples/legacy/not_checked/shoes3-tests/gapp/mon1.rb +0 -46
  355. data/examples/legacy/not_checked/shoes3-tests/gapp/settings1.rb +0 -22
  356. data/examples/legacy/not_checked/shoes3-tests/gapp/title1.rb +0 -34
  357. data/examples/legacy/not_checked/shoes3-tests/indian.m4a +0 -0
  358. data/examples/legacy/not_checked/shoes3-tests/menus/event.rb +0 -33
  359. data/examples/legacy/not_checked/shoes3-tests/menus/menu1.rb +0 -8
  360. data/examples/legacy/not_checked/shoes3-tests/menus/menu2.rb +0 -25
  361. data/examples/legacy/not_checked/shoes3-tests/menus/menu3.rb +0 -103
  362. data/examples/legacy/not_checked/shoes3-tests/menus/menu4.rb +0 -41
  363. data/examples/legacy/not_checked/shoes3-tests/menus/tests.txt +0 -42
  364. data/examples/legacy/not_checked/shoes3-tests/opacity.rb +0 -13
  365. data/examples/legacy/not_checked/shoes3-tests/plot/^IRX.R +0 -5219
  366. data/examples/legacy/not_checked/shoes3-tests/plot/^SPX +0 -5219
  367. data/examples/legacy/not_checked/shoes3-tests/plot/cstest.rb +0 -51
  368. data/examples/legacy/not_checked/shoes3-tests/plot/gr1.rb +0 -73
  369. data/examples/legacy/not_checked/shoes3-tests/plot/gr2.rb +0 -40
  370. data/examples/legacy/not_checked/shoes3-tests/plot/gr3.rb +0 -47
  371. data/examples/legacy/not_checked/shoes3-tests/plot/gr4.rb +0 -35
  372. data/examples/legacy/not_checked/shoes3-tests/plot/gr5.rb +0 -31
  373. data/examples/legacy/not_checked/shoes3-tests/plot/gr6.rb +0 -35
  374. data/examples/legacy/not_checked/shoes3-tests/plot/gr7.rb +0 -37
  375. data/examples/legacy/not_checked/shoes3-tests/plot/grcsv.rb +0 -219
  376. data/examples/legacy/not_checked/shoes3-tests/plot/manual.rb +0 -40
  377. data/examples/legacy/not_checked/shoes3-tests/progress/progress.rb +0 -29
  378. data/examples/legacy/not_checked/shoes3-tests/radio/clear.rb +0 -20
  379. data/examples/legacy/not_checked/shoes3-tests/radio/group.rb +0 -18
  380. data/examples/legacy/not_checked/shoes3-tests/radio/multiple.rb +0 -32
  381. data/examples/legacy/not_checked/shoes3-tests/radio/nogroup.rb +0 -9
  382. data/examples/legacy/not_checked/shoes3-tests/simpletest.svg +0 -14
  383. data/examples/legacy/not_checked/shoes3-tests/spinner.rb +0 -15
  384. data/examples/legacy/not_checked/shoes3-tests/svg.rb +0 -208
  385. data/examples/legacy/not_checked/shoes3-tests/switch/switch.rb +0 -28
  386. data/examples/legacy/not_checked/shoes3-tests/systray/back.rb +0 -20
  387. data/examples/legacy/not_checked/shoes3-tests/systray/note.rb +0 -17
  388. data/examples/legacy/not_checked/shoes3-tests/terminal/cursor.rb +0 -27
  389. data/examples/legacy/not_checked/shoes3-tests/terminal/ed.rb +0 -65
  390. data/examples/legacy/not_checked/shoes3-tests/terminal/el.rb +0 -50
  391. data/examples/legacy/not_checked/shoes3-tests/terminal/logattr.rb +0 -31
  392. data/examples/legacy/not_checked/shoes3-tests/tests_color.rb +0 -138
  393. data/examples/legacy/not_checked/shoes3-tests/tests_svg.rb +0 -228
  394. data/examples/legacy/not_checked/shoes3-tests/tests_video_vlc.rb +0 -186
  395. data/examples/legacy/not_checked/shoes3-tests/tooltips.rb +0 -20
  396. data/examples/legacy/not_checked/shoes3-tests/video_vlc.rb +0 -242
  397. data/examples/legacy/not_checked/shoes3-tests/wheel/wheel1.rb +0 -21
  398. data/examples/legacy/not_checked/simple/accordion.rb +0 -81
  399. data/examples/legacy/not_checked/simple/anim-shapes.rb +0 -17
  400. data/examples/legacy/not_checked/simple/anim-text.rb +0 -13
  401. data/examples/legacy/not_checked/simple/arc.rb +0 -23
  402. data/examples/legacy/not_checked/simple/bounce.rb +0 -24
  403. data/examples/legacy/not_checked/simple/chipmunk.rb +0 -26
  404. data/examples/legacy/not_checked/simple/control-sizes.rb +0 -24
  405. data/examples/legacy/not_checked/simple/curve-control-points.rb +0 -24
  406. data/examples/legacy/not_checked/simple/curve.rb +0 -26
  407. data/examples/legacy/not_checked/simple/dialogs.rb +0 -29
  408. data/examples/legacy/not_checked/simple/downloader.rb +0 -40
  409. data/examples/legacy/not_checked/simple/downloader1.rb +0 -31
  410. data/examples/legacy/not_checked/simple/draw.rb +0 -13
  411. data/examples/legacy/not_checked/simple/editor.rb +0 -28
  412. data/examples/legacy/not_checked/simple/form.rb +0 -30
  413. data/examples/legacy/not_checked/simple/image.rb +0 -21
  414. data/examples/legacy/not_checked/simple/info.rb +0 -78
  415. data/examples/legacy/not_checked/simple/mask.rb +0 -21
  416. data/examples/legacy/not_checked/simple/mask2.rb +0 -27
  417. data/examples/legacy/not_checked/simple/menu.rb +0 -31
  418. data/examples/legacy/not_checked/simple/menu1.rb +0 -35
  419. data/examples/legacy/not_checked/simple/slide.rb +0 -45
  420. data/examples/legacy/not_checked/simple/sphere.rb +0 -28
  421. data/examples/legacy/not_checked/superleg.rb +0 -244
  422. data/examples/legacy/working/shoes-contrib/basic/a-poem.rb +0 -24
  423. data/examples/legacy/working/shoes-contrib/basic/basic-blocks-instances.rb +0 -7
  424. data/examples/legacy/working/shoes-contrib/basic/basic-blocks.rb +0 -7
  425. data/examples/legacy/working/shoes-contrib/basic/basic-slot.rb +0 -8
  426. data/examples/legacy/working/shoes-contrib/basic/intro.rb +0 -20
  427. data/examples/legacy/working/shoes-contrib/basic/two-column.rb +0 -12
  428. data/examples/legacy/working/shoes-contrib/elements/edit_box.rb +0 -6
  429. data/examples/legacy/working/shoes-contrib/kernel/alert.rb +0 -3
  430. data/examples/legacy/working/simple/calc.rb +0 -71
  431. data/examples/legacy/working/simple/sqlite3.rb +0 -27
  432. data/examples/legacy/working/simple/timer.rb +0 -13
  433. data/examples/line.rb +0 -5
  434. data/examples/link.rb +0 -20
  435. data/examples/list_box.rb +0 -8
  436. data/examples/local_fonts.rb +0 -4
  437. data/examples/local_images.rb +0 -4
  438. data/examples/motion_events.rb +0 -20
  439. data/examples/para/collection_of_arguments.rb +0 -9
  440. data/examples/para/hello_world.rb +0 -5
  441. data/examples/para/hide_and_show.rb +0 -9
  442. data/examples/para/rainbow.rb +0 -11
  443. data/examples/para/rainbow_2.rb +0 -11
  444. data/examples/para/sizes.rb +0 -11
  445. data/examples/para/sizes_2.rb +0 -12
  446. data/examples/para/strong.rb +0 -3
  447. data/examples/para_text_widgets.rb +0 -4
  448. data/examples/parse_xl_funnies.rb +0 -58
  449. data/examples/pirate.png +0 -0
  450. data/examples/raw_flow.rb +0 -11
  451. data/examples/ruby_racer.rb +0 -50
  452. data/examples/selfitude.rb +0 -18
  453. data/examples/shapes/arc.rb +0 -8
  454. data/examples/shapes/shapes.rb +0 -8
  455. data/examples/shapes/shapes_fill.rb +0 -10
  456. data/examples/shapes/star.rb +0 -5
  457. data/examples/shoes_school.rb +0 -66
  458. data/examples/shoes_splorer.rb +0 -150
  459. data/examples/simple_slides.rb +0 -73
  460. data/examples/skip_ci/parrot.rb +0 -22
  461. data/examples/skip_ci/say.rb +0 -20
  462. data/examples/sleepless.rb +0 -26
  463. data/examples/slots.rb +0 -10
  464. data/examples/spacing.rb +0 -18
  465. data/examples/span.rb +0 -6
  466. data/examples/stack/background.rb +0 -35
  467. data/examples/stack/border.rb +0 -11
  468. data/examples/stack/gradients.rb +0 -6
  469. data/examples/stack/raw_stack.rb +0 -8
  470. data/examples/stack/stack.rb +0 -27
  471. data/examples/text_change.rb +0 -4
  472. data/examples/text_sizes.rb +0 -10
  473. data/examples/timmy.rb +0 -109
  474. data/examples/title_and_resize.rb +0 -3
  475. data/examples/video.rb +0 -10
  476. data/exe/scarpe +0 -107
  477. data/fonts/Pacifico.ttf +0 -0
  478. data/lib/scarpe/base64.rb +0 -27
  479. data/lib/scarpe/cats_cradle.rb +0 -255
  480. data/lib/scarpe/fill.rb +0 -23
  481. data/lib/scarpe/glibui/README.md +0 -34
  482. data/lib/scarpe/glibui/alert.rb +0 -65
  483. data/lib/scarpe/glibui/app.rb +0 -27
  484. data/lib/scarpe/glibui/background.rb +0 -18
  485. data/lib/scarpe/glibui/border.rb +0 -22
  486. data/lib/scarpe/glibui/button.rb +0 -38
  487. data/lib/scarpe/glibui/dimensions.rb +0 -22
  488. data/lib/scarpe/glibui/document_root.rb +0 -33
  489. data/lib/scarpe/glibui/edit_box.rb +0 -44
  490. data/lib/scarpe/glibui/edit_line.rb +0 -43
  491. data/lib/scarpe/glibui/flow.rb +0 -33
  492. data/lib/scarpe/glibui/html.rb +0 -77
  493. data/lib/scarpe/glibui/image.rb +0 -36
  494. data/lib/scarpe/glibui/link.rb +0 -29
  495. data/lib/scarpe/glibui/local_display.rb +0 -62
  496. data/lib/scarpe/glibui/para.rb +0 -84
  497. data/lib/scarpe/glibui/spacing.rb +0 -41
  498. data/lib/scarpe/glibui/stack.rb +0 -33
  499. data/lib/scarpe/glibui/text_widget.rb +0 -30
  500. data/lib/scarpe/glibui/widget.rb +0 -81
  501. data/lib/scarpe/glibui.rb +0 -29
  502. data/lib/scarpe/libui/alert.rb +0 -9
  503. data/lib/scarpe/libui/button.rb +0 -18
  504. data/lib/scarpe/libui/colors.rb +0 -157
  505. data/lib/scarpe/libui/core.rb +0 -66
  506. data/lib/scarpe/libui/flow.rb +0 -16
  507. data/lib/scarpe/libui/libui.rb +0 -45
  508. data/lib/scarpe/libui/notepad.md +0 -26
  509. data/lib/scarpe/libui/para.rb +0 -154
  510. data/lib/scarpe/libui/stack.rb +0 -34
  511. data/lib/scarpe/line.rb +0 -25
  512. data/lib/scarpe/logger.rb +0 -159
  513. data/lib/scarpe/promises.rb +0 -405
  514. data/lib/scarpe/shape.rb +0 -20
  515. data/lib/scarpe/slot.rb +0 -7
  516. data/lib/scarpe/unit_test_helpers.rb +0 -236
  517. data/lib/scarpe/version.rb +0 -5
  518. data/lib/scarpe/widgets.rb +0 -35
  519. data/lib/scarpe/wv/alert.rb +0 -65
  520. data/lib/scarpe/wv/app.rb +0 -104
  521. data/lib/scarpe/wv/arc.rb +0 -57
  522. data/lib/scarpe/wv/background.rb +0 -27
  523. data/lib/scarpe/wv/border.rb +0 -24
  524. data/lib/scarpe/wv/button.rb +0 -50
  525. data/lib/scarpe/wv/control_interface.rb +0 -147
  526. data/lib/scarpe/wv/control_interface_test.rb +0 -234
  527. data/lib/scarpe/wv/dimensions.rb +0 -22
  528. data/lib/scarpe/wv/document_root.rb +0 -8
  529. data/lib/scarpe/wv/edit_box.rb +0 -44
  530. data/lib/scarpe/wv/edit_line.rb +0 -43
  531. data/lib/scarpe/wv/fill.rb +0 -30
  532. data/lib/scarpe/wv/flow.rb +0 -24
  533. data/lib/scarpe/wv/font.rb +0 -36
  534. data/lib/scarpe/wv/html.rb +0 -108
  535. data/lib/scarpe/wv/image.rb +0 -41
  536. data/lib/scarpe/wv/line.rb +0 -38
  537. data/lib/scarpe/wv/link.rb +0 -29
  538. data/lib/scarpe/wv/list_box.rb +0 -50
  539. data/lib/scarpe/wv/para.rb +0 -90
  540. data/lib/scarpe/wv/shape.rb +0 -35
  541. data/lib/scarpe/wv/shape_helper.rb +0 -44
  542. data/lib/scarpe/wv/slot.rb +0 -81
  543. data/lib/scarpe/wv/spacing.rb +0 -41
  544. data/lib/scarpe/wv/span.rb +0 -66
  545. data/lib/scarpe/wv/stack.rb +0 -24
  546. data/lib/scarpe/wv/star.rb +0 -64
  547. data/lib/scarpe/wv/subscription_item.rb +0 -50
  548. data/lib/scarpe/wv/text_widget.rb +0 -30
  549. data/lib/scarpe/wv/video.rb +0 -42
  550. data/lib/scarpe/wv/web_wrangler.rb +0 -683
  551. data/lib/scarpe/wv/webview_local_display.rb +0 -73
  552. data/lib/scarpe/wv/webview_relay_display.rb +0 -185
  553. data/lib/scarpe/wv/widget.rb +0 -185
  554. data/lib/scarpe/wv/wv_display_worker.rb +0 -65
  555. data/lib/scarpe/wv.rb +0 -43
  556. data/lib/scarpe/wv_local.rb +0 -6
  557. data/lib/scarpe/wv_relay.rb +0 -6
  558. data/lib/scarpe.rb +0 -29
  559. data/logger/debug_web_wrangler.json +0 -4
  560. data/logger/scarpe_wv_test.json +0 -4
  561. data/scarpe-0.2.0.gem +0 -0
  562. data/scarpe.gemspec +0 -44
  563. data/scarpegen.rb +0 -193
  564. data/sig/scarpe.rbs +0 -4
  565. data/templates/basic_class_template.erb +0 -38
  566. data/templates/class_template_with_event_bind.erb +0 -27
  567. data/templates/class_template_with_shapes.erb +0 -43
  568. data/templates/example_template.erb +0 -3
  569. data/templates/module_template.erb +0 -12
  570. data/templates/webview_template.erb +0 -27
@@ -1,13 +0,0 @@
1
- Shoes.app do
2
- stack do
3
- # background, text and a button: both are elements!
4
- @back = background blue
5
- @text = banner "This quick brown fox"
6
- @press = button "Jumps over the lazy dog"
7
-
8
- # And so, both can be styled.
9
- @text.style :size => 24, :stroke => red, :margin => 10
10
- @press.style :width => 400
11
- @back.style :height => 10
12
- end
13
- end
@@ -1,13 +0,0 @@
1
- Shoes.app do
2
- flow :margin => 12 do
3
- # Set up three buttons
4
- button "One"
5
- @two = button "Two"
6
- button "Three"
7
-
8
- # Bounce the second butotn
9
- animate do |i|
10
- @two.displace(0, (Math.sin(i) * 6).to_i)
11
- end
12
- end
13
- end
@@ -1,7 +0,0 @@
1
- Shoes.app do
2
- edit_box do |e|
3
- @counter.text = e.text.size
4
- end
5
- @counter = strong("0")
6
- para @counter, " characters"
7
- end
@@ -1,7 +0,0 @@
1
- Shoes.app do
2
- edit_line do |e|
3
- @counter.text = e.text.size
4
- end
5
- @counter = strong("0")
6
- para @counter, " characters"
7
- end
@@ -1,3 +0,0 @@
1
- Shoes.app do
2
- image "http://shoesrb.com/images/shoes-icon.png"
3
- end
@@ -1,13 +0,0 @@
1
- Shoes.app do
2
- para "Choose your class:"
3
- list_box :items => ["Wizard", "Warrior", "Rogue"],
4
- :width => 120, :choose => "Rogue" do |list|
5
- if list.text == "Wizard"
6
- @player.text = "I put on my robe and wizard hat."
7
- else
8
- @player.text = list.text
9
- end
10
- end
11
-
12
- @player = para "No class selected."
13
- end
@@ -1,6 +0,0 @@
1
- Shoes.app do
2
- stack :margin => 10 do
3
- para "Pick a card:"
4
- list_box :items => ["Jack", "Ace", "Joker"]
5
- end
6
- end
@@ -1,13 +0,0 @@
1
- Shoes.app do
2
- flow :margin => 12 do
3
- # Set up three buttons
4
- button "One"
5
- @two = button "Two"
6
- button "Three"
7
-
8
- # Bounce the second button
9
- animate do |i|
10
- @two.move(40, 40 + (Math.sin(i) * 6).to_i)
11
- end
12
- end
13
- end
@@ -1,7 +0,0 @@
1
- Shoes.app do
2
- # A button which takes up the whole page
3
- @b = button "WAT DO", :width => 1.0, :height => 1.0
4
-
5
- # When clicked, show the styles
6
- @b.click { alert(@b.style.inspect) }
7
- end
@@ -1,7 +0,0 @@
1
- Shoes.app :title => "The Owner" do
2
- button "Pop up?" do
3
- window do
4
- para "Okay, popped up from #{owner}"
5
- end
6
- end
7
- end
@@ -1,10 +0,0 @@
1
- Shoes.app do
2
- stack :margin => 0.1 do
3
- title "Progress example"
4
- @p = progress :width => 1.0
5
-
6
- animate do |i|
7
- @p.fraction = (i % 100) / 100.0
8
- end
9
- end
10
- end
@@ -1,17 +0,0 @@
1
- Shoes.app do
2
- stack do
3
- para "Among these dreamcast games, which do you prefer?"
4
- flow do
5
- radio :dreamcast
6
- para "Shenmue"
7
- end
8
- flow do
9
- radio :dreamcast
10
- para "Phantasy Star Online"
11
- end
12
- flow do
13
- radio :dreamcast
14
- para "Marvel Vs. Capcom II"
15
- end
16
- end
17
- end
@@ -1,6 +0,0 @@
1
- Shoes.app do
2
- timer(5) do
3
- alert("Your five seconds are up.")
4
- end
5
- end
6
-
@@ -1,8 +0,0 @@
1
- Shoes.app do
2
- stack :width => 120 do
3
- @b = button "Click me", :width => "100%" do
4
- alert "button.width = #{@b.width}\n" +
5
- "button.style[:width] = #{@b.style[:width]}"
6
- end
7
- end
8
- end
@@ -1,11 +0,0 @@
1
- Shoes.app do
2
- s = stack :width => 200, :height => 200 do
3
- background red
4
- hover do
5
- s.clear { background indigo }
6
- end
7
- leave do
8
- s.clear { background red }
9
- end
10
- end
11
- end
@@ -1,9 +0,0 @@
1
- Shoes.app :width => 200, :height => 200 do
2
- background black
3
- fill white
4
- @circ = oval 0, 0, 100, 100
5
-
6
- motion do |top, left|
7
- @circ.move top - 50, left -50
8
- end
9
- end
@@ -1,6 +0,0 @@
1
- Shoes.app do
2
- @info = para "NO KEY is PRESSED."
3
- keypress do |k|
4
- @info.replace "#{k.inspect} was PRESSED."
5
- end
6
- end
@@ -1,51 +0,0 @@
1
- require 'hpricot'
2
-
3
- class Comic
4
- attr_reader :rss, :title
5
-
6
- def initialize(body)
7
- @rss = Hpricot.XML(body)
8
- @title = @rss.at("//channel/title").inner_text
9
- end
10
-
11
- def items
12
- @rss.search("//channel/item")
13
- end
14
-
15
- def latest_image
16
- @rss.search("//channel/item").first.inner_html.scan(/src="([^"]+\.\w+)"/).first
17
- end
18
- end
19
-
20
- Shoes.app :width => 800, :height => 600 do
21
- background "#555"
22
-
23
- @title = "Web Funnies"
24
- @feeds = [
25
- "http://xkcd.com/rss.xml",
26
- "http://feedproxy.google.com/DilbertDailyStrip?format=xml",
27
- "http://www.smbc-comics.com/rss.php",
28
- "http://www.daybydaycartoon.com/index.xml",
29
- "http://www.questionablecontent.net/QCRSS.xml",
30
- "http://indexed.blogspot.com/feeds/posts/default?alt=rss"
31
- ]
32
-
33
- stack :margin => 10 do
34
- title strong(@title), :align => "center", :stroke => "#DFA", :margin => 0
35
- para "(loaded from RSS feeds)", :align => "center", :stroke => "#DFA",
36
- :margin => 0
37
-
38
- @feeds.each do |feed|
39
- download feed do |dl|
40
- stack :width => "100%", :margin => 10, :border => 1 do
41
- c = Comic.new dl.response.body
42
- stack :margin_right => gutter do
43
- background "#333", :curve => 4
44
- caption c.title, :stroke => "#CD9", :margin => 4
45
- end
46
- image c.latest_image.first, :margin => 8
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,112 +0,0 @@
1
- require 'irb/ruby-lex'
2
- require 'stringio'
3
-
4
- class MimickIRB < RubyLex
5
- attr_accessor :started
6
-
7
- class Continue < StandardError; end
8
- class Empty < StandardError; end
9
-
10
- def initialize
11
- super
12
- set_input(StringIO.new)
13
- end
14
-
15
- def run(str)
16
- obj = nil
17
- @io << str
18
- @io.rewind
19
- unless l = lex
20
- raise Empty if @line == ''
21
- else
22
- case l.strip
23
- when "reset"
24
- @line = ""
25
- when "time"
26
- @line = "puts %{You started \#{IRBalike.started.since} ago.}"
27
- else
28
- @line << l << "\n"
29
- if @ltype or @continue or @indent > 0
30
- raise Continue
31
- end
32
- end
33
- end
34
- unless @line.empty?
35
- obj = eval @line, TOPLEVEL_BINDING, "(irb)", @line_no
36
- end
37
- @line_no += @line.scan(/\n/).length
38
- @line = ''
39
- @exp_line_no = @line_no
40
-
41
- @indent = 0
42
- @indent_stack = []
43
-
44
- $stdout.rewind
45
- output = $stdout.read
46
- $stdout.truncate(0)
47
- $stdout.rewind
48
- [output, obj]
49
- rescue Object => e
50
- case e when Empty, Continue
51
- else @line = ""
52
- end
53
- raise e
54
- ensure
55
- set_input(StringIO.new)
56
- end
57
-
58
- end
59
-
60
- CURSOR = ">>"
61
- IRBalike = MimickIRB.new
62
- $stdout = StringIO.new
63
-
64
- Shoes.app do
65
- @str, @cmd = [CURSOR + " "], ""
66
- stack :width => 1.0, :height => 1.0 do
67
- background "#555"
68
- stack :width => 1.0, :height => 50 do
69
- para "Interactive Ruby ready.", :fill => white, :stroke => red
70
- end
71
- @scroll =
72
- stack :width => 1.0, :height => -50, :scroll => true do
73
- background "#555"
74
- @console = para @str, :font => "Monospace 12px", :stroke => "#dfa"
75
- @console.cursor = -1
76
- end
77
- end
78
- keypress do |k|
79
- case k
80
- when "\n"
81
- begin
82
- out, obj = IRBalike.run(@cmd + ';')
83
- @str += ["#@cmd\n",
84
- span("#{out}=> #{obj.inspect}\n", :stroke => "#fda"),
85
- "#{CURSOR} "]
86
- @cmd = ""
87
- rescue MimickIRB::Empty
88
- rescue MimickIRB::Continue
89
- @str += ["#@cmd\n.. "]
90
- @cmd = ""
91
- rescue Object => e
92
- @str += ["#@cmd\n", span("#{e.class}: #{e.message}\n", :stroke => "#fcf"),
93
- "#{CURSOR} "]
94
- @cmd = ""
95
- end
96
- when String
97
- @cmd += k
98
- when :backspace
99
- @cmd.slice!(-1)
100
- when :tab
101
- @cmd += " "
102
- when :alt_q
103
- quit
104
- when :alt_c
105
- self.clipboard = @cmd
106
- when :alt_v
107
- @cmd += self.clipboard
108
- end
109
- @console.replace *(@str + [@cmd])
110
- @scroll.scroll_top = @scroll.scroll_max
111
- end
112
- end
@@ -1,319 +0,0 @@
1
- # Othello
2
- # by tieg
3
- # 1/13/08
4
- # with help: DeeJay, Ryan M. from mailing list
5
- #
6
- # FIXME bug if it memorizes it but it's not a valid move
7
- #
8
- module Othello
9
-
10
- PIECE_WIDTH = 62
11
- PIECE_HEIGHT = 62
12
- TOP_OFFSET = 47
13
- LEFT_OFFSET = 12
14
-
15
- class Game
16
- BOARD_SIZE = [8,8]
17
-
18
- attr_accessor :p1, :p2, :board, :board_history
19
-
20
- def initialize
21
- @board_history = []
22
- @p1 = Player.new(:black, pieces_per_player)
23
- @p2 = Player.new(:white, pieces_per_player)
24
- @board = new_board
25
- lay_initial_pieces
26
- end
27
-
28
- def next_turn(check_available_moves=true)
29
- @current_player = next_player
30
- if check_available_moves && skip_turn?
31
- # FIXME Possible infinite loop if neither player has a good move?
32
- next_turn
33
- raise "Player #{@current_player.piece} (#{@current_player.color}) has no available moves. Player #{next_player.piece}'s (#{next_player.color}) turn."
34
- end
35
- end
36
-
37
- def current_player
38
- @current_player ||= @p1
39
- end
40
-
41
- def next_player
42
- current_player == @p1 ? @p2 : @p1
43
- end
44
-
45
- # Build the array for the board, with zero-based arrays.
46
- def new_board
47
- Array.new(BOARD_SIZE[0]) do # build each cols L to R
48
- Array.new(BOARD_SIZE[1]) do # insert cells in each col
49
- 0
50
- end
51
- end
52
- end
53
-
54
- # Lay the initial 4 pieces in the middle
55
- def lay_initial_pieces
56
- lay_piece([4, 3], false)
57
- next_turn(false)
58
- lay_piece([3, 3], false)
59
- next_turn(false)
60
- lay_piece([3, 4], false)
61
- next_turn(false)
62
- lay_piece([4, 4], false)
63
- next_turn(false)
64
- end
65
-
66
- def lay_piece(c=[0,0], check_adjacent_pieces=true)
67
- memorize_board
68
- piece = current_player.piece
69
- opp_piece = current_player.opp_piece
70
- raise "Spot already taken." if board_at(c) != 0
71
- if check_adjacent_pieces
72
- pieces_to_change = []
73
- pieces_to_change << check_direction(c, [ 0, 1], piece, opp_piece) # N
74
- pieces_to_change << check_direction(c, [ 1, 1], piece, opp_piece) # NE
75
- pieces_to_change << check_direction(c, [ 1, 0], piece, opp_piece) # E
76
- pieces_to_change << check_direction(c, [ 1,-1], piece, opp_piece) # SE
77
- pieces_to_change << check_direction(c, [ 0,-1], piece, opp_piece) # S
78
- pieces_to_change << check_direction(c, [-1,-1], piece, opp_piece) # SW
79
- pieces_to_change << check_direction(c, [-1, 0], piece, opp_piece) # W
80
- pieces_to_change << check_direction(c, [-1, 1], piece, opp_piece) # NW
81
- raise "You must move to a spot that will turn your opponent's piece." if pieces_to_change.compact.all? { |a| a.empty? }
82
- pieces_to_change.compact.each { |direction| direction.each { |i| @board[i[0]][i[1]] = piece } }
83
- end
84
- current_player.pieces -= 1
85
- @board[c[0]][c[1]] = piece
86
- current_winner = calculate_current_winner
87
- raise "Game over. Player #{current_winner.piece} wins with #{current_winner.pieces_on_board} pieces!" if @p1.pieces + @p2.pieces == 0
88
- end
89
-
90
- def skip_turn?
91
- possibles = []
92
- @board.each_with_index { |col,col_index|
93
- col.each_with_index { |cell,row_index|
94
- return false if possible_move?([col_index,row_index])
95
- }
96
- }
97
- true
98
- end
99
-
100
- def possible_move?(c=[0,0])
101
- return nil if board_at(c) != 0
102
- possible_moves = []
103
- piece = current_player.piece
104
- opp_piece = current_player.opp_piece
105
- pieces_to_change = []
106
- pieces_to_change << check_direction(c, [ 0, 1], piece, opp_piece) # N
107
- pieces_to_change << check_direction(c, [ 1, 1], piece, opp_piece) # NE
108
- pieces_to_change << check_direction(c, [ 1, 0], piece, opp_piece) # E
109
- pieces_to_change << check_direction(c, [ 1,-1], piece, opp_piece) # SE
110
- pieces_to_change << check_direction(c, [ 0,-1], piece, opp_piece) # S
111
- pieces_to_change << check_direction(c, [-1,-1], piece, opp_piece) # SW
112
- pieces_to_change << check_direction(c, [-1, 0], piece, opp_piece) # W
113
- pieces_to_change << check_direction(c, [-1, 1], piece, opp_piece) # NW
114
- return nil if pieces_to_change.compact.all? { |a| a.empty? }
115
- true
116
- end
117
-
118
- def memorize_board
119
- dup_board = new_board
120
- dup_board = []
121
- @board.each do |col|
122
- dup_board << col.dup
123
- end
124
- @board_history << { :player => current_player, :board => dup_board }
125
- end
126
-
127
- def undo!
128
- last_move = @board_history.pop
129
- @board = last_move[:board]
130
- @current_player = last_move[:player]
131
- @current_player.pieces += 1
132
- end
133
-
134
- def calculate_current_winner
135
- @p1.pieces_on_board, @p2.pieces_on_board = 0, 0
136
- @board.each { |row|
137
- row.each { |cell|
138
- if cell == 1
139
- @p1.pieces_on_board += 1
140
- else
141
- @p2.pieces_on_board += 1
142
- end
143
- }
144
- }
145
- @p1.pieces_on_board > @p2.pieces_on_board ? @p1 : @p2
146
- end
147
-
148
- def check_direction(c, dir, piece, opp_piece)
149
- c_adjacent = next_in_direction(c.dup, dir)
150
- c_last = nil
151
- pieces_in_between = []
152
- # Find the last piece if there is one.
153
- while(valid_location?(c_adjacent))
154
- if board_at(c_adjacent) == opp_piece
155
- pieces_in_between << c_adjacent.dup
156
- elsif board_at(c_adjacent) == piece && pieces_in_between.size > 0
157
- c_last = c_adjacent
158
- break
159
- else
160
- break
161
- end
162
- c_adjacent = next_in_direction(c_adjacent, dir)
163
- end
164
-
165
- pieces_in_between.empty? || c_last.nil? ? nil : pieces_in_between
166
- end
167
-
168
- # Find the value of the board at the given coordinate.
169
- def board_at(c)
170
- @board[c[0]][c[1]]
171
- end
172
-
173
- # Is this a valid location on board?
174
- def valid_location?(c=[1,1])
175
- c[0] >= 0 && c[1] >= 0 && c[0] < BOARD_SIZE[0] && c[1] < BOARD_SIZE[1]
176
- end
177
-
178
- # Perform the operations to get the next spot in the appropriate direction
179
- def next_in_direction(c, dir)
180
- c[0] += dir[0]
181
- c[1] += dir[1]
182
- c
183
- end
184
-
185
- private
186
- def pieces_per_player
187
- total_squares / 2
188
- end
189
-
190
- # The total number of squares
191
- def total_squares
192
- BOARD_SIZE[0] * BOARD_SIZE[1]
193
- end
194
-
195
- class Player
196
- attr_accessor :pieces, :color, :pieces_on_board
197
-
198
- def initialize(color=:black,pieces=0)
199
- @pieces = pieces
200
- @pieces_on_board = 0 # used only in calculating winner
201
- @color = color
202
- end
203
-
204
- def piece
205
- color == :black ? 1 : 2
206
- end
207
-
208
- def opp_piece
209
- color == :black ? 2 : 1
210
- end
211
- end
212
- end
213
-
214
- def draw_player_1(first_turn=false)
215
- stack :margin => 10 do
216
- if GAME.current_player==GAME.p1
217
- background yellow
218
- para span("Player 1 (#{GAME.current_player.color}) turn", :stroke => black, :font => "Trebuchet 20px bold"), :margin => 4
219
- else
220
- background white
221
- para span("Player 1", :stroke => black, :font => "Trebuchet 10px bold"), :margin => 4
222
-
223
- button("Undo last move", :top => 0, :left => -150) { GAME.undo!; draw_board } unless GAME.board_history.empty?
224
- end
225
- end
226
- end
227
-
228
- def draw_player_2(first_turn=false)
229
- stack :top => 550, :left => 0, :margin => 10 do
230
- if GAME.current_player==GAME.p2
231
- background yellow
232
- para span("Player 2's (#{GAME.current_player.color}) turn", :stroke => black, :font => "Trebuchet 20px bold"), :margin => 4
233
- else
234
- background white
235
- para span("Player 2", :stroke => black, :font => "Trebuchet 10px bold"), :margin => 4
236
-
237
- button("Undo last move", :top => 0, :left => -150) { GAME.undo!; draw_board } unless GAME.board_history.empty?
238
- end
239
- end
240
- end
241
-
242
-
243
- def draw_board
244
- clear do
245
- background black
246
- draw_player_1
247
- stack :margin => 10 do
248
- fill rgb(0, 190, 0)
249
- rect :left => 0, :top => 0, :width => 495, :height => 495
250
-
251
- GAME.board.each_with_index do |col, col_index|
252
- col.each_with_index do |cell, row_index|
253
- left, top = left_top_corner_of_piece(col_index, row_index)
254
- left = left - LEFT_OFFSET
255
- top = top - TOP_OFFSET
256
- fill rgb(0, 440, 0, 90)
257
- strokewidth 1
258
- stroke rgb(0, 100, 0)
259
- rect :left => left, :top => top, :width => PIECE_WIDTH, :height => PIECE_HEIGHT
260
-
261
- if cell != 0
262
- strokewidth 0
263
- fill (cell == 1 ? rgb(100,100,100) : rgb(155,155,155))
264
- oval(left+3, top+4, PIECE_WIDTH-10, PIECE_HEIGHT-10)
265
-
266
- fill (cell == 1 ? black : white)
267
- oval(left+5, top+5, PIECE_WIDTH-10, PIECE_HEIGHT-10)
268
- end
269
- end
270
- end
271
- end
272
- draw_player_2
273
- end
274
- end
275
-
276
- def left_top_corner_of_piece(a,b)
277
- [(a*PIECE_WIDTH+LEFT_OFFSET), (b*PIECE_HEIGHT+TOP_OFFSET)]
278
- end
279
-
280
- def right_bottom_corner_of_piece(a,b)
281
- left_top_corner_of_piece(a,b).map { |coord| coord + PIECE_WIDTH }
282
- end
283
-
284
- def find_piece(x,y)
285
- GAME.board.each_with_index { |row_array, row|
286
- row_array.each_with_index { |col_array, col|
287
- left, top = left_top_corner_of_piece(col, row).map { |i| i - 5}
288
- right, bottom = right_bottom_corner_of_piece(col, row).map { |i| i -5 }
289
- return [col, row] if x >= left && x <= right && y >= top && y <= bottom
290
- }
291
- }
292
- return false
293
- end
294
-
295
- GAME = Othello::Game.new
296
- end
297
-
298
-
299
- Shoes.app :width => 520, :height => 600 do
300
- extend Othello
301
-
302
- draw_board
303
-
304
- click { |button, x, y|
305
- if coords = find_piece(x,y)
306
- begin
307
- GAME.lay_piece(coords)
308
- GAME.next_turn
309
- draw_board
310
- rescue => e
311
- draw_board
312
- alert(e.message)
313
- end
314
- else
315
- # alert("Not a piece.")
316
- end
317
- }
318
- end
319
-