atome 0.4.7.0 → 0.5.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (258) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/README.md +7 -4
  4. data/Rakefile +22 -13
  5. data/app_builder_helpers/Rakefile +63 -21
  6. data/exe/atome +91 -45
  7. data/lib/atome/atome_meta_engine.rb +132 -0
  8. data/lib/atome/extensions/atome.rb +41 -0
  9. data/lib/atome/{kernel/helpers → extensions}/geolocation.rb +0 -0
  10. data/lib/atome/{kernel/helpers → extensions}/ping.rb +0 -0
  11. data/lib/atome/{kernel/helpers → extensions}/sha.rb +3 -1
  12. data/lib/atome/genesis/generators/atome.rb +13 -0
  13. data/lib/atome/{renderers/headless/properties/generator.rb → genesis/generators/communication.rb} +2 -0
  14. data/lib/atome/genesis/generators/effect.rb +6 -0
  15. data/lib/atome/genesis/generators/event.rb +5 -0
  16. data/lib/atome/genesis/generators/geometry.rb +6 -0
  17. data/lib/atome/genesis/generators/identity.rb +15 -0
  18. data/lib/atome/genesis/generators/material.rb +10 -0
  19. data/lib/atome/genesis/generators/spatial.rb +12 -0
  20. data/lib/atome/genesis/generators/utility.rb +14 -0
  21. data/lib/atome/genesis/genesis.rb +51 -0
  22. data/lib/atome/genesis/sparkle.rb +58 -0
  23. data/lib/atome/helpers/color_helper/color/cmyk.rb +263 -0
  24. data/lib/atome/helpers/color_helper/color/css.rb +7 -0
  25. data/lib/atome/helpers/color_helper/color/grayscale.rb +197 -0
  26. data/lib/atome/helpers/color_helper/color/hsl.rb +240 -0
  27. data/lib/atome/helpers/color_helper/color/palette/adobecolor.rb +260 -0
  28. data/lib/atome/helpers/color_helper/color/palette/gimp.rb +104 -0
  29. data/lib/atome/helpers/color_helper/color/palette/monocontrast.rb +164 -0
  30. data/lib/atome/helpers/color_helper/color/palette.rb +4 -0
  31. data/lib/atome/helpers/color_helper/color/rgb/colors.rb +167 -0
  32. data/lib/atome/helpers/color_helper/color/rgb/contrast.rb +57 -0
  33. data/lib/atome/helpers/color_helper/color/rgb/metallic.rb +28 -0
  34. data/lib/atome/helpers/color_helper/color/rgb.rb +715 -0
  35. data/lib/atome/helpers/color_helper/color/yiq.rb +62 -0
  36. data/lib/atome/helpers/color_helper/color.rb +196 -0
  37. data/lib/atome/helpers/essentials.rb +42 -0
  38. data/lib/atome/helpers/sanitizer.rb +42 -0
  39. data/lib/atome/helpers/utilities.rb +57 -0
  40. data/lib/atome/kernel/essentials.rb +30 -0
  41. data/lib/atome/kernel/universe.rb +75 -26
  42. data/lib/atome/presets/atome.rb +66 -0
  43. data/lib/atome/processors/utilities.rb +10 -0
  44. data/lib/atome/renderers/browser/atome.rb +95 -0
  45. data/lib/atome/renderers/browser/browser.rb +158 -0
  46. data/lib/atome/renderers/browser/effect.rb +23 -0
  47. data/lib/atome/renderers/browser/event.rb +9 -0
  48. data/lib/atome/renderers/browser/geometry.rb +11 -0
  49. data/lib/atome/renderers/browser/identity.rb +20 -0
  50. data/lib/atome/renderers/browser/material.rb +43 -0
  51. data/lib/atome/renderers/{opal → browser}/opal_browser.rb +0 -2
  52. data/lib/atome/renderers/browser/spatial.rb +22 -0
  53. data/lib/atome/renderers/browser/utility.rb +26 -0
  54. data/lib/atome/renderers/html/atome.rb +47 -0
  55. data/lib/atome/renderers/html/effect.rb +19 -0
  56. data/lib/atome/renderers/html/event.rb +9 -0
  57. data/lib/atome/renderers/html/geometry.rb +11 -0
  58. data/lib/atome/renderers/html/html.rb +42 -0
  59. data/lib/atome/renderers/html/identity.rb +14 -0
  60. data/lib/atome/renderers/html/opal_browser.rb +6 -0
  61. data/lib/atome/renderers/html/spatial.rb +28 -0
  62. data/lib/atome/renderers/html/utility.rb +15 -0
  63. data/lib/atome/renderers/opal/atome_opal_extensions.rb +1 -1
  64. data/lib/atome/renderers/opal/extensions/atome.rb +29 -0
  65. data/lib/atome/renderers/opal/opal.rb +4 -0
  66. data/lib/atome/version.rb +1 -2
  67. data/lib/atome.rb +22 -45
  68. data/vendor/assets/application/index.rb +3 -1
  69. data/vendor/assets/application/required_example.rb +1 -0
  70. data/{lib/atome/renderers/headless/headless.rb → vendor/assets/aui.rb} +0 -0
  71. data/vendor/assets/build/css/style.css +51 -0
  72. data/vendor/assets/build/index.html +10 -7
  73. data/vendor/assets/build/js/atome/atome.js +61 -61
  74. data/{lib/atome/renderers/server/server.rb → vendor/assets/build/medias/rubies/examples/_animation.rb} +0 -0
  75. data/vendor/assets/build/medias/rubies/examples/_code.rb +12 -0
  76. data/vendor/assets/build/medias/rubies/examples/_id.rb +14 -0
  77. data/vendor/assets/build/medias/rubies/examples/_link.rb +17 -0
  78. data/vendor/assets/build/medias/rubies/examples/{on.rb → _on.rb} +3 -1
  79. data/vendor/assets/build/medias/rubies/examples/{read.rb → _read.rb} +2 -0
  80. data/vendor/assets/build/medias/rubies/examples/_refresh.rb +9 -0
  81. data/vendor/assets/build/medias/rubies/examples/atome.new.rb +13 -10
  82. data/vendor/assets/build/medias/rubies/examples/auto_height.rb +2 -0
  83. data/vendor/assets/build/medias/rubies/examples/auto_width.rb +2 -0
  84. data/vendor/assets/build/medias/rubies/examples/blur.rb +4 -0
  85. data/vendor/assets/build/medias/rubies/examples/bottom.rb +3 -1
  86. data/vendor/assets/build/medias/rubies/examples/box.rb +15 -8
  87. data/vendor/assets/build/medias/rubies/examples/circle.rb +2 -0
  88. data/vendor/assets/build/medias/rubies/examples/clear.rb +2 -1
  89. data/vendor/assets/build/medias/rubies/examples/color.rb +47 -8
  90. data/vendor/assets/build/medias/rubies/examples/create_atome_in_atome.rb +2 -0
  91. data/vendor/assets/build/medias/rubies/examples/delete.rb +7 -0
  92. data/vendor/assets/build/medias/rubies/examples/drag.rb +1 -0
  93. data/vendor/assets/build/medias/rubies/examples/element.rb +6 -0
  94. data/vendor/assets/build/medias/rubies/examples/get_renderer_list.rb +3 -1
  95. data/vendor/assets/build/medias/rubies/examples/grab.rb +2 -0
  96. data/vendor/assets/build/medias/rubies/examples/height.rb +2 -0
  97. data/vendor/assets/build/medias/rubies/examples/image.rb +6 -2
  98. data/vendor/assets/build/medias/rubies/examples/left.rb +2 -0
  99. data/vendor/assets/build/medias/rubies/examples/monitoring.rb +20 -0
  100. data/vendor/assets/build/medias/rubies/examples/parent.rb +7 -5
  101. data/vendor/assets/build/medias/rubies/examples/repeat.rb +2 -0
  102. data/vendor/assets/build/medias/rubies/examples/right.rb +3 -1
  103. data/vendor/assets/build/medias/rubies/examples/schedule.rb +0 -4
  104. data/vendor/assets/build/medias/rubies/examples/shadow.rb +30 -0
  105. data/vendor/assets/build/medias/rubies/examples/text.rb +21 -7
  106. data/vendor/assets/build/medias/rubies/examples/touch.rb +2 -0
  107. data/vendor/assets/build/medias/rubies/examples/video.rb +2 -2
  108. data/vendor/assets/build/medias/rubies/examples/web.rb +2 -2
  109. data/vendor/assets/server/atome_server.rb +3 -5
  110. metadata +74 -174
  111. data/lib/atome/atome_native_extensions.rb +0 -5
  112. data/lib/atome/extensions/helper.rb +0 -112
  113. data/lib/atome/kernel/atome.rb +0 -99
  114. data/lib/atome/kernel/generators/generator.rb +0 -517
  115. data/lib/atome/kernel/generators/genesis.rb +0 -277
  116. data/lib/atome/kernel/generators/sanitizer.rb +0 -73
  117. data/lib/atome/kernel/generators/shapes.rb +0 -55
  118. data/lib/atome/kernel/helpers/internal_methods.rb +0 -173
  119. data/lib/atome/kernel/helpers/utilities.rb +0 -39
  120. data/lib/atome/kernel/properties/essential.rb +0 -77
  121. data/lib/atome/kernel/sparkle.rb +0 -38
  122. data/lib/atome/renderers/opal/properties/generator.rb +0 -1
  123. data/lib/atome/renderers/renderer.rb +0 -13
  124. data/lib/atome/renderers/server/properties/generator.rb +0 -9
  125. data/vendor/assets/build/js/application.js +0 -0
  126. data/vendor/assets/build/medias/audios/guitar.wav +0 -0
  127. data/vendor/assets/build/medias/images/beach.jpg +0 -0
  128. data/vendor/assets/build/medias/rubies/examples/Old_examples/!demos.rb +0 -111
  129. data/vendor/assets/build/medias/rubies/examples/Old_examples/action.rb +0 -12
  130. data/vendor/assets/build/medias/rubies/examples/Old_examples/add.rb +0 -26
  131. data/vendor/assets/build/medias/rubies/examples/Old_examples/alignment.rb +0 -27
  132. data/vendor/assets/build/medias/rubies/examples/Old_examples/animation.rb +0 -92
  133. data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_as_property.rb +0 -20
  134. data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_list.rb +0 -4
  135. data/vendor/assets/build/medias/rubies/examples/Old_examples/atomiser.rb +0 -17
  136. data/vendor/assets/build/medias/rubies/examples/Old_examples/attach_extract.rb +0 -13
  137. data/vendor/assets/build/medias/rubies/examples/Old_examples/authorisation.rb +0 -22
  138. data/vendor/assets/build/medias/rubies/examples/Old_examples/batch.rb +0 -6
  139. data/vendor/assets/build/medias/rubies/examples/Old_examples/blend.rb +0 -15
  140. data/vendor/assets/build/medias/rubies/examples/Old_examples/blur.rb +0 -9
  141. data/vendor/assets/build/medias/rubies/examples/Old_examples/border.rb +0 -9
  142. data/vendor/assets/build/medias/rubies/examples/Old_examples/calendar.rb +0 -5
  143. data/vendor/assets/build/medias/rubies/examples/Old_examples/capture.rb +0 -57
  144. data/vendor/assets/build/medias/rubies/examples/Old_examples/center.rb +0 -21
  145. data/vendor/assets/build/medias/rubies/examples/Old_examples/child.rb +0 -18
  146. data/vendor/assets/build/medias/rubies/examples/Old_examples/clear.rb +0 -21
  147. data/vendor/assets/build/medias/rubies/examples/Old_examples/clip.rb +0 -11
  148. data/vendor/assets/build/medias/rubies/examples/Old_examples/code.rb +0 -7
  149. data/vendor/assets/build/medias/rubies/examples/Old_examples/code_editor.rb +0 -26
  150. data/vendor/assets/build/medias/rubies/examples/Old_examples/collaborate.rb +0 -115
  151. data/vendor/assets/build/medias/rubies/examples/Old_examples/convert_to_px.rb +0 -14
  152. data/vendor/assets/build/medias/rubies/examples/Old_examples/copy_paste.rb +0 -35
  153. data/vendor/assets/build/medias/rubies/examples/Old_examples/current_code.rb +0 -14
  154. data/vendor/assets/build/medias/rubies/examples/Old_examples/cursor.rb +0 -3
  155. data/vendor/assets/build/medias/rubies/examples/Old_examples/data.rb +0 -11
  156. data/vendor/assets/build/medias/rubies/examples/Old_examples/database.rb +0 -29
  157. data/vendor/assets/build/medias/rubies/examples/Old_examples/delete.rb +0 -12
  158. data/vendor/assets/build/medias/rubies/examples/Old_examples/display.rb +0 -19
  159. data/vendor/assets/build/medias/rubies/examples/Old_examples/disposition.rb +0 -10
  160. data/vendor/assets/build/medias/rubies/examples/Old_examples/double_and_long_touch.rb +0 -23
  161. data/vendor/assets/build/medias/rubies/examples/Old_examples/drag.rb +0 -61
  162. data/vendor/assets/build/medias/rubies/examples/Old_examples/drag_and_drop_import.rb +0 -1
  163. data/vendor/assets/build/medias/rubies/examples/Old_examples/drop.rb +0 -23
  164. data/vendor/assets/build/medias/rubies/examples/Old_examples/duplicate.rb +0 -11
  165. data/vendor/assets/build/medias/rubies/examples/Old_examples/edit.rb +0 -6
  166. data/vendor/assets/build/medias/rubies/examples/Old_examples/eval.rb +0 -9
  167. data/vendor/assets/build/medias/rubies/examples/Old_examples/extract_detach.rb +0 -23
  168. data/vendor/assets/build/medias/rubies/examples/Old_examples/fill.rb +0 -10
  169. data/vendor/assets/build/medias/rubies/examples/Old_examples/find.rb +0 -37
  170. data/vendor/assets/build/medias/rubies/examples/Old_examples/fit.rb +0 -44
  171. data/vendor/assets/build/medias/rubies/examples/Old_examples/fullscreen.rb +0 -28
  172. data/vendor/assets/build/medias/rubies/examples/Old_examples/generate.rb +0 -7
  173. data/vendor/assets/build/medias/rubies/examples/Old_examples/gradient.rb +0 -24
  174. data/vendor/assets/build/medias/rubies/examples/Old_examples/group.rb +0 -21
  175. data/vendor/assets/build/medias/rubies/examples/Old_examples/helper.rb +0 -64
  176. data/vendor/assets/build/medias/rubies/examples/Old_examples/history.rb +0 -7
  177. data/vendor/assets/build/medias/rubies/examples/Old_examples/hue.rb +0 -10
  178. data/vendor/assets/build/medias/rubies/examples/Old_examples/input_text.rb +0 -54
  179. data/vendor/assets/build/medias/rubies/examples/Old_examples/insert_attach.rb +0 -13
  180. data/vendor/assets/build/medias/rubies/examples/Old_examples/internationalisation.rb +0 -10
  181. data/vendor/assets/build/medias/rubies/examples/Old_examples/key.rb +0 -19
  182. data/vendor/assets/build/medias/rubies/examples/Old_examples/keyboard_shortcut.rb +0 -69
  183. data/vendor/assets/build/medias/rubies/examples/Old_examples/list_methods.rb +0 -4
  184. data/vendor/assets/build/medias/rubies/examples/Old_examples/list_types.rb +0 -4
  185. data/vendor/assets/build/medias/rubies/examples/Old_examples/listen.rb +0 -47
  186. data/vendor/assets/build/medias/rubies/examples/Old_examples/mail.rb +0 -9
  187. data/vendor/assets/build/medias/rubies/examples/Old_examples/map.rb +0 -6
  188. data/vendor/assets/build/medias/rubies/examples/Old_examples/mask.rb +0 -15
  189. data/vendor/assets/build/medias/rubies/examples/Old_examples/media_recorder.rb +0 -24
  190. data/vendor/assets/build/medias/rubies/examples/Old_examples/media_streaming.rb +0 -41
  191. data/vendor/assets/build/medias/rubies/examples/Old_examples/meteo.rb +0 -41
  192. data/vendor/assets/build/medias/rubies/examples/Old_examples/methods_chaining.rb +0 -8
  193. data/vendor/assets/build/medias/rubies/examples/Old_examples/midi.rb +0 -37
  194. data/vendor/assets/build/medias/rubies/examples/Old_examples/monitoring.rb +0 -47
  195. data/vendor/assets/build/medias/rubies/examples/Old_examples/mulitrendering.rb +0 -7
  196. data/vendor/assets/build/medias/rubies/examples/Old_examples/noise_gradient_texture.rb +0 -26
  197. data/vendor/assets/build/medias/rubies/examples/Old_examples/notification.rb +0 -9
  198. data/vendor/assets/build/medias/rubies/examples/Old_examples/object_in_object.rb +0 -13
  199. data/vendor/assets/build/medias/rubies/examples/Old_examples/on_resize.rb +0 -12
  200. data/vendor/assets/build/medias/rubies/examples/Old_examples/over.rb +0 -15
  201. data/vendor/assets/build/medias/rubies/examples/Old_examples/overflow.rb +0 -22
  202. data/vendor/assets/build/medias/rubies/examples/Old_examples/parameter.rb +0 -14
  203. data/vendor/assets/build/medias/rubies/examples/Old_examples/parent.rb +0 -19
  204. data/vendor/assets/build/medias/rubies/examples/Old_examples/particle.rb +0 -15
  205. data/vendor/assets/build/medias/rubies/examples/Old_examples/pay.rb +0 -7
  206. data/vendor/assets/build/medias/rubies/examples/Old_examples/ping.rb +0 -7
  207. data/vendor/assets/build/medias/rubies/examples/Old_examples/play.rb +0 -24
  208. data/vendor/assets/build/medias/rubies/examples/Old_examples/play_audio.rb +0 -6
  209. data/vendor/assets/build/medias/rubies/examples/Old_examples/position.rb +0 -7
  210. data/vendor/assets/build/medias/rubies/examples/Old_examples/read_file.rb +0 -9
  211. data/vendor/assets/build/medias/rubies/examples/Old_examples/reboot.rb +0 -15
  212. data/vendor/assets/build/medias/rubies/examples/Old_examples/refresh.rb +0 -17
  213. data/vendor/assets/build/medias/rubies/examples/Old_examples/remote_server.rb +0 -31
  214. data/vendor/assets/build/medias/rubies/examples/Old_examples/render.rb +0 -17
  215. data/vendor/assets/build/medias/rubies/examples/Old_examples/repeat.rb +0 -19
  216. data/vendor/assets/build/medias/rubies/examples/Old_examples/require_remote.rb +0 -3
  217. data/vendor/assets/build/medias/rubies/examples/Old_examples/restore_atome.rb +0 -11
  218. data/vendor/assets/build/medias/rubies/examples/Old_examples/resurect.rb +0 -30
  219. data/vendor/assets/build/medias/rubies/examples/Old_examples/ruby_version.rb +0 -1
  220. data/vendor/assets/build/medias/rubies/examples/Old_examples/say.rb +0 -3
  221. data/vendor/assets/build/medias/rubies/examples/Old_examples/scale.rb +0 -41
  222. data/vendor/assets/build/medias/rubies/examples/Old_examples/schedule.rb +0 -39
  223. data/vendor/assets/build/medias/rubies/examples/Old_examples/scroll.rb +0 -9
  224. data/vendor/assets/build/medias/rubies/examples/Old_examples/select.rb +0 -32
  225. data/vendor/assets/build/medias/rubies/examples/Old_examples/selector.rb +0 -6
  226. data/vendor/assets/build/medias/rubies/examples/Old_examples/shadow.rb +0 -30
  227. data/vendor/assets/build/medias/rubies/examples/Old_examples/shape_with_path.rb +0 -7
  228. data/vendor/assets/build/medias/rubies/examples/Old_examples/size.rb +0 -109
  229. data/vendor/assets/build/medias/rubies/examples/Old_examples/smooth.rb +0 -5
  230. data/vendor/assets/build/medias/rubies/examples/Old_examples/speech_renderer.rb +0 -5
  231. data/vendor/assets/build/medias/rubies/examples/Old_examples/synth.rb +0 -6
  232. data/vendor/assets/build/medias/rubies/examples/Old_examples/system.rb +0 -3
  233. data/vendor/assets/build/medias/rubies/examples/Old_examples/tags.rb +0 -18
  234. data/vendor/assets/build/medias/rubies/examples/Old_examples/text.rb +0 -33
  235. data/vendor/assets/build/medias/rubies/examples/Old_examples/text_selection.rb +0 -33
  236. data/vendor/assets/build/medias/rubies/examples/Old_examples/text_to_midi.rb +0 -22
  237. data/vendor/assets/build/medias/rubies/examples/Old_examples/touch.rb +0 -23
  238. data/vendor/assets/build/medias/rubies/examples/Old_examples/touch_stop_propagation.rb +0 -27
  239. data/vendor/assets/build/medias/rubies/examples/Old_examples/treat_object_in_object.rb +0 -26
  240. data/vendor/assets/build/medias/rubies/examples/Old_examples/type_mutations.rb +0 -27
  241. data/vendor/assets/build/medias/rubies/examples/Old_examples/video_callback.rb +0 -46
  242. data/vendor/assets/build/medias/rubies/examples/Old_examples/view_mode.rb +0 -29
  243. data/vendor/assets/build/medias/rubies/examples/Old_examples/virtual_events.rb +0 -17
  244. data/vendor/assets/build/medias/rubies/examples/Old_examples/visual.rb +0 -23
  245. data/vendor/assets/build/medias/rubies/examples/Old_examples/vr_display.rb +0 -5
  246. data/vendor/assets/build/medias/rubies/examples/Old_examples/wait.rb +0 -21
  247. data/vendor/assets/build/medias/rubies/examples/Old_examples/web.rb +0 -10
  248. data/vendor/assets/build/medias/rubies/examples/Old_examples/web_address_bar.rb +0 -14
  249. data/vendor/assets/build/medias/rubies/examples/Old_examples/websocket.rb +0 -16
  250. data/vendor/assets/build/medias/rubies/examples/Old_examples/webstate.rb +0 -10
  251. data/vendor/assets/build/medias/rubies/examples/animation.rb +0 -0
  252. data/vendor/assets/build/medias/rubies/examples/code.rb +0 -5
  253. data/vendor/assets/build/medias/rubies/examples/link.rb +0 -11
  254. data/vendor/assets/build/medias/videos/avengers.mp4 +0 -0
  255. data/vendor/assets/build/medias/videos/lion_king.mp4 +0 -0
  256. data/vendor/assets/build/medias/videos/madmax.mp4 +0 -0
  257. data/vendor/assets/build/medias/videos/starwars.mov +0 -0
  258. data/vendor/assets/build/medias/videos/superman.mp4 +0 -0
