Class: LinkView

Inherits:
Object
  • Object
show all
Defined in:
lib/gui/link_view.rb

Instance Method Summary collapse

Constructor Details

#initialize(map, lnk, status) ⇒ LinkView

Returns a new instance of LinkView.



3
4
5
6
7
8
9
10
# File 'lib/gui/link_view.rb', line 3

def initialize (map, lnk, status)
	@visible=true
	@link=lnk
	@group = Goo::CanvasGroup.new($network[map].map_view,{:x => 0.0,:y => 0.0, :can_focus => true})
	@group.lower(nil)
	@color = $status_color[$status_value.index(status)]
	display()
end

Instance Method Details

#color(cl) ⇒ Object



35
36
37
38
39
40
# File 'lib/gui/link_view.rb', line 35

def color(cl)
  @color = cl
  Gtk.thread_protect do
    @lign.stroke_color_rgba = @color
  end
end

#displayObject



12
13
14
15
16
17
18
19
# File 'lib/gui/link_view.rb', line 12

def display()
	self.show()
   @lign=Goo::CanvasPolyline.new(@group, false,
                      [[@link.node1.x+@link.node1.node_view.get_node_size()/2,@link.node1.y+@link.node1.node_view.get_node_size()/2],
		[@link.node2.x+@link.node2.node_view.get_node_size()/2,@link.node2.y+@link.node2.node_view.get_node_size()/2]],
                        :stroke_color_rgba => @color,
                        :line_width => 2.0)
end

#hideObject



26
27
28
29
# File 'lib/gui/link_view.rb', line 26

def hide()
	@visible=false
	@group.visibility = Goo::CanvasItem::HIDDEN
end


31
32
33
# File 'lib/gui/link_view.rb', line 31

def remove_link()
	@group.remove_child(@lign)
end

#showObject



21
22
23
24
# File 'lib/gui/link_view.rb', line 21

def show()
	@visible=true
	@group.visibility = Goo::CanvasItem::VISIBLE
end

#update_status(st) ⇒ Object



42
43
44
# File 'lib/gui/link_view.rb', line 42

def update_status(st)
         color($status_color[$status_value.index(st)])	   
end