atome 0.5.5.9.1 → 0.5.6.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +9 -2
- data/documentation/deep learning/basic_infos.txt +9 -17
- data/exe/atome +13 -13
- data/lib/atome/atome.rb +5 -6
- data/lib/atome/eve.rb +0 -0
- data/lib/atome/extensions/atome.rb +52 -0
- data/lib/atome/genesis/generators/atome.rb +3 -0
- data/lib/atome/genesis/generators/communication.rb +7 -2
- data/lib/atome/genesis/generators/geometry.rb +0 -3
- data/lib/atome/genesis/generators/spatial.rb +19 -40
- data/lib/atome/genesis/generators/utility.rb +16 -12
- data/lib/atome/genesis/genesis.rb +2 -1
- data/lib/atome/genesis/sparkle.rb +5 -2
- data/lib/atome/helpers/essentials.rb +9 -9
- data/lib/atome/helpers/utilities.rb +26 -0
- data/lib/atome/kernel/ruby +0 -0
- data/lib/atome/presets/atome.rb +4 -1
- data/lib/atome/version.rb +2 -1
- data/lib/atome.rb +1 -1
- data/lib/atome_relative.rb +1 -1
- data/lib/renderers/html/geometry.rb +30 -18
- data/lib/renderers/html/html.rb +11 -1
- data/lib/renderers/html/identity.rb +2 -1
- data/lib/renderers/html/spatial.rb +6 -7
- data/server/atome_server.rb +148 -0
- data/server/atome_server_wasm.rb +112 -0
- data/server/capture.rb +10 -0
- data/server/config.ru +13 -0
- data/src/css/style.css +162 -0
- data/src-tauri/.gitignore +4 -0
- data/src-tauri/Cargo.toml +27 -0
- data/src-tauri/build.rs +3 -0
- data/src-tauri/icons/128x128.png +0 -0
- data/src-tauri/icons/128x128@2x.png +0 -0
- data/src-tauri/icons/32x32.png +0 -0
- data/src-tauri/icons/Square107x107Logo.png +0 -0
- data/src-tauri/icons/Square142x142Logo.png +0 -0
- data/src-tauri/icons/Square150x150Logo.png +0 -0
- data/src-tauri/icons/Square284x284Logo.png +0 -0
- data/src-tauri/icons/Square30x30Logo.png +0 -0
- data/src-tauri/icons/Square310x310Logo.png +0 -0
- data/src-tauri/icons/Square44x44Logo.png +0 -0
- data/src-tauri/icons/Square71x71Logo.png +0 -0
- data/src-tauri/icons/Square89x89Logo.png +0 -0
- data/src-tauri/icons/StoreLogo.png +0 -0
- data/src-tauri/icons/icon.icns +0 -0
- data/src-tauri/icons/icon.ico +0 -0
- data/src-tauri/icons/icon.png +0 -0
- data/src-tauri/src/main.rs +71 -0
- data/src-tauri/tauri.conf.json +70 -0
- data/src-wasm/wasm/wasi-vfs-osx_arm +0 -0
- data/src-wasm/wasm/wasi-vfs-osx_x86 +0 -0
- data/src-wasm/wasm/wasi-vfs-unix +0 -0
- data/src-wasm/wasm/wasi-vfs.exe +0 -0
- data/vendor/assets/application/examples/center.rb +2 -3
- data/vendor/assets/application/examples/compute.rb +1 -1
- data/vendor/assets/application/examples/css.rb +6 -0
- data/vendor/assets/application/examples/int8.rb +4 -1
- data/vendor/assets/application/examples/selected.rb +6 -0
- data/vendor/assets/application/examples/sub_atome_manipulation.rb +19 -0
- data/vendor/assets/application/examples/test.rb +19 -12
- data/vendor/assets/application/examples/unit.rb +1 -1
- data/vendor/assets/application/index.rb +1 -1
- data/vendor/assets/server/atome_server.rb +178 -33
- data/vendor/assets/src/index_server.html +2 -0
- data/vendor/assets/src/index_server_wasm.html +1 -0
- data/vendor/assets/src/js/atome/atome_helpers/communication.js +2 -4
- metadata +38 -12
- data/vendor/assets/application/required_example.rb +0 -1
- data/vendor/assets/application/test.rb +0 -29
- data/vendor/assets/application/works/photos.rb +0 -672
- data/vendor/assets/application/works/photos2.rb +0 -218
- data/vendor/assets/application/works/photos3.rb +0 -343
- data/vendor/assets/application/works/photos4.rb +0 -34
- data/vendor/assets/application/works/photos6.rb +0 -6
- data/vendor/assets/application/works/vie.rb +0 -196
- /data/{vendor/assets/application/works/trigga.rb → Guardfile} +0 -0
- /data/vendor/assets/application/examples/{presets.rb → preset.rb} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8723d92d171605dde5e7804554d0565a59ae6f772f2629a25f8ac82b03cf6c68
|
4
|
+
data.tar.gz: 36539ec4e3587e178e771571e3f2ed833bbcd7f36d8a2d33fc33e8212890bd77
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7e36f92c209efba8c326f976689804a4283fe7b1230d41425571299f7d4954681d5cd36bb3d9414f0edb737cadafbc08792efba457c1e479e27eeaa285526adf
|
7
|
+
data.tar.gz: f9350e9bfe6a2d428e53b88d51e603bbdace00ae8953ef325b4180d90769980e51bb71eb7148b1e93c5185081c92dfde27beb0f7f0d5157a561049d4d84c6f38
|
data/Rakefile
CHANGED
@@ -285,7 +285,7 @@ task :osx_server do
|
|
285
285
|
|
286
286
|
end
|
287
287
|
|
288
|
-
|
288
|
+
def gem_builder
|
289
289
|
# building the gem
|
290
290
|
`rake build` # run build_app thru ARGV in exe atome
|
291
291
|
# installing the gem
|
@@ -301,14 +301,21 @@ task :build_gem do
|
|
301
301
|
`cd pkg; gem install atome --local`
|
302
302
|
# open the app
|
303
303
|
end
|
304
|
+
end
|
305
|
+
|
306
|
+
task :build_gem do
|
307
|
+
gem_builder
|
304
308
|
|
305
309
|
puts 'atome gem built and installed'
|
306
310
|
end
|
307
311
|
|
308
312
|
|
309
313
|
task :push_gem do
|
310
|
-
# pushing the gem
|
311
314
|
|
315
|
+
# building gem
|
316
|
+
gem_builder
|
317
|
+
|
318
|
+
# pushing the gem
|
312
319
|
dir_path = './pkg'
|
313
320
|
entries = Dir.entries(dir_path)
|
314
321
|
|
@@ -109,12 +109,13 @@ cd my_app
|
|
109
109
|
atome run browser
|
110
110
|
|
111
111
|
|
112
|
+
getter setter for atome are situated in lib/atome/genesis/genesis.rb : def new_atome(element, &method_proc)
|
113
|
+
the getter return a group from the collected atomes ( all included atomes)
|
112
114
|
|
113
115
|
|
114
116
|
|
115
|
-
|
116
|
-
#
|
117
|
-
#If you need to update it or add a JS library you need to clone : https://github.com/atomecorp/atome_third_parties_js.git
|
117
|
+
# Third parties's javascript libraries are located at different location
|
118
|
+
# If you need to update it or add a JS library you need to clone : https://github.com/atomecorp/atome_third_parties_js.git
|
118
119
|
|
119
120
|
The importance of the type :
|
120
121
|
|
@@ -145,12 +146,9 @@ class Object
|
|
145
146
|
renderers are build here : /Users/jean-ericgodard/Documents/Work/codes/atome/lib/atome/genesis/genesis.rb
|
146
147
|
def build_render(renderer_name, &method_proc)
|
147
148
|
|
149
|
+
remove condition /Users/jean-ericgodard/Documents/Work/codes/atome/lib/renderers/renderer.rb in def rendering
|
148
150
|
|
149
|
-
|
150
|
-
|
151
|
-
remove condition /Users/jean-ericgodard/Documents/Work/codes/atome/lib/renderers/renderer.rb in def rendering
|
152
|
-
|
153
|
-
New particle exemple :
|
151
|
+
New particle example :
|
154
152
|
|
155
153
|
new({ particle: :shell })
|
156
154
|
# automatically create a @shell instance variable in the atome to store the value
|
@@ -216,7 +214,6 @@ To save manually you can use the store method , like this :
|
|
216
214
|
|
217
215
|
store({build: :my_data })
|
218
216
|
|
219
|
-
|
220
217
|
The modifier atomes (color, shadow)
|
221
218
|
Here is the mechanism of such atome:
|
222
219
|
|
@@ -232,15 +229,12 @@ Each Each particles and atome is store as an :
|
|
232
229
|
It may need a bit more optimization
|
233
230
|
|
234
231
|
|
235
|
-
Atomes have a special method to
|
232
|
+
Atomes have a special method to monitor all attached /affected atomes , call : Atome.global_monitoring
|
236
233
|
Code at : helpers/utilities.rb /def global_monitoring
|
237
234
|
Usage :
|
238
235
|
Atome.global_monitoring(self, [:red, :blue, :blue, :alpha, :left, :right, :diffusion], [:variable1, :variable2])
|
239
236
|
|
240
|
-
|
241
|
-
The ephemera @new_atome to allow access to data send to the atome at init time
|
242
|
-
|
243
|
-
|
237
|
+
The ephemera @new_atome to allow access to data send to the atome at init time
|
244
238
|
|
245
239
|
Important : for atomes that needs to be attached or apply to
|
246
240
|
This happen in the method in presets/atome.rb : atome_common
|
@@ -248,8 +242,6 @@ at this line :
|
|
248
242
|
if params[:type] == :color || basic_params[:type] == :color || params[:type] == :shadow || basic_params[:type] == :shadow
|
249
243
|
|
250
244
|
|
251
|
-
|
252
|
-
|
253
245
|
Sanitizer , pre, post , after in atome/helpers/utilities.rb
|
254
246
|
|
255
247
|
Sanitizer :
|
@@ -275,7 +267,7 @@ To alter a particle before getting the value
|
|
275
267
|
|
276
268
|
|
277
269
|
|
278
|
-
pay attention to atome category
|
270
|
+
pay attention to atome category material vs modifier
|
279
271
|
color, shadow and paint are modifier
|
280
272
|
while shape, image, vector, video audio are materials
|
281
273
|
|
data/exe/atome
CHANGED
@@ -184,6 +184,7 @@ def create_application(source, destination, project_name)
|
|
184
184
|
end
|
185
185
|
|
186
186
|
def update_application(source, destination, project_name)
|
187
|
+
`gem install atome`
|
187
188
|
project_path = "#{destination}/#{project_name}"
|
188
189
|
FileUtils.mkdir_p(destination) unless Dir.exist?(destination)
|
189
190
|
FileUtils.mkdir_p(project_path) unless Dir.exist?(project_path)
|
@@ -664,17 +665,17 @@ else
|
|
664
665
|
build_host_mode(destination, project_name, 'web-opal')
|
665
666
|
threads = []
|
666
667
|
threads << Thread.new do
|
667
|
-
sleep 1
|
668
|
-
if RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/
|
669
|
-
|
670
|
-
|
671
|
-
elsif RbConfig::CONFIG['host_os'] =~ /darwin|mac os/
|
672
|
-
|
673
|
-
|
674
|
-
else
|
675
|
-
|
676
|
-
|
677
|
-
end
|
668
|
+
# sleep 1
|
669
|
+
# if RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/
|
670
|
+
# # code to exec with Windows
|
671
|
+
# `start "" "#{destination}\\#{project_name}\\src\\index_server.html`
|
672
|
+
# elsif RbConfig::CONFIG['host_os'] =~ /darwin|mac os/
|
673
|
+
# # code to exec with MacOS
|
674
|
+
# `open http://localhost:9292`
|
675
|
+
# else
|
676
|
+
# # code to exec with Unix/Linux
|
677
|
+
# `open http://localhost:9292`
|
678
|
+
# end
|
678
679
|
end
|
679
680
|
threads << Thread.new do
|
680
681
|
build_for_server(destination, project_name, 9292, false)
|
@@ -688,7 +689,7 @@ else
|
|
688
689
|
build_opal_application(nil, destination, project_name)
|
689
690
|
if RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/
|
690
691
|
# code to exec with Windows
|
691
|
-
`start "" "#{destination}\\#{project_name}\\src\\
|
692
|
+
`start "" "#{destination}\\#{project_name}\\src\\index_server.html`
|
692
693
|
elsif RbConfig::CONFIG['host_os'] =~ /darwin|mac os/
|
693
694
|
# code to exec with MacOS
|
694
695
|
`open http://localhost:9292`
|
@@ -706,7 +707,6 @@ else
|
|
706
707
|
end
|
707
708
|
|
708
709
|
puts 'building Android' if ARGV.include?('android')
|
709
|
-
|
710
710
|
puts 'building iOS' if ARGV.include?('ios')
|
711
711
|
puts 'building Windows' if ARGV.include?('windows')
|
712
712
|
puts 'building Linux' if ARGV.include?('linux')
|
data/lib/atome/atome.rb
CHANGED
@@ -14,9 +14,12 @@ class Atome
|
|
14
14
|
@callback = {}
|
15
15
|
@tag = {}
|
16
16
|
@selected = false
|
17
|
-
|
17
|
+
#@metrics = {}
|
18
18
|
@unit = {}
|
19
19
|
@collect = {}
|
20
|
+
@collect = {}
|
21
|
+
@int8= {}
|
22
|
+
@css = {}
|
20
23
|
@id = new_atome[:id] || identity_generator(:element)
|
21
24
|
@type = new_atome[:type] || :element
|
22
25
|
@attached = []
|
@@ -28,11 +31,7 @@ class Atome
|
|
28
31
|
# now we store the proc in a an atome's property called :bloc
|
29
32
|
new_atome[:code] = atomes_proc if atomes_proc
|
30
33
|
# we reorder the hash
|
31
|
-
|
32
|
-
ordered_part = ordered_keys.map { |k| [k, new_atome[k]] }.to_h
|
33
|
-
other_part = new_atome.reject { |k, _| ordered_keys.include?(k) }
|
34
|
-
# merge the parts to obtain an re-ordered hash
|
35
|
-
reordered_atome = ordered_part.merge(other_part)
|
34
|
+
reordered_atome =reorder_particles(new_atome)
|
36
35
|
|
37
36
|
# FIXME : try to remove the condition below (it crash in the method : def generator ... in genesis.rb)
|
38
37
|
collapse(reordered_atome)
|
data/lib/atome/eve.rb
ADDED
File without changes
|
@@ -40,6 +40,17 @@ class Object
|
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
43
|
+
def reorder_particles(hash_to_reorder)
|
44
|
+
# we reorder the hash
|
45
|
+
ordered_keys = %i[renderers id alien type attach int8 unit]
|
46
|
+
|
47
|
+
ordered_part = ordered_keys.map { |k| [k, hash_to_reorder[k]] }.to_h
|
48
|
+
other_part = hash_to_reorder.reject { |k, _| ordered_keys.include?(k) }
|
49
|
+
# merge the parts to obtain an re-ordered hash
|
50
|
+
reordered_hash = ordered_part.merge(other_part)
|
51
|
+
reordered_hash
|
52
|
+
end
|
53
|
+
|
43
54
|
def delete (atomes)
|
44
55
|
grab(:view).delete(atomes)
|
45
56
|
end
|
@@ -484,3 +495,44 @@ class Object
|
|
484
495
|
end
|
485
496
|
|
486
497
|
end
|
498
|
+
|
499
|
+
|
500
|
+
class CssProxy
|
501
|
+
def initialize(js, parent_key = nil, current_atome)
|
502
|
+
@js = js
|
503
|
+
@css={}
|
504
|
+
@parent_key = parent_key
|
505
|
+
@style = {}
|
506
|
+
@current_atome=current_atome
|
507
|
+
end
|
508
|
+
|
509
|
+
|
510
|
+
def [](key)
|
511
|
+
if @parent_key
|
512
|
+
@current_atome.instance_variable_get('@css')[@parent_key]&.[](key)
|
513
|
+
else
|
514
|
+
CssProxy.new(@js, key, @current_atome)
|
515
|
+
end
|
516
|
+
end
|
517
|
+
|
518
|
+
|
519
|
+
|
520
|
+
def []=(key, value)
|
521
|
+
if @parent_key
|
522
|
+
@js[@parent_key][key] = value
|
523
|
+
@current_atome.instance_variable_set('@css',{@parent_key => {key => value}})
|
524
|
+
@css[@parent_key]={key => value}
|
525
|
+
puts "==> Clé parente: #{@parent_key}, Clé: #{key}, Valeur: #{value}"
|
526
|
+
else
|
527
|
+
@style[key] = value
|
528
|
+
@js[key] = value
|
529
|
+
end
|
530
|
+
|
531
|
+
@js.update_style(@style) if @parent_key.nil?
|
532
|
+
end
|
533
|
+
|
534
|
+
def to_s
|
535
|
+
@current_atome.instance_variable_get('@css').to_s
|
536
|
+
end
|
537
|
+
|
538
|
+
end
|
@@ -1,8 +1,13 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
new({ particle: :connection }) do |params, bloc|
|
4
|
-
params = { server: params }
|
5
|
-
|
4
|
+
# params = { server: params }
|
5
|
+
# type = { server: params }
|
6
|
+
params[:user] = Universe.current_user
|
7
|
+
params[:pass] = Black_matter.password
|
8
|
+
params[:atomes] = Universe.atome_list
|
9
|
+
params[:particles] = Universe.particle_list
|
10
|
+
html.connect(params, &bloc)
|
6
11
|
end
|
7
12
|
|
8
13
|
new({ particle: :message }) do |params, bloc|
|
@@ -1,29 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
# {value: params, unit: :px} unless params.instance_of? Hash
|
8
|
-
# end
|
9
|
-
# new({ particle: :top, type: :integer })do |params|
|
10
|
-
# {value: params, unit: :px} unless params.instance_of? Hash
|
11
|
-
#
|
12
|
-
# end
|
13
|
-
# new({ particle: :bottom, type: :integer })do |params|
|
14
|
-
# {value: params, unit: :px} unless params.instance_of? Hash
|
15
|
-
# end
|
16
|
-
|
17
|
-
new ({particle: :left})
|
18
|
-
new ({particle: :right})
|
19
|
-
new ({particle: :top})
|
20
|
-
new ({particle: :bottom})
|
21
|
-
|
22
|
-
|
3
|
+
new({ particle: :left })
|
4
|
+
new({ particle: :right })
|
5
|
+
new({ particle: :top })
|
6
|
+
new({ particle: :bottom })
|
23
7
|
new({ particle: :rotate, type: :integer })
|
24
8
|
new({ particle: :direction, type: :string })
|
25
|
-
new({ particle: :
|
26
|
-
new({particle: :depth, type: :integer})
|
9
|
+
new({ particle: :depth, type: :integer })
|
27
10
|
new({ particle: :position })
|
28
11
|
new({ particle: :organise })
|
29
12
|
new({ particle: :spacing })
|
@@ -32,7 +15,6 @@ new({ particle: :display }) do |params|
|
|
32
15
|
params
|
33
16
|
end
|
34
17
|
new({ particle: :layout }) do |params|
|
35
|
-
|
36
18
|
mode_found = params.delete(:mode) || :list
|
37
19
|
elements_style = params.delete(:element) || {}
|
38
20
|
# now we get the list of the atome to layout
|
@@ -45,14 +27,13 @@ new({ particle: :layout }) do |params|
|
|
45
27
|
atomes_to_organise.each do |atome_id_to_organise|
|
46
28
|
atome_found = grab(atome_id_to_organise)
|
47
29
|
# now restoring
|
48
|
-
|
49
|
-
atome_found.backup.each do |particle, value|
|
50
|
-
atome_found.send(:delete, particle)
|
51
|
-
atome_found.send(particle, value)
|
52
|
-
end
|
53
|
-
atome_found.remove_layout
|
54
|
-
end
|
30
|
+
next unless atome_found.backup
|
55
31
|
|
32
|
+
atome_found.backup.each do |particle, value|
|
33
|
+
atome_found.send(:delete, particle)
|
34
|
+
atome_found.send(particle, value)
|
35
|
+
end
|
36
|
+
atome_found.remove_layout
|
56
37
|
end
|
57
38
|
else
|
58
39
|
|
@@ -76,12 +57,10 @@ new({ particle: :layout }) do |params|
|
|
76
57
|
atomes_to_organise.each do |atome_id_to_organise|
|
77
58
|
atome_found = grab(atome_id_to_organise)
|
78
59
|
# now restoring
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
end
|
84
|
-
# atome_found.remove_layout
|
60
|
+
# atome_found.remove_layout
|
61
|
+
atome_found.backup&.each do |particle, value|
|
62
|
+
atome_found.send(:delete, particle)
|
63
|
+
atome_found.send(particle, value)
|
85
64
|
end
|
86
65
|
# we remove previous display mode
|
87
66
|
atome_found.remove_layout
|
@@ -107,7 +86,7 @@ new({ particle: :layout }) do |params|
|
|
107
86
|
end
|
108
87
|
params
|
109
88
|
end
|
110
|
-
new({particle: :center})
|
111
|
-
|
112
|
-
|
113
|
-
|
89
|
+
new({ particle: :center, type: :hash }) do |params|
|
90
|
+
params = { x: 0, y: 0, dynamic: true } if params == true
|
91
|
+
params
|
92
|
+
end
|
@@ -65,17 +65,16 @@ new({ particle: :delete, render: false }) do |params|
|
|
65
65
|
end
|
66
66
|
new({ particle: :clear })
|
67
67
|
|
68
|
-
|
69
68
|
new({ post: :clear }) do
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
69
|
+
attached_found = []
|
70
|
+
attached.each do |attached_id_found|
|
71
|
+
attached_found << attached_id_found
|
72
|
+
end
|
73
|
+
attached_found.each do |child_id_found|
|
74
|
+
child_found = grab(child_id_found)
|
75
|
+
# we exclude system objects
|
76
|
+
child_found&.delete(true) unless child_found.tag && child_found.tag[:system]
|
77
|
+
end
|
79
78
|
end
|
80
79
|
new({ particle: :path })
|
81
80
|
new({ particle: :schedule }) do |date, proc|
|
@@ -113,7 +112,7 @@ end
|
|
113
112
|
new({ particle: :relations, type: :hash })
|
114
113
|
new({ particle: :tag, render: false, type: :hash })
|
115
114
|
new({ particle: :web })
|
116
|
-
new({ particle: :metrics, type: :hash })
|
115
|
+
# new({ particle: :metrics, type: :hash })
|
117
116
|
new({ initialize: :unit, value: {} })
|
118
117
|
new({ particle: :login }) do |params|
|
119
118
|
set_current_user(id) if params
|
@@ -239,10 +238,15 @@ new({ particle: :compute }) do |params|
|
|
239
238
|
params
|
240
239
|
end
|
241
240
|
|
242
|
-
|
243
241
|
new({ particle: :get }) do |params|
|
244
242
|
cell = params[:cell]
|
245
243
|
row_nb = cell[0]
|
246
244
|
column_nb = cell[1]
|
247
245
|
data[row_nb][data[row_nb].keys[column_nb]] # we get the content of the cell
|
246
|
+
end
|
247
|
+
|
248
|
+
new ({ particle: :css })
|
249
|
+
|
250
|
+
new({ read: :css }) do
|
251
|
+
CssProxy.new(js, nil, self)
|
248
252
|
end
|
@@ -72,7 +72,7 @@ Atome.new(
|
|
72
72
|
# unreal port, hold system object and tools
|
73
73
|
Atome.new(
|
74
74
|
{ renderers: default_render, id: :intuition, type: :shape, attach: :user_view, tag: { system: true },
|
75
|
-
left: 0, top: 0, width: 0, height:
|
75
|
+
left: 0, top: 0, bottom: 0,width: 0, height: :auto, overflow: :visible
|
76
76
|
}
|
77
77
|
)
|
78
78
|
|
@@ -137,4 +137,7 @@ STR
|
|
137
137
|
code_text.touch(true) do
|
138
138
|
eval(code)
|
139
139
|
end
|
140
|
-
end
|
140
|
+
end
|
141
|
+
|
142
|
+
# we init server default address
|
143
|
+
A.server({ address: 'localhost:9292' , type: 'ws'})
|
@@ -22,18 +22,18 @@ module Essentials
|
|
22
22
|
video: { type: :video },
|
23
23
|
animation: { type: :animation, attach: :black_matter },
|
24
24
|
element: { type: :element, renderers: [], attach: :black_matter },
|
25
|
-
box: { type: :shape, width:
|
25
|
+
box: { type: :shape, width: 39, height: 39,
|
26
26
|
apply: [:box_color],
|
27
|
-
left:
|
28
|
-
vector: { type: :vector, width:
|
29
|
-
left:
|
30
|
-
circle: { type: :shape, width:
|
27
|
+
left: 0, top: 0, preset: :box },
|
28
|
+
vector: { type: :vector, width: 39, height: 39,
|
29
|
+
left: 0, top: 0, preset: :vector, definition: corp },
|
30
|
+
circle: { type: :shape, width: 39, height: 39, smooth: '100%',
|
31
31
|
apply: [:circle_color],
|
32
|
-
left:
|
33
|
-
shape: { type: :shape, width:
|
32
|
+
left: 0, top: 0, preset: :circle },
|
33
|
+
shape: { type: :shape, width: 39, height: 39,
|
34
34
|
apply: [:shape_color],
|
35
|
-
left:
|
36
|
-
text: { type: :text, component: { size:
|
35
|
+
left: 0, top: 0 },
|
36
|
+
text: { type: :text, component: { size: 12 },left: 0, top: 0,
|
37
37
|
apply: [:text_color],
|
38
38
|
width: :auto, height: :auto, language: :english },
|
39
39
|
drm: { type: :drm, attach: :black_matter },
|
@@ -21,6 +21,9 @@ class Atome
|
|
21
21
|
JS.eval(js_command)
|
22
22
|
end
|
23
23
|
|
24
|
+
|
25
|
+
|
26
|
+
|
24
27
|
# def global_monitoring(instance, methods_to_monitor, variables_to_monitor)
|
25
28
|
# methods_to_monitor.each do |methode|
|
26
29
|
# original_method = instance.method(methode)
|
@@ -282,6 +285,14 @@ class Atome
|
|
282
285
|
end
|
283
286
|
end
|
284
287
|
|
288
|
+
def each_with_index(&proc)
|
289
|
+
index=0
|
290
|
+
collect.each do |val|
|
291
|
+
instance_exec(val,index, &proc) if proc.is_a?(Proc)
|
292
|
+
index+=1
|
293
|
+
end
|
294
|
+
end
|
295
|
+
|
285
296
|
def <<(item)
|
286
297
|
collect << item
|
287
298
|
end
|
@@ -330,5 +341,20 @@ class Atome
|
|
330
341
|
parent_found.delete(true)
|
331
342
|
end
|
332
343
|
end
|
344
|
+
def server(server_params=nil)
|
345
|
+
if server_params
|
346
|
+
@current_server= server_params
|
347
|
+
else
|
348
|
+
@current_server
|
349
|
+
end
|
350
|
+
|
351
|
+
end
|
352
|
+
|
353
|
+
def init_websocket
|
354
|
+
connection(server)
|
355
|
+
end
|
333
356
|
|
334
357
|
end
|
358
|
+
|
359
|
+
|
360
|
+
|
File without changes
|
data/lib/atome/presets/atome.rb
CHANGED
@@ -34,7 +34,9 @@ class Atome
|
|
34
34
|
else
|
35
35
|
params[:attach] = params[:attach] || @id || :view
|
36
36
|
end
|
37
|
-
|
37
|
+
# # we reorder the hash
|
38
|
+
reordered_params =reorder_particles(params)
|
39
|
+
reordered_params
|
38
40
|
end
|
39
41
|
|
40
42
|
def preset_common(params, &bloc)
|
@@ -44,6 +46,7 @@ class Atome
|
|
44
46
|
end
|
45
47
|
|
46
48
|
def box(params = {}, &bloc)
|
49
|
+
|
47
50
|
atome_preset = :box
|
48
51
|
params = atome_common(atome_preset, params)
|
49
52
|
preset_common(params, &bloc)
|
data/lib/atome/version.rb
CHANGED
data/lib/atome.rb
CHANGED
data/lib/atome_relative.rb
CHANGED
@@ -1,27 +1,39 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
new({ method: :width, type: :integer, renderer: :html }) do |value, _user_proc|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
3
|
+
# new({ method: :width, type: :integer, renderer: :html }) do |value, _user_proc|
|
4
|
+
# unit_found = metrics[:width]
|
5
|
+
# if unit_found
|
6
|
+
# html.style(:width, "#{value}#{unit_found}")
|
7
|
+
# elsif value.is_a?(Numeric)
|
8
|
+
# html.style(:width, "#{value}px")
|
9
|
+
# else
|
10
|
+
# html.style(:width, value)
|
11
|
+
# end
|
12
|
+
# end
|
13
|
+
#
|
14
|
+
# new({ method: :height, renderer: :html, type: :string }) do |value, _user_proc|
|
15
|
+
# unit_found = metrics,
|
16
|
+
# [:height]
|
17
|
+
# if unit_found
|
18
|
+
# html.style(:height, "#{value}#{unit_found}")
|
19
|
+
# elsif value.is_a?(Numeric)
|
20
|
+
# html.style(:height, "#{value}px")
|
21
|
+
# else
|
22
|
+
# html.style(:height, value)
|
23
|
+
# end
|
24
|
+
# end
|
25
|
+
|
26
|
+
new({ method: :width, renderer: :html, type: :int }) do |params, _user_proc|
|
27
|
+
unit = @unit[:width] || :px if params.is_a? Numeric
|
28
|
+
js[:style][:width] = "#{params}#{unit}"
|
12
29
|
end
|
13
30
|
|
14
|
-
new({ method: :height, renderer: :html, type: :
|
15
|
-
|
16
|
-
|
17
|
-
html.style(:height, "#{value}#{unit_found}")
|
18
|
-
elsif value.is_a?(Numeric)
|
19
|
-
html.style(:height, "#{value}px")
|
20
|
-
else
|
21
|
-
html.style(:height, value)
|
22
|
-
end
|
31
|
+
new({ method: :height, renderer: :html, type: :int }) do |params, _user_proc|
|
32
|
+
unit = @unit[:height] || :px if params.is_a? Numeric
|
33
|
+
js[:style][:height] = "#{params}#{unit}"
|
23
34
|
end
|
24
35
|
|
36
|
+
|
25
37
|
# new({ method: :size, type: :hash, renderer: :html }) do |value, _user_proc|
|
26
38
|
# # html.style('fontSize',"#{value}px")
|
27
39
|
# end
|