atome 0.5.6.3.0 → 0.5.6.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +0 -2
- data/atome.gemspec +15 -7
- data/exe/atome +7 -0
- data/lib/atome/genesis/particles/atome.rb +4 -0
- data/lib/atome/kernel/universe.rb +1 -1
- data/lib/atome/version.rb +1 -1
- data/lib/atome.rb +19 -14
- data/lib/atome_relative.rb +19 -14
- metadata +29 -27
- data/lib/eVe/LICENSE +0 -8
- data/lib/eVe/README.md +0 -350
- data/lib/eVe/documentation/Backup_docs.zip +0 -0
- data/lib/eVe/documentation/server.md +0 -2
- data/lib/eVe/eVe.rb +0 -4
- data/lib/eVe/eVe_relative.rb +0 -4
- data/lib/eVe/lib/examples/site.rb +0 -34
- data/lib/eVe/lib/init.rb +0 -54
- data/lib/eVe/lib/intuition/inputs.rb +0 -111
- data/lib/eVe/lib/intuition/sliders.rb +0 -49
- data/lib/eVe/lib/intuition/toolbox.rb +0 -280
- data/lib/eVe/lib/version.rb +0 -11
- data/lib/eVe/todo.txt +0 -147
- /data/lib/atome/genesis/{generators/atome.rb → atome.rb} +0 -0
- /data/lib/atome/genesis/{generators → particles}/communication.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/effect.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/event.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/geometry.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/hierarchy.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/identity.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/material.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/property.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/security.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/spatial.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/time.rb +0 -0
- /data/lib/atome/genesis/{generators → particles}/utility.rb +0 -0
@@ -1,34 +0,0 @@
|
|
1
|
-
|
2
|
-
new(application: {name: :compose })
|
3
|
-
|
4
|
-
|
5
|
-
grab(:toto).color(:cyan)
|
6
|
-
|
7
|
-
def layout
|
8
|
-
compose_back=box
|
9
|
-
|
10
|
-
compose_back.color({ alpha: 0 })
|
11
|
-
media_reader=compose_back.box({left: 99, width: 250, height: 250, top: 99})
|
12
|
-
viewer_1=compose_back.box({left: 360, width: 250, height: 250, top: 99})
|
13
|
-
viewer_2=compose_back.box({left: 690, width: 250, height: 250, top: 99})
|
14
|
-
timeline=compose_back.box({left: 99, width: 250, height: 250, top: 399})
|
15
|
-
login=compose_back.text(:log)
|
16
|
-
login.touch(true) do
|
17
|
-
compose_back.delete(true)
|
18
|
-
# grab(:view).clear(true)
|
19
|
-
form
|
20
|
-
end
|
21
|
-
|
22
|
-
end
|
23
|
-
|
24
|
-
def form
|
25
|
-
form1=box
|
26
|
-
form1.text(:login)
|
27
|
-
|
28
|
-
form1.touch(true) do
|
29
|
-
form1.delete(true)
|
30
|
-
layout
|
31
|
-
end
|
32
|
-
|
33
|
-
end
|
34
|
-
form
|
data/lib/eVe/lib/init.rb
DELETED
@@ -1,54 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
Universe.eVe(true)
|
4
|
-
puts "eVe version : #{EVe::VERSION}"
|
5
|
-
|
6
|
-
module EVe
|
7
|
-
def new(params, &bloc)
|
8
|
-
if params[:page]
|
9
|
-
site_found = grab(params[:page][:application])
|
10
|
-
site_found.clear(true)
|
11
|
-
page_id = params[:page][:name]
|
12
|
-
site_found.box({ id: page_id })
|
13
|
-
elsif params[:application]
|
14
|
-
|
15
|
-
footer_header_size=33
|
16
|
-
footer_header_color=color({red: 0, green: 0, blue: 0, id: :footer_header_color})
|
17
|
-
|
18
|
-
if params[:header]
|
19
|
-
top = footer_header_size
|
20
|
-
header=box({ left: 0, right: 0, width: :auto, top: 0, height: top, id: :header })
|
21
|
-
# header.attach(:footer_header_color)
|
22
|
-
else
|
23
|
-
top = 0
|
24
|
-
end
|
25
|
-
if params[:footer]
|
26
|
-
bottom = footer_header_size
|
27
|
-
box({ left: 0, right: 0, width: :auto, top: :auto, bottom: 0, height: bottom, id: :footer })
|
28
|
-
else
|
29
|
-
bottom = 0
|
30
|
-
end
|
31
|
-
box({ left: 0, right: 0, width: :auto, top: top, bottom: bottom, height: :auto, id: params[:application] })
|
32
|
-
elsif params[:module]
|
33
|
-
|
34
|
-
end
|
35
|
-
super if defined?(super)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
class Object
|
40
|
-
include EVe
|
41
|
-
end
|
42
|
-
|
43
|
-
# tests
|
44
|
-
# new({application: :compose, header: true, footer: true })
|
45
|
-
|
46
|
-
# new(page: {name: :home, application: :compose, attach: :root })
|
47
|
-
|
48
|
-
# new(module: {name: :home, application: :compose, attach: :root })
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
@@ -1,111 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
# def atome_common(atome_preset, params)
|
4
|
-
# basic_params = { renderers: [] }
|
5
|
-
# # TODO : remove Essentials.default_params[atome_preset] || {} as it is
|
6
|
-
# # applied twice because preset is now a particle
|
7
|
-
# preset_params = Essentials.default_params[atome_preset] || {}
|
8
|
-
#
|
9
|
-
# basic_params[:type] = preset_params[:type] || :element
|
10
|
-
# basic_params[:id] = params[:id] || identity_generator(atome_preset)
|
11
|
-
# basic_params[:renderers] = @renderers || preset_params[:renderers]
|
12
|
-
# essential_params = basic_params.merge(preset_params)
|
13
|
-
# reordered_params = essential_params.reject { |key, _| params.has_key?(key) }
|
14
|
-
# params = reordered_params.merge(params)
|
15
|
-
#
|
16
|
-
# # condition to handle color/shadow/paint atomes that shouldn't be attach to view
|
17
|
-
# # TODO : add category for atome( material/physical vs modifier : color, shadow, .. vs shape, image ..)
|
18
|
-
# # then add condition same things fo code in genesis new_atome
|
19
|
-
# if %i[color shadow paint].include?(atome_preset)
|
20
|
-
# unless params[:affect]
|
21
|
-
# params[:affect] = if @id == :view
|
22
|
-
# [:black_matter]
|
23
|
-
# else
|
24
|
-
# [@id]
|
25
|
-
# end
|
26
|
-
# end
|
27
|
-
# else
|
28
|
-
# params[:attach] = params[:attach] || @id || :view
|
29
|
-
# end
|
30
|
-
# params
|
31
|
-
# end
|
32
|
-
#
|
33
|
-
# def preset_common(params, &bloc)
|
34
|
-
# # if an atome with current id exist we update the ID in the params
|
35
|
-
# params[:id] = "#{params[:id]}_#{Universe.atomes.length}" if grab(params[:id])
|
36
|
-
# Atome.new(params, &bloc)
|
37
|
-
# end
|
38
|
-
# class EVe < Atome
|
39
|
-
class EVe < Atome
|
40
|
-
def initialize
|
41
|
-
@atomes = {}
|
42
|
-
end
|
43
|
-
|
44
|
-
def atome(atome_to_find)
|
45
|
-
@atomes[atome_to_find]
|
46
|
-
end
|
47
|
-
|
48
|
-
def input_box(params = {}, &bloc)
|
49
|
-
height_wanted = 15
|
50
|
-
width_wanted = 222
|
51
|
-
input_back = Atome.new(
|
52
|
-
{ renderers: [:html], id: :input_back, type: :shape, attach: :view, apply: [:shape_color],
|
53
|
-
left: 120, top: 120,data: '', width: width_wanted, height: height_wanted + height_wanted * 20 / 100, smooth: 6 })
|
54
|
-
|
55
|
-
@atomes[:input_back] = input_back
|
56
|
-
|
57
|
-
Atome.new(
|
58
|
-
{ renderers: [:html], id: :input_text_color, type: :color, tag: ({ system: true, persistent: true }),
|
59
|
-
red: 0.1, green: 0.1, blue: 0.1, alpha: 1 }
|
60
|
-
)
|
61
|
-
|
62
|
-
text_input = Atome.new(
|
63
|
-
{ renderers: [:html], id: :input_text, type: :text, apply: [:input_text_color], component: { size: height_wanted },
|
64
|
-
data: :input, left: height_wanted * 20 / 100, top: 0, edit: true, attach: :input_back, height: height_wanted, position: :absolute })
|
65
|
-
|
66
|
-
text_input.touch(true) do
|
67
|
-
text_input.component({ selected: { color: 'rgba(0,0,0,0.3)', text: :orange } })
|
68
|
-
end
|
69
|
-
|
70
|
-
text_input.keyboard(:down) do |native_event|
|
71
|
-
event = Native(native_event)
|
72
|
-
if event[:keyCode].to_s == '13'
|
73
|
-
# we prevent the input
|
74
|
-
event.preventDefault()
|
75
|
-
end
|
76
|
-
|
77
|
-
end
|
78
|
-
|
79
|
-
text_input.keyboard(:up) do |native_event|
|
80
|
-
input_back.data=text_input.data
|
81
|
-
end
|
82
|
-
@atomes[:input_text] = text_input
|
83
|
-
|
84
|
-
input_back
|
85
|
-
end
|
86
|
-
|
87
|
-
end
|
88
|
-
|
89
|
-
def input(params = {}, &proc)
|
90
|
-
text_color = :white
|
91
|
-
text_size = 12
|
92
|
-
back_color = :gray
|
93
|
-
width = 2000
|
94
|
-
in_b = EVe.new()
|
95
|
-
in_b.input_box
|
96
|
-
end
|
97
|
-
|
98
|
-
i= input
|
99
|
-
|
100
|
-
b=box({top: 0, left: 0, width: 33, height: 33})
|
101
|
-
b.touch(true) do
|
102
|
-
puts "i.data : #{i.data}"
|
103
|
-
end
|
104
|
-
i.left(66)
|
105
|
-
i.color(:white)
|
106
|
-
i.text.left(55)
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
@@ -1,49 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
button = box({smooth: 6,left: 55,top: 160, color:{red: 0.3, green: 0.3, blue: 0.3},id: :my_box})
|
4
|
-
button.shadow({
|
5
|
-
id: :s1,
|
6
|
-
left: 3, top: 3, blur: 9,
|
7
|
-
invert: true,
|
8
|
-
red: 0, green: 0, blue: 0, alpha: 0.7
|
9
|
-
})
|
10
|
-
button.touch(true) do
|
11
|
-
button.controller(:hello)
|
12
|
-
end
|
13
|
-
slider=box({ width: 333, height: 25, top: 45, left: 55, smooth: 9, color:{red: 0.3, green: 0.3, blue: 0.3}})
|
14
|
-
slider.shadow({
|
15
|
-
id: :s2,
|
16
|
-
left: 3, top: 3, blur: 9,
|
17
|
-
invert: true,
|
18
|
-
red: 0, green: 0, blue: 0, alpha: 0.7
|
19
|
-
})
|
20
|
-
cursor= slider.circle({width: 30, height: 30, left: 2, top: 1, color:{red: 0.3, green: 0.3, blue: 0.3}})
|
21
|
-
|
22
|
-
cursor.left(0)
|
23
|
-
cursor.top(0)
|
24
|
-
cursor.shadow({
|
25
|
-
id: :s4,
|
26
|
-
left: 1, top: 1, blur: 3,
|
27
|
-
option: :natural,
|
28
|
-
red: 0, green: 0, blue: 0, alpha: 0.6
|
29
|
-
})
|
30
|
-
label=text({data: 0, top: 69, left: 69, component: { size: 12 }, color: :gray})
|
31
|
-
cursor.drag({ restrict: {max:{ left: 309, top: 0}} }) do |event|
|
32
|
-
puts cursor.left
|
33
|
-
value = cursor.left/309*100
|
34
|
-
label.data(value)
|
35
|
-
cursor.controller({ action: :setModuleParameterValue, params: { moduleId: 6456549897,parameterId: 9846546, value: value} })
|
36
|
-
|
37
|
-
end
|
38
|
-
support=box({top: 300, left: 55, width: 300, height: 40, smooth: 9, color:{red: 0.3, green: 0.3, blue: 0.3}, id: :support })
|
39
|
-
support.shadow({
|
40
|
-
id: :s3,
|
41
|
-
left: 3, top: 3, blur: 9,
|
42
|
-
invert: true,
|
43
|
-
red: 0, green: 0, blue: 0, alpha: 0.7
|
44
|
-
})
|
45
|
-
support.import(true) do |content|
|
46
|
-
puts "add code here, content: #{content}"
|
47
|
-
end
|
48
|
-
|
49
|
-
in_box=input_box
|
@@ -1,280 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
text(:hello)
|
3
|
-
class Atome
|
4
|
-
|
5
|
-
def build_tool(&bloc)
|
6
|
-
# alert params[:tool]
|
7
|
-
a = Atome.instance_exec(&bloc)
|
8
|
-
puts "===> a is : #{a[:action]}"
|
9
|
-
# check below
|
10
|
-
wait 2 do
|
11
|
-
send a[:action]
|
12
|
-
end
|
13
|
-
grab(:toolbox).box({color: :white, width: 33, height: 33})
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
class Object
|
18
|
-
def new(params, &bloc)
|
19
|
-
# Genesis = Genesis.Genesis
|
20
|
-
if params.key?(:atome)
|
21
|
-
Universe.add_atomes_specificities params[:atome]
|
22
|
-
Genesis.build_atome(params[:atome], &bloc)
|
23
|
-
elsif params.key?(:particle)
|
24
|
-
Atome.instance_variable_set("@main_#{params[:particle]}", bloc)
|
25
|
-
# render indicate if the particle needs to be rendered
|
26
|
-
# store tell the system if it need to store the particle value
|
27
|
-
# type help the system what type of type the particle will receive and store
|
28
|
-
Genesis.build_particle(params[:particle], { render: params[:render], return: params[:return],
|
29
|
-
store: params[:store], type: params[:type] }, &bloc)
|
30
|
-
elsif params.key?(:sanitizer)
|
31
|
-
Genesis.build_sanitizer(params[:sanitizer], &bloc)
|
32
|
-
elsif params.key?(:pre)
|
33
|
-
Atome.instance_variable_set("@pre_#{params[:pre]}", bloc)
|
34
|
-
elsif params.key?(:post)
|
35
|
-
Atome.instance_variable_set("@post_#{params[:post]}", bloc)
|
36
|
-
elsif params.key?(:after)
|
37
|
-
Atome.instance_variable_set("@after_#{params[:after]}", bloc)
|
38
|
-
elsif params.key?(:read)
|
39
|
-
Atome.instance_variable_set("@read_#{params[:read]}", bloc)
|
40
|
-
elsif params[:renderer]
|
41
|
-
renderer_found = params[:renderer]
|
42
|
-
if params[:specific]
|
43
|
-
Universe.set_atomes_specificities(params)
|
44
|
-
params[:specific] = "#{params[:specific]}_"
|
45
|
-
end
|
46
|
-
render_method = "#{renderer_found}_#{params[:specific]}#{params[:method]}"
|
47
|
-
Genesis.build_render(render_method, &bloc)
|
48
|
-
elsif params.key?(:callback)
|
49
|
-
particle_targetted = params[:callback]
|
50
|
-
Atome.define_method "#{particle_targetted}_callback" do
|
51
|
-
bloc.call
|
52
|
-
end
|
53
|
-
elsif params.key?(:tool)
|
54
|
-
A.build_tool(&bloc)
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
|
-
grab(:intuition).box({id: :toolbox, top: :auto, bottom: 0, left: 0, width: 50, height: 255})
|
60
|
-
|
61
|
-
def record_tool
|
62
|
-
grab(Universe.current_user).selection
|
63
|
-
alert "must get selection to treat it "
|
64
|
-
end
|
65
|
-
|
66
|
-
|
67
|
-
module Intuition
|
68
|
-
def intuition_int8
|
69
|
-
# tool taxonomy and list
|
70
|
-
{
|
71
|
-
capture: { int8: { french: :enregistrement, english: :record, german: :datensatz } },
|
72
|
-
communication: { french: :communication, english: :communication, german: :communication },
|
73
|
-
tool: { french: :outils, english: :tools, german: :werkzeuge },
|
74
|
-
view: { french: :vue, english: :view, german: :aussicht },
|
75
|
-
time: { french: :horloge, english: :clock, german: :Uhr },
|
76
|
-
find: { french: :trouve, english: :find, german: :finden },
|
77
|
-
home: { french: :accueil, english: :home, german: :zuhause },
|
78
|
-
code: { french: :code, english: :code, german: :code },
|
79
|
-
impulse: { french: :impulse, english: :impulse, german: :impulse },
|
80
|
-
}
|
81
|
-
end
|
82
|
-
def intuition_taxonomy
|
83
|
-
|
84
|
-
end
|
85
|
-
|
86
|
-
def impulse
|
87
|
-
# tool start point
|
88
|
-
[:capture, :communication, :tool, :view, :time, :find, :home]
|
89
|
-
end
|
90
|
-
|
91
|
-
# def capture
|
92
|
-
# categories=ATOME.methods_categories
|
93
|
-
# [categories[:inputs]]
|
94
|
-
# end
|
95
|
-
#
|
96
|
-
# def communication
|
97
|
-
# categories=ATOME.methods_categories
|
98
|
-
# [categories[:communications]]
|
99
|
-
# end
|
100
|
-
#
|
101
|
-
# def toolz
|
102
|
-
# categories=ATOME.methods_categories
|
103
|
-
# [categories[:spatials],categories[:helpers],categories[:materials],
|
104
|
-
# categories[:geometries],categories[:effects],
|
105
|
-
# categories[:medias],categories[:hierarchies],categories[:utilities],categories[:events]]
|
106
|
-
# end
|
107
|
-
#
|
108
|
-
# def tool_style(size = 33)
|
109
|
-
# # styling
|
110
|
-
# shadows = [{ x: size / 15, y: size / 15, thickness: 0, blur: size / 3, color: { red: 0, green: 0, blue: 0, alpha: 0.3 } }, { x: -size / 15, y: -size / 15, thickness: 0, blur: size / 6, color: { red: 1, green: 1, blue: 1, alpha: 0.3 } }]
|
111
|
-
# style = { type: :tool, content: { points: 4 }, color: { red: 0.9, green: 0.9, blue: 0.9, alpha: 0.15 }, parent: :intuition, shadow: shadows, blur: { value: 6, invert: true } }
|
112
|
-
# return style
|
113
|
-
# end
|
114
|
-
#
|
115
|
-
# def open_tool(tool_id, widthness=3, orientation=:x, speed=0.6)
|
116
|
-
# if orientation == :x
|
117
|
-
# orientation = :width
|
118
|
-
# value = grab(tool_id).width
|
119
|
-
# else
|
120
|
-
# orientation = :height
|
121
|
-
# value = grab(tool_id).height
|
122
|
-
# end
|
123
|
-
# animate({
|
124
|
-
# start: { orientation => value },
|
125
|
-
# end: { orientation => value * widthness },
|
126
|
-
# duration: speed * 1000,
|
127
|
-
# loop: 0,
|
128
|
-
# curve: :easing,
|
129
|
-
# target: tool_id
|
130
|
-
# })
|
131
|
-
# notification "find why this id #{self.atome_id}, add annimation callback to set overflow when anim complete"
|
132
|
-
# grab(tool_id).overflow(:visible)
|
133
|
-
# end
|
134
|
-
#
|
135
|
-
# def close_tool(tool_id, widthness, orientation, speed)
|
136
|
-
# if orientation == :x
|
137
|
-
# orientation = :width
|
138
|
-
# value = grab(tool_id).width
|
139
|
-
# else
|
140
|
-
# orientation = :height
|
141
|
-
# value = grab(tool_id).height
|
142
|
-
# end
|
143
|
-
# animate({
|
144
|
-
# start: { orientation => value * widthness },
|
145
|
-
# end: { orientation => value },
|
146
|
-
# duration: speed * 1000,
|
147
|
-
# loop: 0,
|
148
|
-
# curve: :easing,
|
149
|
-
# target: tool_id
|
150
|
-
# })
|
151
|
-
# # grab(tool_id).overflow(:hidden)
|
152
|
-
# end
|
153
|
-
#
|
154
|
-
# def create_tool(tool_name, size = 33, x_pos = 0, y_pos = 33, offsset=0)
|
155
|
-
# tool_created = tool(self.tool_style(size).merge({ parent: :main_menu, atome_id: "tool_" + tool_name, id: "tool_" + tool_name,
|
156
|
-
# width: size, height: size, smooth: size / 9, overflow: :hidden, x: x_pos, y: y_pos, z: 1, content: [] }))
|
157
|
-
# icon=tool_created.shape({ path: tool_name, width: size - size / 2, height: size - size / 2, center: true })
|
158
|
-
# # name = intuition_list[tool_name][language]
|
159
|
-
# particle({ atome_id: :tools_property_container, color: { red: 0.6, green: 0.6, blue: 0.6 } })
|
160
|
-
# # we get the plugin code only if the plugin hasn't been interpreted before (unless condition below)
|
161
|
-
# unless grab(:intuition).content.include? tool_name
|
162
|
-
# ATOME.reader("./medias/e_rubies/tools/#{tool_name}.rb") do |data|
|
163
|
-
# # todo add a security parser here
|
164
|
-
# # we set the variable tool that can be used to facilitate plugin creation
|
165
|
-
# data="tool=grab(:#{tool_created.atome_id})\n"+data
|
166
|
-
# compile(data)
|
167
|
-
# # we add the tool to the intuition content so it won't be loaded twice
|
168
|
-
# grab(:intuition).content |= [tool_name]
|
169
|
-
# end
|
170
|
-
# end
|
171
|
-
# # end
|
172
|
-
# tool_created.active({ exec: false })
|
173
|
-
# tool_created.inactive({ exec: false })
|
174
|
-
# icon.touch(stop: true) do
|
175
|
-
# if tool_created.active[:exec] == true
|
176
|
-
# tool_created.color(:transparent)
|
177
|
-
# tool_created.active(exec: false, proc: tool_created.active[:proc] )
|
178
|
-
# tool_created.inactive(exec: true, proc: tool_created.inactive[:proc] )
|
179
|
-
# else
|
180
|
-
# tool_created.color({alpha: 0.3})
|
181
|
-
# tool_created.active({ exec: true, proc: tool_created.active[:proc] })
|
182
|
-
# end
|
183
|
-
# end
|
184
|
-
# end
|
185
|
-
#
|
186
|
-
# # we get menu entry point
|
187
|
-
# def open_intuition(position = {})
|
188
|
-
# position = { x: 0, yy: 0, size: 33, orientation: :vertical, offset: 0 }.merge(position)
|
189
|
-
# # we get content language from view's language
|
190
|
-
# if grab(:main_menu)
|
191
|
-
# grab(:main_menu).delete
|
192
|
-
# else
|
193
|
-
# grab(:view).language
|
194
|
-
# self.language(grab(:view).language)
|
195
|
-
# orientation = position.delete(:orientation)
|
196
|
-
# size = position.delete(:size)
|
197
|
-
# offset = position.delete(:offset)
|
198
|
-
# # positioning and scaling
|
199
|
-
# if orientation == :vertical
|
200
|
-
# requested_width = size
|
201
|
-
# requested_height = (size+offset)* impulse.length
|
202
|
-
# else
|
203
|
-
# requested_width = (size+offset) * impulse.length
|
204
|
-
# requested_height = size
|
205
|
-
# end
|
206
|
-
# tool({ atome_id: :main_menu, parent: :intuition, color: { alpha: 0 } }.merge(position).merge(width: requested_width, height: requested_height))
|
207
|
-
# impulse.each_with_index do |item, index|
|
208
|
-
# if orientation == :vertical
|
209
|
-
# create_tool(item, size, 0, index * (size+offset))
|
210
|
-
# else
|
211
|
-
# create_tool(item, size, index * (size+offset), 0)
|
212
|
-
# end
|
213
|
-
# end
|
214
|
-
# end
|
215
|
-
# end
|
216
|
-
end
|
217
|
-
# atome class extension for eVe
|
218
|
-
|
219
|
-
class Atome
|
220
|
-
include Intuition
|
221
|
-
# def atome(requested_property)
|
222
|
-
# # add component list iin the content we maybe ahave to create a tool object because box can't handle this type of content
|
223
|
-
# new_atome=self.tool({ atome_id: "#{self.atome_id}_#{requested_property}_atome_#{self.content.length}", x: 66})
|
224
|
-
# new_atome.touch({ stop: true, option: :down}) do
|
225
|
-
# color(:red)
|
226
|
-
# new_atome.height = new_atome.height*3
|
227
|
-
# end
|
228
|
-
# new_atome.touch({ stop: true, option: :up}) do
|
229
|
-
# color(:red)
|
230
|
-
# new_atome.height = new_atome.height/3
|
231
|
-
# end
|
232
|
-
# notification "now we have to add an object or a new property (style) to store complete tool style including size and
|
233
|
-
# orientation so we can position the new atome correctly"
|
234
|
-
# # alert self.content.class
|
235
|
-
# # alert self.content.length
|
236
|
-
# # alert tool_style
|
237
|
-
# end
|
238
|
-
end
|
239
|
-
|
240
|
-
# # we initialise the toolbox here :
|
241
|
-
#
|
242
|
-
# # the launch bar
|
243
|
-
# launch_bar = box({ x: 0, y: 0, width: 33, height: "100%", parent: :intuition, z: 0, color: { alpha: 0 } })
|
244
|
-
# launch_bar.touch({ option: :long }) do |evt|
|
245
|
-
# size = 33
|
246
|
-
# yy_touch_position = grab(:view).convert(:height) - evt.page_y
|
247
|
-
# if yy_touch_position < size
|
248
|
-
# #if the long touch is within the wanted area( in this at bottom of the screen) we open the menu
|
249
|
-
# # launch_bar.open_intuition({ x: size, yy: 6,offset: 6, orientation: :horizontal, size: size })
|
250
|
-
# launch_bar.open_intuition({ x: 6, yy: size,offset: 6, orientation: :vertical, size: size })
|
251
|
-
# end
|
252
|
-
# end
|
253
|
-
#
|
254
|
-
# # # # # # # # # # # # # # # tests below # # # # # # # # # # # # #
|
255
|
-
#
|
256
|
-
# list = molecule_analysis(@molecules_list)
|
257
|
-
# notif list[:tools]
|
258
|
-
# notif "======"
|
259
|
-
# notif list[:molecules]
|
260
|
-
# notif "======"
|
261
|
-
# notif list[:atomes]
|
262
|
-
# notif "======"
|
263
|
-
# notif list[:molecules][:shadow]
|
264
|
-
|
265
|
-
new({ tool: :capture }) do |params|
|
266
|
-
tool = { id: :rec_01,
|
267
|
-
|
268
|
-
name: :record, icon: :record, action: {open: [:sub_menu]}, code: :record_tool, position: { root: 1 }, # position can be multiple
|
269
|
-
option: { opt1: :method_2 }, int8: { french: :enregistrement, english: :record, german: :datensatz } }
|
270
|
-
tool
|
271
|
-
end
|
272
|
-
|
273
|
-
|
274
|
-
puts A.impulse
|
275
|
-
# def fill_toolzone(tools_ids)
|
276
|
-
#
|
277
|
-
# end
|
278
|
-
#
|
279
|
-
# fill_toolzone(%i[files edition select group link copy undo settings])
|
280
|
-
|
data/lib/eVe/lib/version.rb
DELETED
data/lib/eVe/todo.txt
DELETED
@@ -1,147 +0,0 @@
|
|
1
|
-
|
2
|
-
Urgent :
|
3
|
-
- Drag and drop
|
4
|
-
- Save
|
5
|
-
- user strategy
|
6
|
-
- U.I.
|
7
|
-
- IDE
|
8
|
-
- Embeded versionnb v
|
9
|
-
|
10
|
-
tool composition tool :
|
11
|
-
- Examples
|
12
|
-
- Api name
|
13
|
-
- Definition
|
14
|
-
- usages
|
15
|
-
- copyright
|
16
|
-
- price
|
17
|
-
- Author
|
18
|
-
- presets
|
19
|
-
- connex tools
|
20
|
-
- code
|
21
|
-
- version of Api
|
22
|
-
- create a two way return method. ex : e.x => 50 e.x_incept => {content: :50, dynamic => true, reference: :view}
|
23
|
-
- suppress all @@ class varaible
|
24
|
-
- find a solution when setting text if we want to position it corecctly and obtain the correct size using the value api when have to set prop in this order:find a way to set the prop in any order : text_title.width(:auto)
|
25
|
-
text_title.x = 80
|
26
|
-
text_title.xx = 80
|
27
|
-
text_title.y = 0
|
28
|
-
- add adaptive size: for width and height too:
|
29
|
-
- create method accumulate so the next obect is postioned after the precedent etheir along x or y axis, with an optional offset
|
30
|
-
- to modify text lines aligenments t.child.align(:distribute/x/xx, center) text_title.size(34)
|
31
|
-
- bug when inserting an object into another if the insertted object is centererd before grouping its position is incorect
|
32
|
-
- change width according to the right align
|
33
|
-
- enliven still need a bit od refinement
|
34
|
-
- to test: read_code in help.rb ( reactive the commented lines)
|
35
|
-
- if object position is specified using xx then when dragging it should remain relative to xx not to x
|
36
|
-
- todo objet masking and stencil with boolean
|
37
|
-
- bug width anim help error with border radius
|
38
|
-
- add or check if a delete property exist and relaly delete the property and it's value
|
39
|
-
- bug text menu on resize start in method render_resize in html.rb file
|
40
|
-
- finish to add monitor to all apis
|
41
|
-
- verify object in object
|
42
|
-
- check old group method for group in group!!
|
43
|
-
- create detach method
|
44
|
-
- .bat script on windows to install atome
|
45
|
-
- check group add child nd parent respectively
|
46
|
-
- check ungroup both remove parent and child property
|
47
|
-
- unify (group/child) - (attach-parent) (detach-ungroup)
|
48
|
-
- Help.render bug, Help.volume_example bug
|
49
|
-
- reflection if presets are global or specific to a atype , cf preset :red only available for color or also for text
|
50
|
-
- allow to create new preset
|
51
|
-
- Better alert system
|
52
|
-
- create objext in object example
|
53
|
-
- create rotation example
|
54
|
-
- finish attach api (group inverse)
|
55
|
-
- Important : Objet created in objet are not centered anymore!!
|
56
|
-
- Important : check if event are re-injected when setting events before sending type to the view
|
57
|
-
- create a console objet and redirect the js console to the new console
|
58
|
-
- bug when enliven a draggable object
|
59
|
-
- bug when enliven an object whith children. Children are nor enliven
|
60
|
-
- add Urho 3D rendering (Mruby)
|
61
|
-
- Arduino (shell acces from cordova)
|
62
|
-
- Create menu
|
63
|
-
- U.I.
|
64
|
-
- Save mecanism (DB and file)
|
65
|
-
- check Roda and native Ruby
|
66
|
-
- websocket
|
67
|
-
- restore ide
|
68
|
-
- create console
|
69
|
-
- Add Q-Audio native library binding
|
70
|
-
- remove all comment when creating production version
|
71
|
-
- Kind of bug, if we run the script 'default_values' in Help then the 'enliven' script position are not consistent because the position is first set using x and then override by left and top (is it a bug?)
|
72
|
-
- record media
|
73
|
-
- allow iframe integration
|
74
|
-
- object type permutation
|
75
|
-
- Help.drag bug object are persistent when modifying or re running the script
|
76
|
-
- drag api is badly formated and not send the same manner to the render when restoring from @drag other event api with proc may have the same propblem
|
77
|
-
- when using b=box(); c=b.circle({x: 20}) objet are badly positioned
|
78
|
-
- text tabulation is rendered
|
79
|
-
- Align bug for text
|
80
|
-
- unify all finite value with value 0 to 1
|
81
|
-
- render_fill bug when using % or px (html.rb line 308 - 317
|
82
|
-
- enhancement check Preset algorythm behavior, it should create an atome accordingg to the type then apply the preset's optional proprties (also check if the type and the the presetare corectly fromated and saved)
|
83
|
-
- bug when changing image content if a size it is reset
|
84
|
-
- better integration of web iframe
|
85
|
-
- image can't be created using Atome.new({"id"=>"logo", "type"=>"image", "content"=>"atome", "preset"=>"box", "size"=>33.33333333333333, "top"=>8.333333333333334, "left"=>8.333333333333334, "shadow"=>{"color"=>"rgba(0,0,0,0.3)", "blur"=>16, "x"=>0, "y"=>0}})
|
86
|
-
- rename drag event page_x to x
|
87
|
-
- out api (when over)
|
88
|
-
- ensure atome_id unicity
|
89
|
-
- drag api on mobile kill any touch set before the drag but doesn't on desktop
|
90
|
-
- conflict between get(id) and atome.get
|
91
|
-
- anim callback
|
92
|
-
- internationalisation
|
93
|
-
- multi render engine
|
94
|
-
- group store only the iD of the object grouped not the atome
|
95
|
-
- add dynamic option to center api to allow recentering on resize
|
96
|
-
- add an offset option when using the center api
|
97
|
-
- add target option to center api to allow centering according to another object
|
98
|
-
- parent api should return the id instead of the atome_id to be easier for coder
|
99
|
-
- bug : when writing b=box();b.x=b.y=300;alert b.info.join("\n") it crash
|
100
|
-
- add rotation pivot option
|
101
|
-
- infos tools
|
102
|
-
- select tool
|
103
|
-
- Make tests
|
104
|
-
- unify unit ( 0 to 1) for all values
|
105
|
-
- change color so when a user specify a purple color it create a "purple" preset, the atome then look like this :
|
106
|
-
[type: :shape, preset: :box, red: [child: :purple],green: [child: :purple],blue: [child: :purple],alpha: [child: :purple],cyan: [child: :purple],magenta: [child: :purple],yellow: [child: :purple],key: [child: :purple]]
|
107
|
-
- anim param as a block and param used to acitvate desavtivate anim : b.anim(true) do |evt|; start: {x: 0}, end: {x: 200}, duration: 150, target: b.id; end
|
108
|
-
- Collaboration
|
109
|
-
- User account
|
110
|
-
- Rights managements
|
111
|
-
- Multidevice acccount access and datas retreive
|
112
|
-
- import asset with drag an drop
|
113
|
-
- Int8!
|
114
|
-
- Accessibility
|
115
|
-
- keep current content in event (allow the use of self in bloc) proc.call(evt) if proc.is_a?(Proc) #instance_eval(&proc) if proc.is_a?(Proc)
|
116
|
-
- on overflow
|
117
|
-
- name and store events in a list to remove those events by their names
|
118
|
-
|
119
|
-
- remove all code in backtick from html.rb file
|
120
|
-
- pb de css filter qui s'efface le precedent quand on en ajoute un nouveau
|
121
|
-
|
122
|
-
|
123
|
-
eVe Tools to do :
|
124
|
-
done - bug with Help module and topic name if topic is an atome function etheir the topic is not display or the atome methode doesnt work
|
125
|
-
pone - bug if help is call before background the app is freeze
|
126
|
-
done - pb drag ex a.drag(true) (sans bloc do end)
|
127
|
-
done - remove jquery UI css error
|
128
|
-
done - add romain Arc
|
129
|
-
done - put all render methods in html.rb file in a module
|
130
|
-
done - delete child when deleting group
|
131
|
-
done - clean up code
|
132
|
-
done - correct deletion strategy for object
|
133
|
-
done - on resize (for view)
|
134
|
-
done - Allow youtube integration
|
135
|
-
done - replace refresh by render property in atome api ex: box({color: :red, render: false})
|
136
|
-
done - bug in 'every' api that stop after 5 times
|
137
|
-
done - Help.render crash the help application
|
138
|
-
done - finish fit function
|
139
|
-
done - catch eror when a media is messing to avoid : "[]: undefined method `[]' for nil"
|
140
|
-
done - add_prop_to_all child crash
|
141
|
-
done - allow default value for atome to be parametric
|
142
|
-
done - verify selectable is possible( for objet and text)
|
143
|
-
Done - a regression prevent resurection to work
|
144
|
-
Done - refresh rake compile when modifying atome libs
|
145
|
-
done - resize method (scale)
|
146
|
-
Done - puts render in a class Render with optional rendering engine( mfor multiples simultaneaous rendering)
|
147
|
-
Done - puts the render methods in a module
|
File without changes
|
File without changes
|