Module: Glimmer

Includes:
SwtPackages
Included in:
ComboSelectionDataBindingCommandHandler, DataBindingCommandHandler, GFont, ListSelectionBinding, ListSelectionDataBindingCommandHandler, Node, TabItemCommandHandler, TableItemsBinding, TreeItemsBinding, WidgetBinding, XmlNameSpaceCommandHandler
Defined in:
lib/glimmer.rb,
lib/glimmer/parent.rb,
lib/glimmer/swt_packages.rb,
lib/glimmer/command_handler.rb,
lib/glimmer/command_handlers.rb,
lib/glimmer/xml_command_handlers.rb,
lib/glimmer/command_handler_chain_link.rb,
lib/glimmer/command_handler_chain_factory.rb,
lib/glimmer/command_handlers/models/g_swt.rb,
lib/glimmer/command_handlers/models/g_font.rb,
lib/glimmer/command_handlers/models/g_color.rb,
lib/glimmer/command_handlers/models/g_shell.rb,
lib/glimmer/command_handlers/models/g_layout.rb,
lib/glimmer/command_handlers/models/g_widget.rb,
lib/glimmer/command_handlers/models/observer.rb,
lib/glimmer/xml_command_handlers/models/node.rb,
lib/glimmer/command_handlers/models/g_display.rb,
lib/glimmer/command_handlers/models/g_runnable.rb,
lib/glimmer/command_handlers/models/observable.rb,
lib/glimmer/command_handlers/bind_command_handler.rb,
lib/glimmer/command_handlers/models/g_layout_data.rb,
lib/glimmer/command_handlers/models/model_binding.rb,
lib/glimmer/command_handlers/color_command_handler.rb,
lib/glimmer/command_handlers/models/widget_binding.rb,
lib/glimmer/command_handlers/shell_command_handler.rb,
lib/glimmer/command_handlers/layout_command_handler.rb,
lib/glimmer/command_handlers/widget_command_handler.rb,
lib/glimmer/xml_command_handlers/models/xml_visitor.rb,
lib/glimmer/command_handlers/display_command_handler.rb,
lib/glimmer/command_handlers/models/observable_array.rb,
lib/glimmer/command_handlers/models/observable_model.rb,
lib/glimmer/xml_command_handlers/models/node_visitor.rb,
lib/glimmer/xml_command_handlers/xml_command_handler.rb,
lib/glimmer/command_handlers/models/g_widget_listener.rb,
lib/glimmer/command_handlers/property_command_handler.rb,
lib/glimmer/command_handlers/tab_item_command_handler.rb,
lib/glimmer/xml_command_handlers/html_command_handler.rb,
lib/glimmer/command_handlers/models/tree_items_binding.rb,
lib/glimmer/command_handlers/models/table_items_binding.rb,
lib/glimmer/command_handlers/layout_data_command_handler.rb,
lib/glimmer/command_handlers/models/g_tab_item_composite.rb,
lib/glimmer/xml_command_handlers/xml_tag_command_handler.rb,
lib/glimmer/command_handlers/data_binding_command_handler.rb,
lib/glimmer/xml_command_handlers/xml_text_command_handler.rb,
lib/glimmer/command_handlers/models/list_selection_binding.rb,
lib/glimmer/xml_command_handlers/models/name_space_visitor.rb,
lib/glimmer/command_handlers/widget_listener_command_handler.rb,
lib/glimmer/xml_command_handlers/xml_name_space_command_handler.rb,
lib/glimmer/xml_command_handlers/models/depth_first_search_iterator.rb,
lib/glimmer/command_handlers/tree_items_data_binding_command_handler.rb,
lib/glimmer/command_handlers/table_items_data_binding_command_handler.rb,
lib/glimmer/command_handlers/list_selection_data_binding_command_handler.rb,
lib/glimmer/command_handlers/combo_selection_data_binding_command_handler.rb,
lib/glimmer/command_handlers/tree_properties_data_binding_command_handler.rb,
lib/glimmer/command_handlers/table_column_properties_data_binding_command_handler.rb

