atome 0.1.00009 → 0.4.5.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +4 -0
- data/README.md +74 -6
- data/Rakefile +14 -6
- data/app_builder_helpers/Rakefile +183 -25
- data/documentation/atome.md +14 -0
- data/documentation/database.JPG +0 -0
- data/documentation/framework/apis.md +14 -0
- data/documentation/framework/atome_explained.md +179 -0
- data/documentation/framework/box_content.md +53 -0
- data/documentation/framework/buld_the_gem.md +52 -0
- data/documentation/framework/datas_flows.md +28 -0
- data/documentation/framework/enhance_atome.md +79 -0
- data/documentation/framework/folder_architecture.md +47 -0
- data/documentation/framework/technical/rendering_flow.md +18 -0
- data/documentation/framework/technical/technical_description.md +23 -0
- data/documentation/framework/what_is_it.md +65 -0
- data/documentation/framework/what_it_can_do.md +25 -0
- data/documentation/images/1.png +0 -0
- data/documentation/images/2.png +0 -0
- data/documentation/images/3.png +0 -0
- data/documentation/images/atome.svg +12 -0
- data/documentation/images/list.png +0 -0
- data/documentation/images/logos/cordova.png +0 -0
- data/documentation/images/logos/freebsd.png +0 -0
- data/documentation/images/logos/opal.png +0 -0
- data/documentation/images/logos/puma.png +0 -0
- data/documentation/images/logos/roda.svg +1 -0
- data/documentation/images/logos/ruby.png +0 -0
- data/documentation/images/logos/tauri.png +0 -0
- data/documentation/installation/atome_server.md +184 -0
- data/documentation/tutorials/first_steps.md +148 -0
- data/documentation/tutorials/tutorials.md +15 -0
- data/documentation/tutorials/working_with_atome.md +60 -0
- data/exe/atome +178 -53
- data/lib/atome/atome_native_extensions.rb +5 -0
- data/lib/atome/extensions/geolocation.rb +14 -0
- data/lib/atome/extensions/helper.rb +123 -0
- data/lib/atome/extensions/ping.rb +13 -0
- data/lib/atome/extensions/sha.rb +6 -0
- data/lib/atome/extensions/utilities.rb +39 -0
- data/lib/atome/kernel/atome.rb +98 -0
- data/lib/atome/kernel/generators/generator.rb +387 -0
- data/lib/atome/kernel/generators/genesis.rb +265 -0
- data/lib/atome/kernel/generators/sanitizer.rb +77 -0
- data/lib/atome/kernel/generators/shapes.rb +40 -0
- data/lib/atome/kernel/properties/essential.rb +43 -0
- data/lib/atome/kernel/sparkle.rb +37 -0
- data/lib/atome/kernel/universe.rb +29 -0
- data/lib/atome/renderers/headless/properties/generator.rb +1 -0
- data/lib/atome/renderers/opal/atome_opal_extensions.rb +7 -0
- data/lib/atome/renderers/opal/extensions/color.rb +23 -0
- data/lib/atome/renderers/opal/extensions/geolocation.rb +14 -0
- data/lib/atome/renderers/opal/extensions/ping.rb +18 -0
- data/lib/atome/renderers/opal/extensions/sha.rb +12 -0
- data/lib/atome/renderers/opal/opal_browser.rb +2 -1
- data/lib/atome/renderers/opal/opal_parser.rb +1 -0
- data/lib/atome/renderers/opal/properties/generator.rb +1 -0
- data/lib/atome/renderers/renderer.rb +12 -0
- data/lib/atome/renderers/server/properties/generator.rb +9 -0
- data/lib/atome/version.rb +1 -1
- data/lib/atome.rb +55 -2
- data/vendor/assets/Guardfile +4 -0
- data/vendor/assets/Rakefile +3 -0
- data/vendor/assets/application/index.rb +4 -0
- data/vendor/assets/build/css/style.css +21 -8
- data/vendor/assets/build/favicon.ico +0 -0
- data/vendor/assets/build/index.html +13 -4
- data/vendor/assets/build/js/atome/atome.js +68 -0
- data/vendor/assets/build/js/ping.min.js +2 -0
- data/vendor/assets/build/js/third_parties/createjs.min.js +19 -0
- data/vendor/assets/build/js/third_parties/fabric.min.js +1 -0
- data/vendor/assets/build/js/third_parties/sha256.min.js +9 -0
- data/vendor/assets/build/js/third_parties/three.min.js +6 -0
- data/vendor/assets/build/js/utilities/w3color.js +646 -0
- data/vendor/assets/build/medias/audios/audio_missing.wav +0 -0
- data/vendor/assets/build/medias/audios/clap.wav +0 -0
- data/vendor/assets/build/medias/audios/cowbell.wav +0 -0
- data/vendor/assets/build/medias/audios/hihat.wav +0 -0
- data/vendor/assets/build/medias/audios/kick.wav +0 -0
- data/vendor/assets/build/medias/audios/riff.m4a +0 -0
- data/vendor/assets/build/medias/audios/snare.wav +0 -0
- data/vendor/assets/build/medias/audios/tom.wav +0 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/DancingScript-VariableFont_wght.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/OFL.txt +93 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/README.txt +66 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-Bold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-Medium.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-Regular.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-SemiBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Mate_SC/MateSC-Regular.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Mate_SC/OFL.txt +94 -0
- data/vendor/assets/build/medias/fonts/Raleway/OFL.txt +93 -0
- data/vendor/assets/build/medias/fonts/Raleway/README.txt +81 -0
- data/vendor/assets/build/medias/fonts/Raleway/Raleway-Italic-VariableFont_wght.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/Raleway-VariableFont_wght.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Black.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-BlackItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Bold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-BoldItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraBoldItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraLight.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraLightItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Italic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Light.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-LightItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Medium.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-MediumItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Regular.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-SemiBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-SemiBoldItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Thin.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ThinItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/LICENSE.txt +202 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/README.txt +71 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/RobotoSlab-VariableFont_wght.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Black.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Bold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-ExtraBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-ExtraLight.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Light.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Medium.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Regular.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-SemiBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Thin.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/OFL.txt +93 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/README.txt +75 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/Vollkorn-Italic-VariableFont_wght.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/Vollkorn-VariableFont_wght.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Black.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-BlackItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Bold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-BoldItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-ExtraBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-ExtraBoldItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Italic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Medium.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-MediumItalic.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Regular.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-SemiBold.ttf +0 -0
- data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-SemiBoldItalic.ttf +0 -0
- data/vendor/assets/build/medias/images/Icon_Help.png +0 -0
- data/vendor/assets/build/medias/images/atome.svg +12 -0
- data/vendor/assets/build/medias/images/avion.jpg +0 -0
- data/vendor/assets/build/medias/images/ballanim.png +0 -0
- data/vendor/assets/build/medias/images/blank.png +0 -0
- data/vendor/assets/build/medias/images/boat.png +0 -0
- data/vendor/assets/build/medias/images/cache.svg +10 -0
- data/vendor/assets/build/medias/images/dices.png +0 -0
- data/vendor/assets/build/medias/images/eVe_back.png +0 -0
- data/vendor/assets/build/medias/images/elephant.png +0 -0
- data/vendor/assets/build/medias/images/eyes.jpg +0 -0
- data/vendor/assets/build/medias/images/freebsd.png +0 -0
- data/vendor/assets/build/medias/images/grain_texture.png +0 -0
- data/vendor/assets/build/medias/images/green_planet.png +0 -0
- data/vendor/assets/build/medias/images/image_missing.svg +9 -0
- data/vendor/assets/build/medias/images/jeezs.png +0 -0
- data/vendor/assets/build/medias/images/keyboard.png +0 -0
- data/vendor/assets/build/medias/images/killer.jpg +0 -0
- data/vendor/assets/build/medias/images/living_room.png +0 -0
- data/vendor/assets/build/medias/images/logo.svg +14 -0
- data/vendor/assets/build/medias/images/logos/Facebook.svg +8 -0
- data/vendor/assets/build/medias/images/logos/GitHub Black.svg +7 -0
- data/vendor/assets/build/medias/images/logos/GitHub-Mark.eps +7696 -0
- data/vendor/assets/build/medias/images/logos/GitHub.svg +7 -0
- data/vendor/assets/build/medias/images/logos/TikTok.svg +11 -0
- data/vendor/assets/build/medias/images/logos/Twitter.svg +35 -0
- data/vendor/assets/build/medias/images/logos/YouTube.svg +1 -0
- data/vendor/assets/build/medias/images/logos/apple.svg +4 -0
- data/vendor/assets/build/medias/images/logos/atome.svg +12 -0
- data/vendor/assets/build/medias/images/logos/freebsd.png +0 -0
- data/vendor/assets/build/medias/images/logos/instagram.svg +6 -0
- data/vendor/assets/build/medias/images/logos/tiktok_back.svg +1 -0
- data/vendor/assets/build/medias/images/moto.png +0 -0
- data/vendor/assets/build/medias/images/noise.svg +17 -0
- data/vendor/assets/build/medias/images/piano.png +0 -0
- data/vendor/assets/build/medias/images/poisson.jpg +0 -0
- data/vendor/assets/build/medias/images/red_planet.png +0 -0
- data/vendor/assets/build/medias/images/sky.jpg +0 -0
- data/vendor/assets/build/medias/images/the_mask.svg +8 -0
- data/vendor/assets/build/medias/images/tile.png +0 -0
- data/vendor/assets/build/medias/images/tile_black.png +0 -0
- data/vendor/assets/build/medias/images/tile_white.png +0 -0
- data/vendor/assets/build/medias/javascripts/test.js +1 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/!demos.rb +111 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/action.rb +12 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/add.rb +26 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/alignment.rb +27 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/animation.rb +92 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_as_property.rb +20 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_list.rb +4 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/atomiser.rb +17 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/attach_extract.rb +13 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/authorisation.rb +22 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/batch.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/blend.rb +15 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/blur.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/border.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/calendar.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/capture.rb +57 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/center.rb +21 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/child.rb +18 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/clear.rb +21 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/clip.rb +11 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/code.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/code_editor.rb +26 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/collaborate.rb +115 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/convert_to_px.rb +14 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/copy_paste.rb +35 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/current_code.rb +14 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/cursor.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/data.rb +11 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/database.rb +29 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/delete.rb +12 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/display.rb +19 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/disposition.rb +10 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/double_and_long_touch.rb +23 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/drag.rb +61 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/drag_and_drop_import.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/drop.rb +23 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/duplicate.rb +11 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/edit.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/eval.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/extract_detach.rb +23 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/fill.rb +10 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/find.rb +37 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/fit.rb +44 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/fullscreen.rb +28 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/generate.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/gradient.rb +24 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/group.rb +21 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/helper.rb +64 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/history.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/hue.rb +10 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/input_text.rb +54 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/insert_attach.rb +13 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/internationalisation.rb +10 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/key.rb +19 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/keyboard_shortcut.rb +69 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/list_methods.rb +4 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/list_types.rb +4 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/listen.rb +47 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/mail.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/map.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/mask.rb +15 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/media_recorder.rb +24 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/media_streaming.rb +41 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/meteo.rb +41 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/methods_chaining.rb +8 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/midi.rb +37 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/monitoring.rb +47 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/mulitrendering.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/noise_gradient_texture.rb +26 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/notification.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/object_in_object.rb +13 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/on_resize.rb +12 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/over.rb +15 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/overflow.rb +22 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/parameter.rb +14 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/parent.rb +19 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/particle.rb +15 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/pay.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/ping.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/play.rb +24 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/play_audio.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/position.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/read_file.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/reboot.rb +15 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/refresh.rb +17 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/remote_server.rb +31 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/render.rb +17 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/repeat.rb +19 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/require_remote.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/restore_atome.rb +11 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/resurect.rb +30 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/ruby_version.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/say.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/scale.rb +41 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/schedule.rb +39 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/scroll.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/select.rb +32 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/selector.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/shadow.rb +30 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/shape_with_path.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/size.rb +109 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/smooth.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/speech_renderer.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/synth.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/system.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/tags.rb +18 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/text.rb +33 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/text_selection.rb +33 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/text_to_midi.rb +22 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/touch.rb +23 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/touch_stop_propagation.rb +27 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/treat_object_in_object.rb +26 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/type_mutations.rb +27 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/video_callback.rb +46 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/view_mode.rb +29 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/virtual_events.rb +17 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/visual.rb +23 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/vr_display.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/wait.rb +21 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/web.rb +10 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/web_address_bar.rb +14 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/websocket.rb +16 -0
- data/vendor/assets/build/medias/rubies/examples/Old_examples/webstate.rb +10 -0
- data/vendor/assets/build/{js/atome/kernel.js → medias/rubies/examples/animation.rb} +0 -0
- data/vendor/assets/build/medias/rubies/examples/atome.new.rb +12 -0
- data/vendor/assets/build/medias/rubies/examples/auto_height.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/auto_width.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/bottom.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/box.rb +1 -0
- data/vendor/assets/build/{js/opal/opal_browser.js → medias/rubies/examples/circle.rb} +0 -0
- data/vendor/assets/build/medias/rubies/examples/color.rb +13 -0
- data/vendor/assets/build/medias/rubies/examples/create_atome_in_atome.rb +11 -0
- data/vendor/assets/build/medias/rubies/examples/drag.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/get_renderer_list.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/grab.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/height.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/image.rb +4 -0
- data/vendor/assets/build/medias/rubies/examples/left.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/link.rb +13 -0
- data/vendor/assets/build/medias/rubies/examples/parent.rb +12 -0
- data/vendor/assets/build/medias/rubies/examples/read.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/repeat.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/right.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/rotate.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/schedule.rb +13 -0
- data/vendor/assets/build/medias/rubies/examples/smooth.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/text.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/top.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/touch.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/video.rb +4 -0
- data/vendor/assets/build/medias/rubies/examples/wait.rb +3 -0
- data/vendor/assets/build/medias/rubies/examples/web.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/width.rb +2 -0
- data/vendor/assets/build/medias/rubies/test.rb +1 -0
- data/vendor/assets/build/medias/rubies/text_read.rb +1 -0
- data/vendor/assets/build/medias/rubies/users/code.rb +6 -0
- data/vendor/assets/build/medias/utils/infos/color.rb +29 -0
- data/vendor/assets/build/medias/utils/infos/width.rb +25 -0
- data/vendor/assets/build/medias/videos/video_missing.mp4 +0 -0
- data/vendor/assets/{index.rb → r&d/misc.rb} +54 -1
- data/vendor/assets/r&d/ping.rb +3 -0
- data/vendor/assets/r&d/storage.rb +9 -0
- data/vendor/assets/r&d/view_example.rb +21 -0
- data/vendor/assets/server/atome_server.rb +74 -27
- data/vendor/assets/server/config.ru +2 -14
- metadata +424 -12
- data/lib/atome/kernel/atome_genesis.rb +0 -2
- data/lib/atome/kernel/properties/geometry.rb +0 -2
- data/vendor/assets/build/js/opal/opal_parser.js +0 -0
@@ -0,0 +1,44 @@
|
|
1
|
+
# fit example
|
2
|
+
|
3
|
+
b = box({ size: 96 })
|
4
|
+
b.image({ content: :boat, size: :fit })
|
5
|
+
b.touch do
|
6
|
+
clear(:view)
|
7
|
+
end
|
8
|
+
b2 = box({ x: 333 })
|
9
|
+
t = b2.text({ content: "hit the red or orange circle", visual: :Impact })
|
10
|
+
# t.edit(true)
|
11
|
+
t.width(96)
|
12
|
+
|
13
|
+
c0 = circle({ size: 33, x: 96, color: :yellowgreen })
|
14
|
+
c = circle({ size: 33, x: 120 })
|
15
|
+
c2 = circle({ size: 33, x: 150, color: :orange })
|
16
|
+
|
17
|
+
c0.touch do
|
18
|
+
t.visual({ fit: :width })
|
19
|
+
b2.size({ fit: t.atome_id })
|
20
|
+
t.center(true)
|
21
|
+
end
|
22
|
+
c.touch do
|
23
|
+
t.visual({ fit: :width })
|
24
|
+
b2.size({ fit: t.atome_id, margin: { x: 33, y: 33 } })
|
25
|
+
t.center(true)
|
26
|
+
end
|
27
|
+
|
28
|
+
c2.touch do
|
29
|
+
t.visual({ fit: :width })
|
30
|
+
b2.size({ fit: t.atome_id, margin: 66 })
|
31
|
+
t.center(true)
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
# text fit box size
|
36
|
+
|
37
|
+
tt=text ({ content: "Super", x: 333, y: 120 } )
|
38
|
+
tt.border(({ color: :green, thickness: 3, pattern: :solid }))
|
39
|
+
bb=box({x:333, y: 333, width: 333, height: 150})
|
40
|
+
bb.text("touch me to make the upper text fit my size")
|
41
|
+
bb.touch do
|
42
|
+
tt.size({ fit: bb.atome_id})
|
43
|
+
tt.visual({fit: :width})
|
44
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# Fullscreen
|
2
|
+
|
3
|
+
button3=box({height: 33, x: 9, width: 222, smooth: 33, y: 6})
|
4
|
+
button3.text({content: "back to normal", x: 6 })
|
5
|
+
|
6
|
+
button=box({height: 33, x: 9, width: 222, smooth: 33, y: 66})
|
7
|
+
button.text({content: "image fullscreen", x: 6 })
|
8
|
+
|
9
|
+
button2=box({height: 33, x: 9, width: 222, smooth: 33, y: 120})
|
10
|
+
button2.text({content: "page fullscreen", x: 6 })
|
11
|
+
|
12
|
+
|
13
|
+
img=image({ content: :moto, x: 222, y: 222 })
|
14
|
+
|
15
|
+
button.touch do
|
16
|
+
img.fullscreen(true)
|
17
|
+
end
|
18
|
+
|
19
|
+
button2.touch do
|
20
|
+
grab(:view).fullscreen(:all)
|
21
|
+
end
|
22
|
+
|
23
|
+
circle({x:333})
|
24
|
+
box({x:333, y: 99})
|
25
|
+
text({content: :hello, visual: 99, x: 666, y: 66})
|
26
|
+
batch([button3, img]).touch do
|
27
|
+
grab(:view).fullscreen(false)
|
28
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# gradient
|
2
|
+
|
3
|
+
c = circle({atome_id: :c, x: 300, id: :gradient_simple})
|
4
|
+
c.color({green: 1})
|
5
|
+
c.color ([:blue, :cyan])
|
6
|
+
c.size = 223
|
7
|
+
grad = text({content: :kool, atome_id: :gradient_test, visual: 333})
|
8
|
+
grad.x(333)
|
9
|
+
grad.y(99)
|
10
|
+
grad.size = 666
|
11
|
+
grad.color([:red, :yellow, {red: 0, green: 1, blue: 0}, {angle: 150}, {diffusion: :linear}])
|
12
|
+
grad.shadow(true)
|
13
|
+
ATOME.wait 1 do
|
14
|
+
grad.color([:red, :yellow, {red: 0, green: 1, blue: 0}, {angle: 150}, {diffusion: :radial}])
|
15
|
+
end
|
16
|
+
ATOME.wait 2 do
|
17
|
+
c.color([:cyan, :green, :orange, {diffusion: :conic}])
|
18
|
+
end
|
19
|
+
ATOME.wait 3 do
|
20
|
+
grad.color([:orange, {red: 0, green: 1, blue: 0}, :blue, {angle: 150, diffusion: :linear}])
|
21
|
+
end
|
22
|
+
grad.touch do
|
23
|
+
text(grad.inspect)
|
24
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# group example
|
2
|
+
|
3
|
+
t = text({ content: "Make the yellowgreen circle red , so it'll belong to the group so it'll be blurred and draggable", atome_id: :the_text })
|
4
|
+
image({content: :boat, x:666,atome_id: :pix_1,})
|
5
|
+
image({content: :moto, y:333, atome_id: :pix_2})
|
6
|
+
b = box({ size: 66, y: 33, color: :red, atome_id: :tutu })
|
7
|
+
b.tag({ content: "my_tag" })
|
8
|
+
circle({ x: 96, y: 33, atome_id: :first_circle })
|
9
|
+
c2=circle({ x: 333, y: 96, color: :green, tag: :other_tag,atome_id: :the_circle })
|
10
|
+
b.add({ tag: :new_tag })
|
11
|
+
circle({ atome_id: :the_second_circle , color: :yellowgreen, x: 96, y: 96})
|
12
|
+
# b2=box({size: 66, x: 66, y: 66})
|
13
|
+
# b2.text({content: "i am red!!", color: :red})
|
14
|
+
# the group is both static ( content send) and based on a search (condition) and dynamic any atome matching will be tretaed!
|
15
|
+
g=group({ content: [:pix_1, :pix_2], name: :my_group, treatment: {blur: 3, width: 33, drag: true}, dynamic: true, condition: { color: :red }, atome_id: :the_group })
|
16
|
+
|
17
|
+
t.touch do
|
18
|
+
c2.color(:red)
|
19
|
+
end
|
20
|
+
|
21
|
+
g.treatment(color: :orange)
|
@@ -0,0 +1,64 @@
|
|
1
|
+
############################## help ###########@#######################
|
2
|
+
|
3
|
+
class Atome
|
4
|
+
def help(property, view = :raw)
|
5
|
+
reader("./medias/utils/infos/#{property}.rb") do |file_content|
|
6
|
+
case view
|
7
|
+
when :raw
|
8
|
+
when :formated
|
9
|
+
categorised_methods = {}
|
10
|
+
ATOME.methods_categories.each do |key, values|
|
11
|
+
values.each do |value|
|
12
|
+
categorised_methods[value] = key
|
13
|
+
end
|
14
|
+
end
|
15
|
+
categories = { categories: categorised_methods[property] }
|
16
|
+
eval_file_content = eval(file_content)
|
17
|
+
file_content = eval_file_content.merge(categories)
|
18
|
+
|
19
|
+
categories = file_content[:categories]
|
20
|
+
descriptions = file_content[:descriptions]
|
21
|
+
params = file_content[:params]
|
22
|
+
tips = file_content[:tips]
|
23
|
+
examples = file_content[:examples]
|
24
|
+
todos = file_content[:todos]
|
25
|
+
tests = file_content[:tests]
|
26
|
+
bugs = file_content[:bugs]
|
27
|
+
tutorials = file_content[:tutorials]
|
28
|
+
links = file_content[:links]
|
29
|
+
documentation = file_content[:documentation]
|
30
|
+
|
31
|
+
b = Object.box({ width: 300, height: 600, smooth: 6, shadow: { invert: true }, color: { alpha: 0.3 }, x: 3, parent: :intuition, drag: true })
|
32
|
+
# b.drag(true)
|
33
|
+
b.text({ content: property, x: 9, disposition: { y: 3 }, visual: 30 })
|
34
|
+
b.text({ content: "type: #{categories}", x: 15, disposition: { y: 3 } })
|
35
|
+
b.text({ content: "examples:", x: 15, disposition: { y: 3 } })
|
36
|
+
|
37
|
+
examples.each_with_index do |example, index|
|
38
|
+
ex = b.text({ content: "#{index} : test", x: 33, disposition: { y: 3 }, color: :orange })
|
39
|
+
demo_code = b.text({ content: example[1].to_s, x: 66, disposition: { y: 3 } })
|
40
|
+
demo_code.edit(true)
|
41
|
+
ex.touch do
|
42
|
+
Object.clear(:view)
|
43
|
+
code_extracted = if demo_code.content.q_read.instance_of?(Hash)
|
44
|
+
# todo: add internalisation below not .values[0]
|
45
|
+
demo_code.content.q_read.values[0]
|
46
|
+
else
|
47
|
+
demo_code.content.q_read
|
48
|
+
end
|
49
|
+
Object.instance_eval(code_extracted)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
clear_view = b.text({ content: "clear", xx: 33, disposition: { y: 3 }, color: :orange })
|
53
|
+
clear_view.touch do
|
54
|
+
grab(:view).clear(true)
|
55
|
+
end
|
56
|
+
else
|
57
|
+
# we send to the requested method
|
58
|
+
Atome.send(view, file_content)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
ATOME.help(:width, :formated)
|
@@ -0,0 +1,7 @@
|
|
1
|
+
# history example recall all activities including coded creation or creation made with tools
|
2
|
+
|
3
|
+
history= Quark.get_history
|
4
|
+
time_get =history[0][:atome][:time]
|
5
|
+
formated_time=Time.at(time_get)
|
6
|
+
text ({ content: formated_time, x: 0, color: :orange })
|
7
|
+
text ({ content: history[33].to_s, y: 33, color: :orange })
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# input text example
|
2
|
+
|
3
|
+
def input_text(default_text)
|
4
|
+
t = text({ content: default_text, x: 333, y: 33, atome_id: :my_text_input })
|
5
|
+
t.visual(33)
|
6
|
+
t.key(:down) do |evt|
|
7
|
+
`if($("#"+#{t.atome_id}).text().length === 15 && event.keyCode != 8) {
|
8
|
+
event.preventDefault();
|
9
|
+
}`
|
10
|
+
w_get = JSUtils.client_width(t.atome_id)
|
11
|
+
t.width = :auto
|
12
|
+
t.width = if w_get > 300
|
13
|
+
300
|
14
|
+
else
|
15
|
+
:auto
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
t.key(:up) do |evt|
|
20
|
+
# todo: get and limit number of char
|
21
|
+
# we use .read to get the content according to the current language
|
22
|
+
# content_found=t.content.read
|
23
|
+
# content_length=content_found.values[0].length
|
24
|
+
# # t.content.read.length
|
25
|
+
# if content_length > 10
|
26
|
+
# t.content = content_found
|
27
|
+
# else
|
28
|
+
#
|
29
|
+
# end
|
30
|
+
w_get = JSUtils.client_width(t.atome_id)
|
31
|
+
t.width = if w_get < 99
|
32
|
+
99
|
33
|
+
elsif w_get > 300
|
34
|
+
300
|
35
|
+
else
|
36
|
+
:auto
|
37
|
+
end
|
38
|
+
JSUtils.client_height(t.atome_id)
|
39
|
+
# infos.content = w_get
|
40
|
+
end
|
41
|
+
|
42
|
+
t.border(({ color: :red, thickness: 3, pattern: :dashed }))
|
43
|
+
|
44
|
+
t.over do
|
45
|
+
t.visual({ select: :all })
|
46
|
+
end
|
47
|
+
|
48
|
+
t.touch do
|
49
|
+
t.visual({ select: :all })
|
50
|
+
end
|
51
|
+
return t
|
52
|
+
end
|
53
|
+
|
54
|
+
input_text("type here,15 char max!!")
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# internationalisation example
|
2
|
+
|
3
|
+
# t0=text({content: lorem })
|
4
|
+
t1=text({content: lorem })
|
5
|
+
t=text({content: :lorem, language: :english })
|
6
|
+
t.content({french: :salut, spanish: :hola, english: :hello, german: :hallo})
|
7
|
+
t1.content({french: :salut, spanish: :hola, english: :hello, german: :hallo})
|
8
|
+
t1.y(33)
|
9
|
+
# t0.y(66)
|
10
|
+
t.content.language({english: "hi there !!!"})
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# key
|
2
|
+
|
3
|
+
b=box({color: :orange, atome_id: :the_box, x: 69})
|
4
|
+
t=text({content: "type some text over the box, \n touch the circle to stop the input capture \n ", x: 150, y: 20})
|
5
|
+
b.key(options: :press) do |key|
|
6
|
+
t.content(key.key_code)
|
7
|
+
end
|
8
|
+
c=circle
|
9
|
+
c.x=c.y=96
|
10
|
+
c.touch do
|
11
|
+
b.key(options: :stop)
|
12
|
+
end
|
13
|
+
|
14
|
+
c2=circle({width: 300,y: 300, color: :orange})
|
15
|
+
t2=c2.text({content: "Here key will be captured on key up!", color: :black, x: 3, y: 15 , center: true})
|
16
|
+
c2.key({options: :up}) do |evt|
|
17
|
+
t2.content(evt.key_code)
|
18
|
+
t2.center(true)
|
19
|
+
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
# keyboard shortcut
|
2
|
+
|
3
|
+
grab(:view).key({options: :down}) do |evt|
|
4
|
+
if evt.alt_key
|
5
|
+
evt.stop_propagation
|
6
|
+
evt.stop_immediate_propagation
|
7
|
+
evt.prevent_default
|
8
|
+
case evt.key_code
|
9
|
+
when 65
|
10
|
+
#key a
|
11
|
+
unless grab(:code_editor)
|
12
|
+
#the restore the state found in the buffer object
|
13
|
+
if grab(:buffer).content[:code_editor]
|
14
|
+
code_editor_content = grab(:buffer).content[:code_editor][:content]
|
15
|
+
x_position = grab(:buffer).content[:code_editor][:x]
|
16
|
+
y_position = grab(:buffer).content[:code_editor][:y]
|
17
|
+
width_size = grab(:buffer).content[:code_editor][:width]
|
18
|
+
height_size = grab(:buffer).content[:code_editor][:height]
|
19
|
+
else
|
20
|
+
code_editor_content = :box
|
21
|
+
x_position = 0
|
22
|
+
y_position = 0
|
23
|
+
width_size=150
|
24
|
+
height_size=150
|
25
|
+
end
|
26
|
+
coding({atome_id: :code_editor, content: code_editor_content,
|
27
|
+
x: x_position,
|
28
|
+
y: y_position,
|
29
|
+
width: width_size,
|
30
|
+
height: height_size
|
31
|
+
})
|
32
|
+
evt.prevent_default
|
33
|
+
end
|
34
|
+
when 69
|
35
|
+
#key e
|
36
|
+
puts('console')
|
37
|
+
when 82
|
38
|
+
#key r
|
39
|
+
if grab(:code_editor)
|
40
|
+
evt.stop_propagation
|
41
|
+
evt.stop_immediate_propagation
|
42
|
+
evt.prevent_default
|
43
|
+
clear(:view)
|
44
|
+
compile(ATOME.get_ide_content("code_editor_code"))
|
45
|
+
end
|
46
|
+
when 84
|
47
|
+
#key t
|
48
|
+
when 89
|
49
|
+
#key y
|
50
|
+
when 90
|
51
|
+
#key z
|
52
|
+
if grab(:code_editor)
|
53
|
+
#the line below store the current state in the buffer object
|
54
|
+
grab(:buffer).content = grab(:buffer).content.merge(
|
55
|
+
code_editor: {content: ATOME.get_ide_content(:code_editor.to_s + "_code_editor"),
|
56
|
+
x: grab(:code_editor).x,
|
57
|
+
y: grab(:code_editor).y,
|
58
|
+
width: grab(:code_editor).width,
|
59
|
+
height: grab(:code_editor).height})
|
60
|
+
grab("code_editor").delete(true)
|
61
|
+
evt.prevent_default
|
62
|
+
end
|
63
|
+
else
|
64
|
+
end
|
65
|
+
elsif evt.ctrl_key
|
66
|
+
else
|
67
|
+
end
|
68
|
+
end
|
69
|
+
text("alt-a : open ide\nalt-z : close ide\nalt-r : compile code\n")
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# example listen speech recognition
|
2
|
+
|
3
|
+
t = text({content: "Say box, dessine moi un cercle, mets le en jaune, avance le vers la droite", y: 66, x: 33 })
|
4
|
+
t.touch do
|
5
|
+
listen(:stop)
|
6
|
+
end
|
7
|
+
listen(:french) do |sentence|
|
8
|
+
t.content = sentence
|
9
|
+
if sentence.include?("box")
|
10
|
+
if grab(:the_box)
|
11
|
+
grab(:the_box).delete(true)
|
12
|
+
end
|
13
|
+
|
14
|
+
box({ atome_id: :the_box, x: 333 })
|
15
|
+
if sentence.include?("red")
|
16
|
+
grab(:the_box).color("red")
|
17
|
+
end
|
18
|
+
if sentence.include?("smooth")
|
19
|
+
grab(:the_box).smooth(9)
|
20
|
+
end
|
21
|
+
elsif sentence.include?("circle")
|
22
|
+
if grab(:the_circle)
|
23
|
+
grab(:the_circle).delete(true)
|
24
|
+
end
|
25
|
+
circle({ atome_id: :the_circle, x: 66, y: 66 })
|
26
|
+
if sentence.include?("blue")
|
27
|
+
grab(:the_circle).color("blue")
|
28
|
+
end
|
29
|
+
elsif sentence.include?("cercle")
|
30
|
+
if grab(:the_circle)
|
31
|
+
grab(:the_circle).delete(true)
|
32
|
+
end
|
33
|
+
unless grab(:the_circle)
|
34
|
+
circle({ atome_id: :the_circle, x: 66, y: 66 })
|
35
|
+
end
|
36
|
+
if sentence.include?("jaune")
|
37
|
+
grab(:the_circle).color("yellow")
|
38
|
+
elsif sentence.include?("avance") && sentence.include?("droite")
|
39
|
+
grab(:the_circle).x=grab(:the_circle).x+90
|
40
|
+
elsif sentence.include?("recule") && sentence.include?("gauche")
|
41
|
+
grab(:the_circle).x=grab(:the_circle).x-90
|
42
|
+
end
|
43
|
+
# listen(:stop)
|
44
|
+
# listen(:start)
|
45
|
+
else
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
# mail example
|
2
|
+
|
3
|
+
text("touch the box to send mail to jeezs")
|
4
|
+
|
5
|
+
|
6
|
+
b=box({x: 333})
|
7
|
+
b.touch do
|
8
|
+
ATOME.message({type: :mail,from: 'contact@atome.one', to: 'jeezs@icloud.com', subject: "it's about...", content: 'hello jeezs! how are you', attachment:['/home/atome/www/public/medias/images/freebsd.png', '/home/atome/www/public/medias/images/jeezs.png']})
|
9
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# mask example
|
2
|
+
|
3
|
+
b=box({color: :transparent, x: 66})
|
4
|
+
v=b.video({ content: :avengers, size: 666 })
|
5
|
+
b.width=v.width
|
6
|
+
b.height=v.height
|
7
|
+
v.drag(true)
|
8
|
+
v.touch do
|
9
|
+
v.play(true)
|
10
|
+
end
|
11
|
+
# i=image({ content: :beach , size: 666})
|
12
|
+
v.touch do ||
|
13
|
+
v.mask({content: :atome, size: 333, position: :center})
|
14
|
+
end
|
15
|
+
b.shadow({ x: 7, y: 3, color: "rgba(0,0,0,0.5)", blur: 7 })
|
@@ -0,0 +1,24 @@
|
|
1
|
+
camera({atome_id: :camera_id, width: 777,height: 333, x: 33, y: 333, shadow: {blur: 6 , thickness: 1, x: 3, y:3, color: :black}})
|
2
|
+
b = box({ x: 200, y: 200, color: :white })
|
3
|
+
t1=b.text('Stop')
|
4
|
+
c = circle({ y: 200, color: :pink })
|
5
|
+
t=c.text('Rec')
|
6
|
+
c.touch do
|
7
|
+
b.color(:white)
|
8
|
+
c.color(:red)
|
9
|
+
t.content("recording")
|
10
|
+
t1.content(:stop)
|
11
|
+
`
|
12
|
+
recorderHelper.startRecording()
|
13
|
+
`
|
14
|
+
end
|
15
|
+
b.touch do
|
16
|
+
b.color(:black)
|
17
|
+
c.color(:pink)
|
18
|
+
t.content(:stop)
|
19
|
+
t1.content(:stopped)
|
20
|
+
|
21
|
+
`
|
22
|
+
recorderHelper.stopRecording()
|
23
|
+
`
|
24
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
`startMediaStreaming();`
|
2
|
+
|
3
|
+
mute_unmute_mic = box
|
4
|
+
|
5
|
+
mic_text = mute_unmute_mic.text("mic on")
|
6
|
+
mute_unmute_mic.color("yellow")
|
7
|
+
mute_unmute_mic.text("mic on")
|
8
|
+
mute_unmute_mic.z = 5
|
9
|
+
mute_unmute_mic.disposition(x: 5)
|
10
|
+
|
11
|
+
mute_unmute_mic.touch do
|
12
|
+
if mute_unmute_mic.color == "red"
|
13
|
+
mute_unmute_mic.color = 'yellow'
|
14
|
+
mic_text.content("mic on")
|
15
|
+
`mediaStreamingHelper.unmuteMicrophone();`
|
16
|
+
else
|
17
|
+
mute_unmute_mic.color("red")
|
18
|
+
mic_text.content("mic off")
|
19
|
+
`mediaStreamingHelper.muteMicrophone();`
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
pause_resume_webcam = box
|
24
|
+
|
25
|
+
webcam_text = pause_resume_webcam.text("webcam on")
|
26
|
+
pause_resume_webcam.color("yellow")
|
27
|
+
pause_resume_webcam.text("webcam on")
|
28
|
+
pause_resume_webcam.z = 5
|
29
|
+
pause_resume_webcam.disposition(x: 5)
|
30
|
+
|
31
|
+
pause_resume_webcam.touch do
|
32
|
+
if pause_resume_webcam.color == "red"
|
33
|
+
pause_resume_webcam.color = 'yellow'
|
34
|
+
webcam_text.content("webcam on")
|
35
|
+
`mediaStreamingHelper.resumeWebcam();`
|
36
|
+
else
|
37
|
+
pause_resume_webcam.color("red")
|
38
|
+
webcam_text.content("webcam off")
|
39
|
+
`mediaStreamingHelper.pauseWebcam();`
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
########################### meteo ####################################
|
2
|
+
|
3
|
+
def input_text(default_text)
|
4
|
+
t = text({ content: default_text, x: 333, y: 3, atome_id: :my_text_input })
|
5
|
+
t.visual(33)
|
6
|
+
|
7
|
+
t.key(:up) do |evt|
|
8
|
+
|
9
|
+
end
|
10
|
+
|
11
|
+
t.border(({ color: :red, thickness: 3, pattern: :dashed }))
|
12
|
+
|
13
|
+
t.over do
|
14
|
+
t.visual({ select: :all })
|
15
|
+
end
|
16
|
+
|
17
|
+
t.touch do
|
18
|
+
t.visual({ select: :all })
|
19
|
+
end
|
20
|
+
return t
|
21
|
+
end
|
22
|
+
|
23
|
+
input_text("clermont-ferrand")
|
24
|
+
|
25
|
+
text({ content: "temperature", y: 66, atome_id: :meteo_result })
|
26
|
+
|
27
|
+
def meteo_of(town)
|
28
|
+
meteo(town) do |data|
|
29
|
+
grab(:meteo_result).content("la temperature a #{town} est de : " + data.to_s)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
meteo_of("clermont-ferrand")
|
34
|
+
|
35
|
+
b = box({ x: 300, y: 3, size: 33, color: :red })
|
36
|
+
|
37
|
+
b.touch do
|
38
|
+
content_found = grab(:my_text_input).content.q_read
|
39
|
+
content_toe_send = content_found[grab(:view).language] || content_found[:default]
|
40
|
+
meteo_of content_toe_send
|
41
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
|
2
|
+
# midi example
|
3
|
+
|
4
|
+
c = circle({width: 33, height: 33, y: 33, x: 33, color: :black, atome_id: :the_c2})
|
5
|
+
c2 = circle({width: 33, height: 33, y: 33, x: 69, color: :red, atome_id: :the_c})
|
6
|
+
t=text({content: "", x: 33, y: 96, width: 333})
|
7
|
+
c.touch do
|
8
|
+
interfaces= c.transmit({midi: :inputs})
|
9
|
+
t.content(interfaces.join("\n"))
|
10
|
+
end
|
11
|
+
c2.touch do
|
12
|
+
interfaces= c.transmit({midi: :outputs})
|
13
|
+
t.content(interfaces.join("\n"))
|
14
|
+
end
|
15
|
+
cc = circle({width: 33, height: 33, y: 69, x: 69, color: :yellow, atome_id: :the_cc})
|
16
|
+
cc2 = circle({width: 33, height: 33, y: 69, x: 33, color: :yellow, atome_id: :the_cc2})
|
17
|
+
cc3 = circle({width: 33, height: 33, y: 96, x: 69, color: :green, atome_id: :the_cc3})
|
18
|
+
|
19
|
+
cc.touch({option: :down}) do
|
20
|
+
cc.transmit({midi: {play: {note: "C3", channel: 15, velocity: 10}}})
|
21
|
+
end
|
22
|
+
|
23
|
+
cc.touch({option: :up}) do
|
24
|
+
cc.transmit({midi: {stop: {note: "C3", channel: 15, velocity: 100}}})
|
25
|
+
end
|
26
|
+
|
27
|
+
cc2.touch({option: :down}) do
|
28
|
+
cc.transmit({midi: {play: {note: "E3", channel: 15, velocity: 10}}})
|
29
|
+
end
|
30
|
+
|
31
|
+
cc2.touch({option: :up}) do
|
32
|
+
cc.transmit({midi: {stop: {note: "E3", channel: 15, velocity: 100}}})
|
33
|
+
end
|
34
|
+
|
35
|
+
cc3.touch({option: :down}) do
|
36
|
+
cc.transmit({midi: {control: {controller: 33, value: 15}}})
|
37
|
+
end
|