rubyx-debugger/app/block_view.rb

39 lines
766 B
Ruby
Raw Normal View History

2015-07-22 21:05:31 +02:00
require "source_view"
2015-07-25 14:28:59 +02:00
require "instruction_view"
2015-07-22 21:05:31 +02:00
class BlockView
include React::Component
2015-07-23 19:08:40 +02:00
required_param :interpreter
2015-07-22 21:05:31 +02:00
define_state :block
before_mount do
interpreter.register_event(:block_changed, self)
block! interpreter.block
end
def block_changed old , bl
block! bl
end
2015-07-22 21:05:31 +02:00
def render
return unless block
div.row do
div.col_md_5 do
SourceView :source => block.codes.first.source
end
div.col_md_5 do
h6 { "Block: #{block.name}"}
block.codes.each do |code|
2015-07-25 14:28:59 +02:00
InstructionView :interpreter => interpreter , :instruction => code
end
2015-07-22 21:05:31 +02:00
end
div.col_md_2 do
button.btn.btn_default { "next" }.on(:click) { interpreter.tick }
end
2015-07-22 21:05:31 +02:00
end
end
end