Defined Under Namespace

Modules: CommandHandler, Observable, ObservableArray, ObservableModel, Observer, Parent, SwtPackages Classes: BindCommandHandler, ColorCommandHandler, ComboSelectionDataBindingCommandHandler, CommandHandlerChainFactory, CommandHandlerChainLink, DataBindingCommandHandler, DepthFirstSearchIterator, DisplayCommandHandler, GColor, GDisplay, GFont, GLayout, GLayoutData, GRunnable, GSWT, GShell, GTabItemComposite, GWidget, GWidgetListener, HtmlCommandHandler, LayoutCommandHandler, LayoutDataCommandHandler, ListSelectionBinding, ListSelectionDataBindingCommandHandler, ModelBinding, NameSpaceVisitor, Node, NodeVisitor, PropertyCommandHandler, ShellCommandHandler, TabItemCommandHandler, TableColumnPropertiesDataBindingCommandHandler, TableItemsBinding, TableItemsDataBindingCommandHandler, TreeItemsBinding, TreeItemsDataBindingCommandHandler, TreePropertiesDataBindingCommandHandler, WidgetBinding, WidgetCommandHandler, WidgetListenerCommandHandler, XmlCommandHandler, XmlNameSpaceCommandHandler, XmlTagCommandHandler, XmlTextCommandHandler, XmlVisitor

Constant Summary collapse

@@parent_stack =
[]
@@logger =
Logger.new(STDOUT).tap {|logger| logger.level = Logger::WARN}

Class Method Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_symbol, *args, &block) ⇒ Object

added for convenience



50
51
52
# File 'lib/glimmer.rb', line 50

def method_missing(method_symbol, *args, &block)
  Glimmer.method_missing(method_symbol, *args, &block)
end

Class Method Details

.add_contents(parent, &block) ⇒ Object



38
39
40
41
42
# File 'lib/glimmer.rb', line 38

def self.add_contents(parent, &block)
  @@parent_stack.push(parent) if parent.is_a?(Parent)
  @@parent_stack.last.process_block(block) if block and @@parent_stack.last
  @@parent_stack.pop if parent.is_a?(Parent)
end

.dsl(dsl) ⇒ Object



44
45
46
# File 'lib/glimmer.rb', line 44

def self.dsl(dsl)
  CommandHandlerChainFactory.select_dsl(dsl)
end

.extended(klass) ⇒ Object



19
20
21
# File 'lib/glimmer.rb', line 19

def self.extended(klass)
  klass.include SwtPackages
end

.included(klass) ⇒ Object



16
17
18
# File 'lib/glimmer.rb', line 16

def self.included(klass)
  klass.include SwtPackages
end

.loggerObject



26
27
28
# File 'lib/glimmer.rb', line 26

def self.logger
  @@logger
end

.method_missing(method_symbol, *args, &block) ⇒ Object



30
31
32
33
34
35
36
# File 'lib/glimmer.rb', line 30

def self.method_missing(method_symbol, *args, &block)
  Glimmer.logger.debug "method: " + method_symbol.to_s + " and args: " + args.to_s
  command_handler_chain = CommandHandlerChainFactory.chain
  return_value = command_handler_chain.handle(@@parent_stack.last, method_symbol, *args, &block)
  add_contents(return_value, &block)
  return return_value
end

Instance Method Details

#add_contents(parent, &block) ⇒ Object



54
55
56
# File 'lib/glimmer.rb', line 54

def add_contents(parent, &block)
  Glimmer.add_contents(parent, &block)
end

#dsl(dsl) ⇒ Object



58
59
60
# File 'lib/glimmer.rb', line 58

def dsl(dsl)
  CommandHandlerChainFactory.select_dsl(dsl)
end