Module: Rabbit::Renderer::Display

Extended by:
Utils
Defined in:
lib/rabbit/renderer/display.rb,
lib/rabbit/renderer/display/gl.rb,
lib/rabbit/renderer/display/base.rb,
lib/rabbit/renderer/display/info.rb,
lib/rabbit/renderer/display/mask.rb,
lib/rabbit/renderer/display/menu.rb,
lib/rabbit/renderer/display/cursor.rb,
lib/rabbit/renderer/display/search.rb,
lib/rabbit/renderer/display/gesture.rb,
lib/rabbit/renderer/display/graffiti.rb,
lib/rabbit/renderer/display/progress.rb,
lib/rabbit/renderer/display/magnifier.rb,
lib/rabbit/renderer/display/spotlight.rb,
lib/rabbit/renderer/display/key-handler.rb,
lib/rabbit/renderer/display/drawing-area.rb,
lib/rabbit/renderer/display/hook-handler.rb,
lib/rabbit/renderer/display/clutter-embed.rb,
lib/rabbit/renderer/display/button-handler.rb,
lib/rabbit/renderer/display/scroll-handler.rb,
lib/rabbit/renderer/display/drawing-area-base.rb,
lib/rabbit/renderer/display/drawing-area-primitive.rb,
lib/rabbit/renderer/display/drawing-area-view-only.rb

Defined Under Namespace

Modules: Base, ButtonHandler, Cursor, DrawingAreaBase, DrawingAreaPrimitive, GL, Gesture, Graffiti, HookHandler, Info, KeyHandler, Magnifier, Mask, Menu, Progress, ScrollHandler, Search, Spotlight Classes: ClutterEmbed, DrawingArea, DrawingAreaViewOnly

Class Method Summary collapse

Methods included from Utils

arg_list, collect_classes_under_module, collect_modules_under_module, collect_under_module, combination, compute_bottom_y, compute_left_x, compute_right_x, compute_top_y, corresponding_class_under_module, corresponding_module_under_module, corresponding_objects, ensure_time, events_pending_available?, extract_four_way, find_path_in_load_path, init_by_constants_as_default_value, move_to, move_to_bottom_left, move_to_bottom_right, move_to_top_left, move_to_top_right, parse_four_way, process_pending_events, process_pending_events_proc, quartz?, require_files_under_directory_in_load_path, require_safe, split_number_to_minute_and_second, stringify_hash_key, support_console_input?, support_console_output?, syntax_highlighting_debug?, time, to_class_name, unescape_title, windows?

Class Method Details

.init(options = {}) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/rabbit/renderer/display.rb', line 11

def init(options={})
  if options.has_key?(:preferred_class_name)
    @preferred_class_name = options[:preferred_class_name]
  end
  unless @initialized
    @initialized = true
    dir = ::File.join("rabbit", "renderer", "display")
    require_files_under_directory_in_load_path(dir)
  end
end

.new(*args, &block) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/rabbit/renderer/display.rb', line 22

def new(*args, &block)
  init
  target_class = nil
  if @preferred_class_name
    if const_defined?(@preferred_class_name)
      target_class = const_get(@preferred_class_name)
      target_class = nil unless target_class.is_a?(Class)
    end
  end
  target_class ||= corresponding_class_under_module(self)
  target_class.new(*args, &block)
end