atome 0.5.7.0.4 → 0.5.7.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/atome/genesis/particles/identity.rb +16 -14
- data/lib/atome/genesis/particles/material.rb +14 -18
- data/lib/atome/genesis/particles/utility.rb +1 -4
- data/lib/atome/kernel/universe.rb +2 -1
- data/lib/atome/utilities/utilities.rb +1 -1
- data/lib/atome/version.rb +1 -1
- data/lib/renderers/html/material.rb +3 -3
- data/vendor/assets/application/examples/refresh.rb +6 -7
- data/vendor/assets/application/examples/selected.rb +21 -15
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 23166944704e42b25801cc052708c19f265c1f8247dd3ff9b099944ecb415401
|
4
|
+
data.tar.gz: 38a31b2cdcc6ceeef5453b926ee4d7eaf704e48c58039830126a94b5a430c188
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86db3598d96617483482c8e97006bf3fe2e981be529cd871e75b7370b55838002914192c64dcb4b46cf72313f470a91a9ff3f2408fa5914439b84126c924cd44
|
7
|
+
data.tar.gz: 655b083c5529f5ed4c642ee5c7457d2940062914433e072a582964ae1e7a4932423731b3a353d0f927d1d6db5b5d56386907d91d7011dfca53979b4e3c532608
|
@@ -15,7 +15,6 @@ new({ sanitizer: :id }) do |params|
|
|
15
15
|
# Universe.add_to_atomes(params, self)
|
16
16
|
# end
|
17
17
|
|
18
|
-
|
19
18
|
# Universe.atomes.each do |_aid,atome_f|
|
20
19
|
#
|
21
20
|
# if atome_f.id == params
|
@@ -64,24 +63,27 @@ end
|
|
64
63
|
|
65
64
|
new(particle: :selected, category: :identity, type: :boolean) do |params|
|
66
65
|
if params == true
|
67
|
-
@selection_style=[]
|
68
|
-
select_style= border({ thickness: 3, red: 1, green: 1, blue: 1, alpha: 1, pattern: :dotted })
|
66
|
+
@selection_style = []
|
67
|
+
# select_style= border({ thickness: 3, red: 1, green: 1, blue: 1, alpha: 1, pattern: :dotted })
|
68
|
+
default_style = Universe.default_selection_style
|
69
|
+
select_style = ''
|
70
|
+
default_style.each do |atome_f, part_f|
|
71
|
+
select_style = send(atome_f, part_f)
|
72
|
+
end
|
69
73
|
@selection_style << select_style.id
|
70
74
|
grab(Universe.current_user).selection << @id
|
71
75
|
elsif params == false
|
72
|
-
@selection_style
|
73
|
-
|
74
|
-
|
75
|
-
@selection_style=nil
|
76
|
+
@selection_style&.each do |style_f|
|
77
|
+
remove(style_f)
|
78
|
+
end
|
79
|
+
@selection_style = nil
|
76
80
|
grab(Universe.current_user).selection.collect.delete(@id)
|
77
81
|
else
|
78
|
-
@selection_style=[]
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
# border({ thickness: 3, red: 1, green: 0, blue: 1, alpha: 1, pattern: :dotted })
|
84
|
-
# border({ thickness: 10, pattern: :solid, color: :red})
|
82
|
+
@selection_style = []
|
83
|
+
params.each do |part_f, val_f|
|
84
|
+
select_style = send(part_f, val_f)
|
85
|
+
@selection_style << select_style.id
|
86
|
+
end
|
85
87
|
grab(Universe.current_user).selection << @id
|
86
88
|
end
|
87
89
|
params
|
@@ -13,37 +13,33 @@ new({ particle: :hide, category: :material, type: :boolean })
|
|
13
13
|
|
14
14
|
new({ particle: :remove, category: :property, type: :hash }) do |params|
|
15
15
|
|
16
|
-
|
17
|
-
if params.instance_of? Hash
|
16
|
+
if params.instance_of? Hash
|
18
17
|
if params[:row]
|
19
18
|
data.delete_at(params[:row])
|
20
|
-
|
21
19
|
elsif params[:column]
|
22
20
|
column = params[:column]
|
23
21
|
data.map do |hash|
|
24
22
|
hash.delete(hash.keys[column]) if hash.keys[column]
|
25
|
-
hash
|
26
23
|
end
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
24
|
+
# elsif params[:all]
|
25
|
+
# apply.each do |applied_atome|
|
26
|
+
# if grab(applied_atome).type.to_sym == params[:all].to_sym
|
27
|
+
# puts "!go"
|
28
|
+
# end
|
29
|
+
# end
|
33
30
|
# puts "so_good #{params}"
|
34
31
|
# puts "***> #{apply}"
|
35
32
|
end
|
33
|
+
|
36
34
|
params
|
37
35
|
else
|
38
36
|
|
39
37
|
params
|
40
38
|
end
|
41
39
|
|
42
|
-
|
43
40
|
end
|
44
41
|
# new({ particle: :remove, category: :property, type: :hash })
|
45
42
|
|
46
|
-
|
47
43
|
new({ post: :remove }) do |params|
|
48
44
|
# TODO : we have to rethink the removal of atome and particles (with exception like category) and maybe 'use particle type' to handle removal
|
49
45
|
if params.instance_of?(Hash)
|
@@ -100,22 +96,22 @@ end
|
|
100
96
|
new({ particle: :gradient, category: :material, type: :int })
|
101
97
|
|
102
98
|
new({ particle: :thickness, category: :material, type: :int })
|
103
|
-
new({ after: :thickness}) do |params|
|
104
|
-
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
99
|
+
new({ after: :thickness }) do |params|
|
100
|
+
a = affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
105
101
|
a.each do |atome_to_refresh|
|
106
102
|
grab(atome_to_refresh).apply(id)
|
107
103
|
end
|
108
104
|
params
|
109
105
|
end
|
110
106
|
new({ particle: :pattern, category: :material, type: :string })
|
111
|
-
new({ after: :pattern })do |params|
|
112
|
-
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
107
|
+
new({ after: :pattern }) do |params|
|
108
|
+
a = affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
113
109
|
a.each do |atome_to_refresh|
|
114
110
|
grab(atome_to_refresh).apply(id)
|
115
111
|
end
|
116
112
|
params
|
117
113
|
end
|
118
114
|
# new({ particle: :border, category: :material, type: :int })
|
119
|
-
new({particle: :fill, category: :material, type: :array })
|
115
|
+
new({ particle: :fill, category: :material, type: :array })
|
120
116
|
|
121
|
-
new({particle: :opacity, category: :material, type: :int })
|
117
|
+
new({ particle: :opacity, category: :material, type: :int })
|
@@ -25,7 +25,6 @@ def delete_recursive(atome_id)
|
|
25
25
|
end
|
26
26
|
|
27
27
|
new({ particle: :delete, category: :utility, type: :boolean, render: false }) do |params|
|
28
|
-
|
29
28
|
if params == true
|
30
29
|
# We use the tag persistent to exclude color of system object and other default colors
|
31
30
|
unless @tag && (@tag[:persistent] || @tag[:system])
|
@@ -38,13 +37,11 @@ new({ particle: :delete, category: :utility, type: :boolean, render: false }) do
|
|
38
37
|
parent_found = grab(@attach)
|
39
38
|
parent_found.attached.delete(id_found)
|
40
39
|
end
|
41
|
-
|
42
|
-
@affect.each do |affected_atome|
|
40
|
+
@affect&.each do |affected_atome|
|
43
41
|
affected_found = grab(affected_atome)
|
44
42
|
affected_found.apply.delete(id_found)
|
45
43
|
affected_found.refresh
|
46
44
|
end
|
47
|
-
end
|
48
45
|
|
49
46
|
# Universe.delete(@aid)
|
50
47
|
end
|
@@ -27,13 +27,14 @@ class Universe
|
|
27
27
|
@allow_tool_operations = false
|
28
28
|
@active_tools = []
|
29
29
|
@atome_preset = []
|
30
|
+
@default_selection_style={border: { thickness: 3, red: 1, green: 1, blue: 1, alpha: 1, pattern: :dotted }}
|
30
31
|
@applicable_atomes= %i[color shadow border paint animation]
|
31
32
|
# @historicize=false
|
32
33
|
class << self
|
33
34
|
attr_reader :atomes, :atomes_ids, :renderer_list, :molecule_list, :atome_list, :particle_list, :classes, :counter,
|
34
35
|
:atomes_specificities
|
35
36
|
attr_accessor :connected, :allow_sync, :allow_localstorage, :database_ready, :edit_mode, :tools,
|
36
|
-
:allow_tool_operations, :active_tools, :atome_preset, :applicable_atomes
|
37
|
+
:allow_tool_operations, :active_tools, :atome_preset, :applicable_atomes, :default_selection_style
|
37
38
|
|
38
39
|
def messages
|
39
40
|
@messages
|
@@ -388,7 +388,7 @@ class Atome
|
|
388
388
|
def particles_to_hash
|
389
389
|
hash = {}
|
390
390
|
instance_variables.each do |var|
|
391
|
-
next if %i[@html_object @history @initialized @tick @controller_proc].include?(var)
|
391
|
+
next if %i[@selection_style @html_object @history @initialized @tick @controller_proc].include?(var)
|
392
392
|
hash[var.to_s.delete('@').to_sym] = instance_variable_get(var)
|
393
393
|
end
|
394
394
|
hash
|
data/lib/atome/version.rb
CHANGED
@@ -44,13 +44,13 @@ new({ method: :remove, renderer: :html, type: :string }) do |object_id_to_remove
|
|
44
44
|
html.style("boxShadow", 'none')
|
45
45
|
html.style("filter", 'none')
|
46
46
|
@apply.delete(object_id_to_remove)
|
47
|
-
apply(@apply)
|
47
|
+
# apply(@apply)
|
48
48
|
when :border
|
49
49
|
# alert :poipoipoipoipo
|
50
50
|
html.style("border", 'none')
|
51
|
-
|
51
|
+
html.style("filter", 'none')
|
52
52
|
@apply.delete(object_id_to_remove)
|
53
|
-
apply(@apply)
|
53
|
+
# apply(@apply)
|
54
54
|
when :paint
|
55
55
|
atome_to_remove = grab(object_id_to_remove)
|
56
56
|
atome_to_remove.gradient.each do |color_id|
|
@@ -9,7 +9,6 @@ b.instance_variable_set("@path", './medias/images/red_planet.png' )
|
|
9
9
|
|
10
10
|
b.instance_variable_set("@smooth", 30)
|
11
11
|
wait 1 do
|
12
|
-
# alert b.inspect
|
13
12
|
b.refresh
|
14
13
|
b.instance_variable_set("@left", 300)
|
15
14
|
wait 1 do
|
@@ -24,13 +23,13 @@ wait 1 do
|
|
24
23
|
end
|
25
24
|
end
|
26
25
|
end
|
27
|
-
|
26
|
+
i=image(:green_planet)
|
28
27
|
# alert i.path
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
#
|
33
|
-
|
28
|
+
i.instance_variable_set("@path", './medias/images/red_planet.png')
|
29
|
+
wait 2 do
|
30
|
+
i.refresh
|
31
|
+
# i.path'./medias/images/red_planet.png'
|
32
|
+
end
|
34
33
|
|
35
34
|
|
36
35
|
#
|
@@ -1,22 +1,28 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# grab(:a_styles).data
|
4
3
|
t = text({ data: 'touch me to select all', id: :the_text })
|
5
4
|
b = box({ left: 12, id: :the_box })
|
6
|
-
c = circle({ left: 230, id: :the_circle })
|
7
|
-
c.color(:
|
8
|
-
#
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
#
|
16
|
-
#
|
17
|
-
|
18
|
-
|
19
|
-
|
5
|
+
c = circle({ left: 230, id: :the_circle, color: { blue: 1, id: :c1 } })
|
6
|
+
c.color({ green: 1, id: :c2 })
|
7
|
+
# to change default selection style
|
8
|
+
Universe.default_selection_style = { border: { thickness: 3, red: 1, green: 0, blue: 1, alpha: 1, pattern: :dotted } }
|
9
|
+
|
10
|
+
c.touch(true) do
|
11
|
+
if c.selected
|
12
|
+
c.selected(false)
|
13
|
+
else
|
14
|
+
# c.selected(true)
|
15
|
+
# example of custom selection style
|
16
|
+
c.selected({ shadow: { id: :titi,
|
17
|
+
left: 9, top: 3, blur: 9,
|
18
|
+
invert: false,
|
19
|
+
red: 0, green: 0, blue: 0, alpha: 1
|
20
|
+
}, border: { id: :toto, thickness: 5, red: 1, green: 1, blue: 1, alpha: 1,
|
21
|
+
pattern: :dotted, inside: true }
|
22
|
+
})
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
20
26
|
image({ path: 'medias/images/red_planet.png', id: :the__red_planet, top: 233 })
|
21
27
|
|
22
28
|
t.touch(true) do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: atome
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.7.0.
|
4
|
+
version: 0.5.7.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jean-Eric Godard
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-04-
|
11
|
+
date: 2024-04-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: artoo
|