Module: Lebowski::SCUI::Mixins::TerminalViewSupport

Defined in:
lib/lebowski/scui/mixins/terminal_view_support.rb

Instance Method Summary collapse

Instance Method Details

#has_terminal_view_supportObject



11
12
13
# File 'lib/lebowski/scui/mixins/terminal_view_support.rb', line 11

def has_terminal_view_support
  return true
end


20
21
22
23
# File 'lib/lebowski/scui/mixins/terminal_view_support.rb', line 20

def link_to(end_term, x = 0, y = 0)
  assert_item_has_terminal_view_support(end_term)
  self.drag_to(end_term, x, y)
end

#linked_to?(terminal) ⇒ Boolean

Returns:

  • (Boolean)


25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/lebowski/scui/mixins/terminal_view_support.rb', line 25

def linked_to?(terminal)
  assert_item_has_terminal_view_support(terminal)
  
  terminal_parent_node = terminal.parent['content']
  my_parent_node = self.parent['content']
  
  self.parent.links.each do |link|
    return true if (link.start_node == terminal_parent_node) && (link.start_terminal == terminal.terminal_name) && (link.end_terminal == self.terminal_name)
    return true if (link.end_node == terminal_parent_node) && (link.end_terminal == terminal.terminal_name) && (link.start_terminal == self.terminal_name)
  end
  
  terminal.parent.links.each do |link|
    return true if (link.start_node == my_parent_node) && (link.start_terminal == self.terminal_name) && (link.end_terminal == terminal.terminal_name)
    return true if (link.end_node == my_parent_node) && (link.end_terminal == self.terminal_name) && (link.start_terminal == terminal.terminal_name)
  end
  
  return false
end

#terminal_nameObject



15
16
17
18
# File 'lib/lebowski/scui/mixins/terminal_view_support.rb', line 15

def terminal_name
  @terminal_name = self['terminal'] if @terminal_name.nil?
  return @terminal_name
end