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,27 +0,0 @@
1
- Shoes.app do
2
- stack margin: 50 do
3
- button "with 50px margin"
4
- end
5
-
6
- stack width: 0.5 do
7
- button "50% width"
8
- end
9
-
10
- stack width: 80, height: 100 do
11
- para "This para is in a stack that's 80px wide and 100px high"
12
- end
13
-
14
- stack width: -80 do
15
- button "100% - 80px width"
16
- end
17
-
18
- flow do
19
- stack width: 0.33 do
20
- button "inside flow left 1/3"
21
- end
22
-
23
- stack width: 0.67 do
24
- button "inside flow right 2/3"
25
- end
26
- end
27
- end
@@ -1,4 +0,0 @@
1
- Shoes.app do
2
- p = para "Hello"
3
- p.replace "Goodbye"
4
- end
@@ -1,10 +0,0 @@
1
- Shoes.app(title: "Text Sizes") do
2
- banner "Banner"
3
- title "Title"
4
- subtitle "Subtitle"
5
- tagline "Tagline"
6
- caption "Caption"
7
- para "Para"
8
- inscription "Inscription"
9
- ins "Inscription via ins"
10
- end
data/examples/timmy.rb DELETED
@@ -1,109 +0,0 @@
1
- # Timmy 1
2
-
3
- # Shoes.app do
4
- # para "You've downloaded a virus!"
5
- # end
6
-
7
- # Timmy 2
8
-
9
- # Shoes.app title: "Cookies Recipe", height: 1000, width: 1000 do
10
- # banner "You've downloaded a virus!", :align => "center"
11
- # end
12
-
13
- # Timmy 3
14
-
15
- # Shoes.app title: "Cookies Recipe", height: 1000, width: 1000 do
16
- # background "black"
17
- # @header = banner "You've downloaded a virus!", align: "center", stroke: red
18
-
19
- # flow height: "30%" do
20
- # stack width: "100%" do
21
- # background "white"
22
- # title "You thought this was a recipe for cookies, but it was me, your arch nemesis!\n\n", align: "center"
23
- # para "I have taken over your computer and will not give it back until you pay me $1,000,000.",
24
- # align: "center",
25
- # size: 30
26
- # end
27
- # end
28
- # flow height: "20%" do
29
- # stack width: "100%" do
30
- # background "white"
31
- # para "Pay me now or I will delete all your files!\n",
32
- # "Courtesy, your friends in the Mafia",
33
- # align: "center", size: 30
34
- # banner "💰", align: "center"
35
- # end
36
- # end
37
- # flow height: "45%" do
38
- # border "black", strokewidth: 10
39
- # background "black"
40
- # stack width: "33.33%" do
41
- # background "green"
42
- # end
43
- # stack width: "33.33%" do
44
- # background "white"
45
- # end
46
- # stack width: "33.33%" do
47
- # background "red"
48
- # end
49
- # end
50
- # end
51
-
52
-
53
- # Timmy 4 (more interactive)
54
- # Timmy hasn't quite learned about variables yet, so he's using global variables.
55
-
56
- Shoes.app title: "Cookies Recipe", height: 1000, width: 1000 do
57
- $main_background = background "black"
58
- $header = banner "You've downloaded a virus!", align: "center", stroke: red
59
-
60
- flow height: "30%" do
61
- stack width: "100%" do
62
- background "white"
63
- $header_one = title "You thought this was a recipe for cookies, but it was me, your arch nemesis!\n\n", align: "center"
64
- $header_two = para "I have taken over your computer and will not give it back until you pay me $1,000,000.",
65
- align: "center",
66
- size: 30
67
- end
68
- end
69
- flow height: "30%" do
70
- stack width: "33.33%" do
71
- background "blue"
72
- star 230, 100, 6, 150, 50
73
- end
74
- stack width: "33.33%" do
75
- background "white"
76
- $body_one = para "Pay me now or I will delete all your files!\n",
77
- "Courtesy, the Pirates of the Highlands 🏴‍☠️",
78
- align: "center", size: 30
79
- $body_two = banner "💰", align: "center"
80
- end
81
- stack width: "33.33%" do
82
- background "blue"
83
- star 230, 100, 6, 150, 50
84
- end
85
- end
86
- flow height: "30%" do
87
- stack width: "33.33%" do
88
- $pirate_image = image "https://i.imgur.com/mIaqQaF.png"
89
- end
90
- stack width: "33.33%" do
91
- @push = button "Pay up 💸", width: 335, height: 300, size: 80 do
92
- $header.replace "Just kidding Grandma! I love you! ❤️❤️❤️"
93
- $header.stroke = white
94
- $body_one.replace "I'm sorry for scaring you. I hope you have a great day!"
95
- $body_two.replace "🍪"
96
- $header_one.replace "❤️"
97
- $header_two.replace ""
98
- $pirate_image.replace "https://media.tenor.com/ZVJxuXJOczIAAAAd/kazoo-kid.gif"
99
- $pirate_image_two.replace "https://media.tenor.com/ZVJxuXJOczIAAAAd/kazoo-kid.gif"
100
- @push.text = "🍪"
101
- end
102
- end
103
- stack width: "33.33%" do
104
- $pirate_image_two = image "https://i.imgur.com/mIaqQaF.png"
105
- end
106
- end
107
- end
108
-
109
-
@@ -1,3 +0,0 @@
1
- Shoes.app(title: "Schwad's app!", width: 1000, height: 800) do
2
- para "Boy howdy! Now we're talking!"
3
- end
data/examples/video.rb DELETED
@@ -1,10 +0,0 @@
1
- Shoes.app do
2
- stack do
3
- para "Video"
4
- video "http://techslides.com/demos/sample-videos/small.mp4"
5
- end
6
- stack do
7
- para "Video 2"
8
- video "https://samplelib.com/lib/preview/mp4/sample-5s.mp4"
9
- end
10
- end
data/exe/scarpe DELETED
@@ -1,107 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- # We need to not use syntactic features of very recent Rubies in this file, so that it parses
4
- # correctly in earlier Rubies and can successfully give the version-check error.
5
- if RUBY_VERSION[0..2] < "3.2"
6
- $stderr.puts("Scarpe requires Ruby 3.2 or higher!")
7
- exit(-1)
8
- end
9
-
10
- def print_usage
11
- puts <<USAGE
12
- Usage: scarpe [OPTIONS] <scarpe app file> # Same as "scarpe run"
13
- scarpe [OPTIONS] run <scarpe app file>
14
- scarpe [OPTIONS] env # print Scarpe environment settings
15
- scarpe -v # print the Scarpe gem version and exit
16
- Options:
17
- --dev Use development local scarpe, not an installed gem
18
- --debug Turn on application debug mode
19
- USAGE
20
- end
21
-
22
- def env_or_default(env_var, default_val)
23
- "#{env_var}: #{ENV[env_var] || default_val}"
24
- end
25
-
26
- def env_or_none(env_var)
27
- env_or_default(env_var, "(none)")
28
- end
29
-
30
- def print_env
31
- puts <<~SCARPE_ENV
32
- Scarpe environment:
33
- #{env_or_default("SCARPE_DISPLAY_SERVICE", "(default)wv_local")}
34
- #{env_or_default("SCARPE_LOG_CONFIG", "(default)#{Scarpe::Log::DEFAULT_LOG_CONFIG.inspect}")}
35
- #{env_or_none("SCARPE_APP_TEST")}
36
- Scarpe::WV environment:
37
- #{env_or_none("SCARPE_TEST_CONTROL")}
38
- #{env_or_none("SCARPE_TEST_RESULTS")}
39
- #{env_or_none("SCARPE_DEBUG")}
40
- Ruby and shell environment:
41
- RUBY_DESCRIPTION: #{RUBY_DESCRIPTION.inspect}
42
- RUBY_PLATFORM: #{RUBY_PLATFORM.inspect}
43
- RUBY_ENGINE: #{RUBY_ENGINE.inspect}
44
- #{env_or_none("SHELL")}
45
- #{env_or_none("PATH")}
46
- #{env_or_none("LD_LIBRARY_PATH")}
47
- #{env_or_none("DYLD_LIBRARY_PATH")}
48
- #{env_or_none("GEM_ROOT")}
49
- #{env_or_none("GEM_HOME")}
50
- #{env_or_none("GEM_PATH")}
51
- SCARPE_ENV
52
- end
53
-
54
- # --dev option applies to all actions
55
- use_dev = ARGV.delete("--dev") ? true : false
56
- use_debug = ARGV.delete("--debug") ? true : false
57
-
58
- verb = "run"
59
- verb_target = nil
60
-
61
- case ARGV[0]
62
- when "-v"
63
- # This will be fine, pass it through.
64
- verb = "-v"
65
- when "env"
66
- if ARGV.length != 1
67
- print_usage
68
- exit -1
69
- end
70
-
71
- verb = "env"
72
- when "run"
73
- if ARGV.length != 2
74
- print_usage
75
- exit -1
76
- end
77
- verb_target = ARGV[1]
78
- else
79
- # Default to run
80
- if ARGV.length != 1
81
- print_usage
82
- exit -1
83
- end
84
- verb_target = ARGV[0]
85
- end
86
-
87
- if use_debug
88
- ENV['SCARPE_DEBUG'] = 'true'
89
- end
90
- if use_dev
91
- dev_path = File.expand_path("../lib", __dir__)
92
- $LOAD_PATH.prepend dev_path
93
- end
94
- # We mustn't require Scarpe sooner than this so that the --dev setting is respected
95
- require "scarpe"
96
-
97
- case verb
98
- when "-v"
99
- puts "Scarpe #{Scarpe::VERSION}"
100
- when "run"
101
- # Run the Scarpe app file
102
- load ARGV[0]
103
- when "env"
104
- print_env
105
- else
106
- raise "Internal error! Unknown ./exe/scarpe verb!"
107
- end
data/fonts/Pacifico.ttf DELETED
Binary file
data/lib/scarpe/base64.rb DELETED
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "base64"
4
- require "uri"
5
-
6
- class Scarpe
7
- module Base64
8
- def valid_url?(string)
9
- uri = URI.parse(string)
10
- uri.is_a?(URI::HTTP) || uri.is_a?(URI::HTTPS)
11
- rescue URI::InvalidURIError, URI::BadURIError
12
- false
13
- end
14
-
15
- def encode_file_to_base64(image_filename)
16
- directory_path = File.dirname(__FILE__, 3)
17
-
18
- image_path = File.join(directory_path, image_filename)
19
-
20
- image_data = File.binread(image_path)
21
-
22
- encoded_data = ::Base64.strict_encode64(image_data)
23
-
24
- encoded_data
25
- end
26
- end
27
- end
@@ -1,255 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "scarpe/unit_test_helpers"
4
-
5
- require "fiber"
6
-
7
- # "Cat's Cradle" is a children's game where they interlace string between
8
- # their fingers to make beautiful complicated shapes. The interlacing
9
- # of fibers made it a good name for a prototype.
10
-
11
- # An attempt at an experimental Fiber-based testing system to deal with
12
- # Shoes, Display and JS all at the same time.
13
- #
14
- # In general, we'll use Fiber.transfer to bounce control back and forth
15
- # between the evented implementations (e.g. waiting for redraw) that
16
- # need to return control to Webview, and the procedural test flows
17
- # that look far better if we don't do that explicitly.
18
- #
19
- # Ruby Fiber basic docs: https://ruby-doc.org/core-3.0.0/Fiber.html
20
- #
21
- module Scarpe::Test
22
- # We'd like something we can call Shoes widget methods on, such as para.replace.
23
- # But we'd also like to be able to grab the corresponding display widget and
24
- # call some of *those* methods.
25
- class CCProxy
26
- attr_reader :display
27
-
28
- def initialize(obj)
29
- @obj = obj
30
- # TODO: how to do this with Webview relay? Proxy object to send a message, maybe?
31
- @display = ::Shoes::DisplayService.display_service.query_display_widget_for(obj.linkable_id)
32
- end
33
-
34
- def method_missing(method, ...)
35
- if @obj.respond_to?(method)
36
- self.singleton_class.define_method(method) do |*args, **kwargs, &block|
37
- @obj.send(method, *args, **kwargs, &block)
38
- end
39
- send(method, ...)
40
- else
41
- super # raise an exception
42
- end
43
- end
44
-
45
- def respond_to_missing?(method_name, include_private = false)
46
- @obj.respond_to_missing?(method_name, include_private)
47
- end
48
- end
49
-
50
- # This class defines the CatsCradle DSL. It also holds a "bag of fibers"
51
- # with promises for when they should next resume.
52
- class CCInstance
53
- include Scarpe::Log
54
- include Scarpe::Test::Helpers
55
-
56
- def self.instance
57
- @instance ||= CCInstance.new
58
- end
59
-
60
- def initialize
61
- log_init("CatsCradle")
62
-
63
- @assertion_data = []
64
- @assertions_passed = 0
65
- @assertions_failed = []
66
-
67
- @waiting_fibers = []
68
- @event_promises = {}
69
-
70
- @manager_fiber = Fiber.new do
71
- loop do
72
- # A fiber can run briefly and then exit. It can run and then block on an API call.
73
- # These fibers return promises to indicate to CatsCradle when they can run again.
74
- # A fiber that is no longer #alive? is assumed to be successfully finished.
75
- @waiting_fibers.each do |fiber_data|
76
- next unless fiber_data[:promise].fulfilled?
77
-
78
- @log.debug("Resuming fiber with value #{fiber_data[:promise].returned_value.inspect}")
79
- result = fiber_data[:fiber].transfer fiber_data[:promise].returned_value
80
-
81
- # Dead fibers will be removed later, just leave it
82
- next unless fiber_data[:fiber].alive?
83
-
84
- case result
85
- when ::Scarpe::Promise
86
- fiber_data[:promise] = result
87
- else
88
- raise "Unexpected object returned from Fiber#transfer for still-living Fiber! #{result.inspect}"
89
- end
90
- end
91
-
92
- # Throw out dead fibers or those that will never wake
93
- @waiting_fibers.select! do |fiber_data|
94
- fiber_data[:fiber].alive? && !fiber_data[:promise].rejected?
95
- end
96
-
97
- # Done with this iteration
98
- Fiber.yield
99
- end
100
- end
101
- end
102
-
103
- # If we add "every" events, that's likely to complicate timing and event_promise handling.
104
- EVENT_TYPES = [:next_heartbeat, :next_redraw]
105
-
106
- # This needs to be called after the basic display service objects exist
107
- # and we can find the control interface.
108
- def event_init
109
- return if @cc_init_done
110
-
111
- @cc_init_done = true
112
-
113
- @control_interface = ::Shoes::DisplayService.display_service.control_interface
114
- @wrangler = @control_interface.wrangler
115
-
116
- cc_instance = self # ControlInterface#on_event does an instance eval. We'll reset self with another.
117
-
118
- @control_interface.on_event(:every_heartbeat) do
119
- cc_instance.instance_eval do
120
- p = @event_promises.delete(:next_heartbeat)
121
- p&.fulfilled!
122
-
123
- # Give every ready fiber a chance to run once.
124
- @manager_fiber.resume
125
- end
126
- end
127
-
128
- @control_interface.on_event(:every_redraw) do
129
- cc_instance.instance_eval do
130
- p = @event_promises.delete(:next_redraw)
131
- p&.fulfilled!
132
-
133
- # Give every ready fiber a chance to run once.
134
- @manager_fiber.resume
135
- end
136
- end
137
- end
138
-
139
- def event_promise(event)
140
- @event_promises[event] ||= ::Scarpe::Promise.new
141
- end
142
-
143
- def on_event(event, &block)
144
- raise "Unknown event type: #{event.inspect}!" unless EVENT_TYPES.include?(event)
145
-
146
- f = Fiber.new do
147
- CCInstance.instance.instance_eval(&block)
148
- end
149
- @waiting_fibers << { promise: event_promise(event), fiber: f }
150
- end
151
-
152
- WIDGET_FINDERS = {
153
- "alert" => ::Scarpe::Alert,
154
- "button" => ::Scarpe::Button,
155
- "edit_box" => ::Scarpe::EditBox,
156
- "edit_line" => ::Scarpe::EditLine,
157
- "flow" => ::Scarpe::Flow,
158
- "image" => ::Scarpe::Image,
159
- "list_box" => ::Scarpe::ListBox,
160
- "para" => ::Scarpe::Para,
161
- "shape" => ::Scarpe::Shape,
162
- "stack" => ::Scarpe::Stack,
163
- "star" => ::Scarpe::Star,
164
- }
165
- # What to do about TextWidgets? Link, code, em, strong?
166
- # Also, wait, what's up with span? What *is* that?
167
- Shoes::Widget.widget_classes.each do |widget_class|
168
- finder_name = widget_class.dsl_name
169
-
170
- define_method(finder_name) do |*args|
171
- app = Shoes::App.instance
172
-
173
- widgets = app.find_widgets_by(widget_class, *args)
174
- raise "Found more than one #{finder_name} matching #{args.inspect}!" if widgets.size > 1
175
- raise "Found no #{finder_name} matching #{args.inspect}!" if widgets.empty?
176
-
177
- CCProxy.new(widgets[0])
178
- end
179
- end
180
-
181
- def wait(promise)
182
- raise("Must supply a promise to wait!") unless promise.is_a?(::Scarpe::Promise)
183
-
184
- # Wait until this promise is complete before running again
185
- @manager_fiber.transfer(promise)
186
- end
187
-
188
- # This returns a promise, which can be waited on using wait()
189
- def fully_updated
190
- @wrangler.promise_dom_fully_updated
191
- end
192
-
193
- def dom_html(timeout: 1.0)
194
- query_js_value("document.getElementById('wrapper-wvroot').innerHTML", timeout:)
195
- end
196
-
197
- def query_js_value(js_code, timeout: 1.0)
198
- js_promise = @wrangler.eval_js_async(js_code, timeout:)
199
-
200
- # This promise will return the string, so we can just pass it to #transfer
201
- @manager_fiber.transfer(js_promise)
202
- end
203
-
204
- def assert(value, msg = nil)
205
- msg ||= "Assertion #{value ? "succeeded" : "failed"}"
206
- @assertion_data << [value ? true : false, msg]
207
- if value
208
- @assertions_passed += 1
209
- else
210
- @assertions_failed << msg
211
- end
212
- end
213
-
214
- def assert_equal(expected, actual, msg = nil)
215
- msg ||= "Expected #{actual.inspect} to equal #{expected.inspect}!"
216
- assert actual == expected, msg
217
- end
218
-
219
- def assertion_data_as_a_struct
220
- {
221
- still_pending: 0,
222
- succeeded: @assertions_passed,
223
- failed: @assertions_failed.size,
224
- failures: @assertions_failed,
225
- }
226
- end
227
-
228
- def test_metadata
229
- {}
230
- end
231
-
232
- def test_finished
233
- if !@assertions_failed.empty?
234
- return_results(false, "Assertions failed", assertion_data_as_a_struct)
235
- elsif @assertions_passed > 0
236
- return_results(true, "All assertions passed", assertion_data_as_a_struct)
237
- else
238
- return_results(true, "Test finished successfully")
239
- end
240
- ::Shoes::DisplayService.dispatch_event("destroy", nil)
241
- end
242
- end
243
-
244
- # This module is mixed into Shoes::App if we're running CC-based tests
245
- module CatsCradle
246
- def event_init
247
- @cc_instance = CCInstance.instance
248
- @cc_instance.event_init
249
- end
250
-
251
- def on_heartbeat(&block)
252
- @cc_instance.on_event(:next_heartbeat, &block)
253
- end
254
- end
255
- end
data/lib/scarpe/fill.rb DELETED
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Scarpe
4
- class Fill < Shoes::Widget
5
- display_properties :color
6
-
7
- def initialize(color)
8
- @color = color
9
- super
10
- create_display_widget
11
- end
12
-
13
- def element
14
- HTML.render do |h|
15
- h.style(<<~CSS)
16
- ##{html_id} {
17
- background-color: #{@color};
18
- }
19
- CSS
20
- end
21
- end
22
- end
23
- end
@@ -1,34 +0,0 @@
1
- ## IN DEVELOPMENT
2
-
3
- Glimmer LibUI is a fully functioning way to build desktop applications in Ruby.
4
-
5
- One possible way to make this work would be a parser-compiler setup to essentially _transform_ shoes app text into GlimmerLibUI text. Which should be abstract enough that we wouldn't have to go more bare metal and use the ruby dependency LibUI.
6
-
7
- Hello world example:
8
-
9
- ```ruby
10
- # parser/compiler example:
11
-
12
- Shoes.app do
13
- para "Hello World"
14
- end
15
-
16
- # becomes
17
-
18
- include Glimmer
19
-
20
- window {
21
- area {
22
- text {
23
- string "Hello World"
24
- }
25
- }
26
- }.show
27
- ```
28
-
29
- # GLibUI Finished Examples
30
-
31
- * /examples/hello_world.rb
32
- * /examples/title_and_resize.rb
33
- * /examples/stack/raw_stack.rb
34
- * /examples/raw_flow.rb
@@ -1,65 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Scarpe
4
- class GlimmerLibUIAlert < GlimmerLibUIWidget
5
- def initialize(properties)
6
- super
7
-
8
- bind("click") do
9
- send_self_event(event_name: "click")
10
- end
11
- end
12
-
13
- def element
14
- onclick = handler_js_code("click")
15
-
16
- HTML.render do |h|
17
- h.div(id: html_id, style: overlay_style) do
18
- h.div(style: modal_style) do
19
- h.div(style: text_style) { @text }
20
- h.button(style: button_style, onclick: onclick) { "OK" }
21
- end
22
- end
23
- end
24
- end
25
-
26
- private
27
-
28
- def overlay_style
29
- {
30
- position: "fixed",
31
- top: "0",
32
- left: "0",
33
- width: "100%",
34
- height: "100%",
35
- overflow: "auto",
36
- "z-index": "1",
37
- background: "rgba(0,0,0,0.4)",
38
- display: "flex",
39
- "align-items": "center",
40
- "justify-content": "center",
41
- }
42
- end
43
-
44
- def modal_style
45
- {
46
- "min-width": "200px",
47
- "min-height": "50px",
48
- padding: "10px",
49
- display: "flex",
50
- background: "#fefefe",
51
- "flex-direction": "column",
52
- "justify-content": "space-between",
53
- "border-radius": "9px",
54
- }
55
- end
56
-
57
- def text_style
58
- {}
59
- end
60
-
61
- def button_style
62
- {}
63
- end
64
- end
65
- end