class Glimmer::DSL::Engine
Public Class Methods
interpret_expression(expression, keyword, *args, &block)
click to toggle source
# File lib/glimmer-dsl-opal/ext/glimmer/dsl/engine.rb, line 31 def interpret_expression(expression, keyword, *args, &block) work = lambda do expression.interpret(parent, keyword, *args, &block).tap do |ui_object| add_content(ui_object, expression, keyword, *args, &block) dsl_stack.pop end end if ['shell', 'message_box', 'dialog'].include?(keyword) && Glimmer::SWT::DisplayProxy.instance.shells.empty? Document.ready? do Glimmer::SWT::DisplayProxy.instance.async_exec(&work) end Glimmer::SWT.const_get("Latest#{keyword.camelcase(:upper)}Proxy").new else work.call end end