object in register change fixed
This commit is contained in:
parent
d23a9846e3
commit
36e3a8d4cc
@ -21,7 +21,7 @@ class ListView < ElementView
|
|||||||
|
|
||||||
# replace the child at index with the given one (second arg)
|
# replace the child at index with the given one (second arg)
|
||||||
# The child must be an ElementView , which will be rendered and
|
# The child must be an ElementView , which will be rendered and
|
||||||
# the old node will be replaces in the live dom
|
# the old node will be replaced in the live dom
|
||||||
def replace_at index , with
|
def replace_at index , with
|
||||||
old = @elements[index]
|
old = @elements[index]
|
||||||
@children[index] = with
|
@children[index] = with
|
||||||
|
@ -2,6 +2,8 @@ require_relative "ref_view"
|
|||||||
|
|
||||||
class ObjectView < ListView
|
class ObjectView < ListView
|
||||||
|
|
||||||
|
# z is the z-index
|
||||||
|
|
||||||
def initialize object_id , interpreter = nil , z = nil
|
def initialize object_id , interpreter = nil , z = nil
|
||||||
@object_id = object_id
|
@object_id = object_id
|
||||||
@z = z
|
@z = z
|
||||||
@ -18,11 +20,18 @@ class ObjectView < ListView
|
|||||||
end
|
end
|
||||||
|
|
||||||
def object_changed reg , at
|
def object_changed reg , at
|
||||||
puts "Object changed in #{reg}"
|
at = at - 1 #take the layout off
|
||||||
|
#puts "Object changed in #{reg}"
|
||||||
for_object = @interpreter.get_register( reg )
|
for_object = @interpreter.get_register( reg )
|
||||||
return unless for_object == @object_id
|
return unless for_object == @object_id
|
||||||
puts "Object changed #{for_object} , at #{at}"
|
#puts "Object changed #{for_object} , at #{at}"
|
||||||
|
object = Virtual.machine.objects[@object_id]
|
||||||
|
raise "error #{@object_id} , #{at}" unless object and ! object.is_a?(String)
|
||||||
|
variable = object.get_instance_variables.get(at)
|
||||||
|
#puts "got var name #{variable} for #{at}"
|
||||||
|
f = object.get_instance_variable(variable)
|
||||||
|
element = RefView.new( variable , f.object_id , @z )
|
||||||
|
replace_at at , element
|
||||||
end
|
end
|
||||||
|
|
||||||
def class_header(id)
|
def class_header(id)
|
||||||
|
@ -39,7 +39,7 @@ class RefView < ListView
|
|||||||
end
|
end
|
||||||
|
|
||||||
def hover
|
def hover
|
||||||
puts "hovering #{@name}"
|
#puts "hovering #{@name}"
|
||||||
append_view ObjectView.new(@value)
|
append_view ObjectView.new(@value)
|
||||||
@element.off("hover")
|
@element.off("hover")
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user