@@ -1,33 +0,0 @@
1
- # text selection example
2
-
3
- t = text({ content: "type what you want", x: 333 })
4
- t.visual(33)
5
-
6
- t.key(:down) do
7
- w_get = JSUtils.client_width(t.atome_id)
8
- t.width = :auto
9
- t.width = if w_get > 300
10
- 300
11
- else
12
- :auto
13
- end
14
- end
15
- t.key(:up) do |evt|
16
- w_get = JSUtils.client_width(t.atome_id)
17
- t.width = if w_get < 99
18
- 99
19
- elsif w_get > 300
20
- 300
21
- else
22
- :auto
23
- end
24
- end
25
- t.border(({ color: :red, thickness: 3, pattern: :dashed }))
26
- t.over do
27
- t.visual({ select: :all })
28
- end
29
-
30
- t.touch do
31
- t.visual({ select: :all })
32
- end
33
-
@@ -1,22 +0,0 @@
1
- # text to midi example
2
-
3
- # require "opal-parser"
4
- t=text("ok")
5
-
6
- cc = circle({width: 33, height: 33, y: 69, x: 69, color: :yellow, atome_id: :the_cc})
7
-
8
- ATOME.repeat 5, 0 do |evt|
9
- t.content(evt.abs)
10
- reader("./medias/rubies/text_read.rb") do |datas_get|
11
- datas=eval(datas_get)
12
- temperature= datas[:temperature]
13
- wind= datas[:wind]
14
- humidity= datas[:humidity]
15
- t.content( "temperature : #{temperature}, wind : #{wind}, humidity : #{humidity}")
16
- # cc.transmit({midi: {play: {note: "C3", channel: 15, velocity: 10}}})
17
- ATOME.wait 2 do
18
- t.content(:stop)
19
- # cc.transmit({midi: {stop: {note: "C3", channel: 15, velocity: 100}}})
20
- end
21
- end
22
- end
@@ -1,23 +0,0 @@
1
- # touch example
2
-
3
- b = box({ x: 96, y: 6, text: { content: "on mouse down", center: true, color: :black } })
4
- b.touch({ option: :down }) do
5
- b.color(:orange)
6
- b.x = b.x + 10
7
- end
8
- t=text({content: "kill touch\non box"})
9
- t.touch do
10
- b.touch({remove: :true })
11
- end
12
-
13
- c = circle({ x: 33, y: 96, text: { content: "on mouse up", center: true, color: :black } })
14
- c.touch({ option: :up}) do
15
- anim({
16
- start: {x: 0, y: 0, smooth: 0, rotate: 20},
17
- end: {x: 400, y: 70, smooth: 25, rotate: 180},
18
- duration: 2000,
19
- loop: 3,
20
- curve: :easing,
21
- target: c.atome_id
22
- })
23
- end
@@ -1,27 +0,0 @@
1
- # touch stop_event example
2
-
3
- b = box
4
- c = b.circle({size: 30, center: true})
5
-
6
- b.touch({ option: :down, stop: true }) do
7
- if b.width== 333
8
- b.width(66)
9
- b.color(:white)
10
- else
11
- b.color(:black)
12
- b.width(333)
13
- end
14
- end
15
-
16
- # stop option stop the propagation of the event
17
- c.touch(option: :down, stop: true) do
18
- # b.color(:blue)
19
-
20
- if b.width== 333
21
- c.width(66)
22
- c.color(:orange)
23
- else
24
- c.color(:yellow)
25
- c.width(333)
26
- end
27
- end
@@ -1,26 +0,0 @@
1
- b=box({drag: true,atome_id: :the_box})
2
- t=b.text({content: :hello, atome_id: :the_text})
3
- b.text({content: :cool, x: 72, atome_id: :the_text_1})
4
- b.text({content: :super, y: 66, atome_id: :the_text_2})
5
- b.text({content: "too much", y: 66, x: 96, atome_id: :the_text_3})
6
- b.circle({x: 333, atome_id: :the_circle})
7
- t.center(:all)
8
- # we can treat all text of b using .each
9
- b.circle.each do |circles_founc|
10
- circles_founc.color(:green)
11
- end
12
- # or iterate on the object type
13
- b.text do |atome|
14
- atome.color(:orange)
15
- end
16
-
17
- ATOME.wait 2 do
18
- # or even directly setting the property
19
- b.text.color(:cyan)
20
- # or choose an atome
21
- b.text[2].color(:red)
22
- # or a range of atomes
23
- ATOME.wait 2 do
24
- b.text[0..1].color(:yellow)
25
- end
26
- end
@@ -1,27 +0,0 @@
1
- # type mutation
2
-
3
- parent = circle({ overflow: :hidden, width: 300,
4
- height: 300, color: :orange, drag: true })
5
- b = parent.circle({ atome_id: :b, content: :boat, drag: true, x: 96, y: 96 })
6
-
7
- ATOME.wait 1 do
8
- b.type(:image)
9
- b.content(:boat)
10
- ATOME.wait 1 do
11
- b.content(:moto)
12
- ATOME.wait 1 do
13
- b.type(:text)
14
- ATOME.wait 1 do
15
- b.color(:black)
16
- ATOME.wait 1 do
17
- b.smooth(100)
18
- b.type(:shape)
19
- ATOME.wait 1 do
20
- b.smooth(0)
21
- b.type(:text)
22
- end
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,46 +0,0 @@
1
- # play callback example:
2
-
3
- v = video({ content: "madmax" })
4
- t = text({ content: "play position", xx: 96, visual: 15 })
5
- t2 = text({ content: :"play status", xx: 333, visual: 15 })
6
-
7
- t2.touch do
8
- t2.content(v.play[:status])
9
- end
10
-
11
- v.touch do
12
- v.play(true) do |evt|
13
- t.content(evt)
14
- end
15
- t2.content(v.play[:status])
16
- end
17
-
18
- c = circle({ x: 333, y: 9 })
19
- c.text({ content: "pause", center: true, visual: 15 })
20
-
21
- c.touch do
22
- v.play(:pause) do |evt|
23
- t.content(evt)
24
- end
25
- t2.content(v.play[:status])
26
- end
27
-
28
- d = circle({ x: 333, y: 120, color: :black })
29
- d.text({ content: "stop", center: true, visual: 15 })
30
-
31
- d.touch do
32
- v.play(:stop) do |evt|
33
- t.content(evt)
34
- end
35
- t2.content(v.play[:status])
36
- end
37
-
38
- e = circle({ x: 333, y: 222, color: :green })
39
- e.text({ content: "play from 33", center: true, visual: 15 })
40
-
41
- e.touch do
42
- v.play(33) do |evt|
43
- t.content(evt)
44
- end
45
- t2.content(v.play[:status])
46
- end
@@ -1,29 +0,0 @@
1
- # view mode example
2
-
3
- a = image({ content: :moto, atome_id: :the_moto, x: 96, y: 333})
4
- t1=text({ content: "list mode(childs)", x: 3,y: 3})
5
- t2=text({ content: "list property", x: 3,y: 33 })
6
- t3=text({ content: "natural mode" , x: 3,y: 66})
7
-
8
- t1.touch do
9
- a.render({
10
- mode: :list,
11
- ordered: :x,
12
- visualize: [:visual,:x, :y, :color, :atome_id]
13
- })
14
- end
15
- t2.touch do
16
- a.render({
17
- mode: :list,
18
- list: :property,
19
- sort: :alphabetically
20
- })
21
- end
22
- t3.touch do
23
- a.render(true)
24
- end
25
-
26
- a.drag(true)
27
- a.circle({ color: :green, x: 39, y:33, atome_id: :the_circle })
28
- a.text({ content: :kool, color: :yellow, x: 0, y:96, atome_id: :the_text})
29
- a.box({width: 33, height: 69, x: 36, atome_id: :the_box})
@@ -1,17 +0,0 @@
1
- # virtual_event example
2
-
3
- c=circle({atome_id: :circle_1, x: 69, y: 99})
4
-
5
- c.touch do
6
- if c.color==:red
7
- c.color(:yellowgreen)
8
- else
9
- c.color(:red)
10
- end
11
- end
12
-
13
- t=text({content: "touch me send a virtual touch to the circle", x: 99})
14
-
15
- t.touch do
16
- grab(:circle_1 ).virtual_event({ event: :touch ,x: 30, y:30})
17
- end
@@ -1,23 +0,0 @@
1
- # visual example
2
-
3
- t = text({content: "type_some_text,_try_to_press_return_and_touch_the_red_circle", visual: :Impact, x: 150})
4
- t.touch({option: :down}) do
5
- grab(:device).edit(false)
6
- end
7
-
8
- # fixme we must find a solution allow shortcut and auto sized text
9
- grab(:device).touch({option: :down}) do
10
- # grab(:device).edit(true)
11
- end
12
- t.width(333)
13
- t.visual({wrap: " "})
14
- t.visual({ fit: :width})
15
- t.edit( true)
16
- t.border({color: :orange, thickness: 7, pattern: :solid})
17
- c=circle({size: 33, x: 69})
18
- c.touch do
19
- t.visual({fit: :width})
20
- end
21
-
22
- # viusal params : visual: {size: 33,path: :arial,alignment: :right,wrap: " " , fit: :height }
23
- # visual default : { path: :ruboto, size: 33, alignment: :center, wrap: " ", fit: :none }
@@ -1,5 +0,0 @@
1
- # vr example
2
- i=image(:beach)
3
- i.display(:vr)
4
- i.width(600)
5
- i.height(900)
@@ -1,21 +0,0 @@
1
- # wait
2
-
3
- b=box({x:300})
4
- t=text("click me to kill the wait process")
5
- waiter= wait 5 do
6
- b.set({color: :orange, smooth: 20})
7
- end
8
-
9
- t.touch do
10
- t.clear({wait: waiter})
11
- end
12
-
13
-
14
- def notification(message,duration)
15
- notification=text({content: message, x: 300, y: 69})
16
- grab(:atome).wait duration do
17
- notification.delete()
18
- end
19
- end
20
-
21
- notification(:hello, 3)
@@ -1,10 +0,0 @@
1
- # web_object example
2
-
3
- my_tube = web({type: :iframe, path: "https://www.youtube.com/embed/usQDazZKWAk" })
4
- my_tube.y = 150
5
- my_tube.drag(true)
6
- my_tube.width = 300
7
-
8
- web({ type: :image, path: "https://interactive-examples.mdn.mozilla.net/media/cc0-images/grapefruit-slice-332-332.jpg" })
9
- # web can also be specified without supplying any path ex :
10
- # web('<image src="https://interactive-examples.mdn.mozilla.net/media/cc0-images/grapefruit-slice-332-332.jpg"/>')my_tube.x = 300
@@ -1,14 +0,0 @@
1
- # web_address_bar example
2
-
3
- t = text({ content: "Navigate using the next back arrow in your browser \nto reveal the address bas content", y: 66 })
4
- address_bar_content = text({ content: "touch to change adress bar content", x: 6, y: 6 })
5
-
6
- # t.touch do
7
- address_bar_content.address do |e|
8
- t.content = "#{e[:location]}\n#{e[:state]}"
9
- end
10
- # end
11
-
12
- address_bar_content.touch do
13
- address_bar_content.web({ address: :my_page })
14
- end
@@ -1,16 +0,0 @@
1
-
2
- t=text( "touch me to set the websocket adress to localhost ('0.0.0.0:9292')")
3
- t2=text({y: 30, content: "touch me to reset the websocket adress to atome.one" })
4
-
5
- t.touch do
6
- # ATOME.websocket
7
- #second parameter is ssl (true or false)
8
- #or ATOME.websocket('0.0.0.0:9292', false)
9
-
10
- ATOME.websocket("localhost:9292", false)
11
-
12
- end
13
-
14
- t2.touch do
15
- ATOME.websocket("ws.atome.one", true)
16
- end
@@ -1,10 +0,0 @@
1
- # webstate example
2
-
3
- t=text(web_state)
4
-
5
-
6
- b=box({x: 333})
7
- b.touch do
8
- ATOME.message({ type: :code, content: "circle({x: 33,y: 33})" })
9
- t.content(web_state)
10
- end
@@ -1,5 +0,0 @@
1
- mycode = <<Struct
2
- circle({color: :red})
3
- Struct
4
-
5
- Atome.new(code: { id: :code1, code: mycode })
@@ -1,11 +0,0 @@
1
- text = Atome.new(
2
- text: { render: [:html], id: :text1, type: :text, parent: [:view], visual: { size: 33 }, data: "My text!", left: 300, top: 33, width: 199, height: 33, }
3
- )
4
-
5
- # now we change the color all the object that share the care modified
6
- wait 1 do
7
- text.text.link(:c315)
8
- end
9
- wait 2 do
10
- grab(:c315).red(0)
11
- end