19         InformationWindow.__init__(self)
 
   20         self.
win = gtk.Dialog(parent=visualizer.window,
 
   21                               flags=gtk.DIALOG_DESTROY_WITH_PARENT|gtk.DIALOG_NO_SEPARATOR,
 
   22                               buttons=(gtk.STOCK_CLOSE, gtk.RESPONSE_CLOSE))
 
   23         self.win.set_default_size(gtk.gdk.screen_width()/2, gtk.gdk.screen_height()/2)
 
   25         self.win.set_title(
"OLSR routing table for node %i" % node_index) 
 
   33         sw = gtk.ScrolledWindow()
 
   34         sw.set_properties(hscrollbar_policy=gtk.POLICY_AUTOMATIC,
 
   35                           vscrollbar_policy=gtk.POLICY_AUTOMATIC)
 
   41         column = gtk.TreeViewColumn(
'Destination', gtk.CellRendererText(),
 
   42                                     text=self.COLUMN_DESTINATION)
 
   43         treeview.append_column(column)
 
   46         column = gtk.TreeViewColumn(
'Next hop', gtk.CellRendererText(),
 
   47                                     text=self.COLUMN_NEXT_HOP)
 
   48         treeview.append_column(column)
 
   51         column = gtk.TreeViewColumn(
'Interface', gtk.CellRendererText(),
 
   52                                     text=self.COLUMN_INTERFACE)
 
   53         treeview.append_column(column)
 
   56         column = gtk.TreeViewColumn(
'Num. Hops', gtk.CellRendererText(),
 
   57                                     text=self.COLUMN_NUM_HOPS)
 
   58         treeview.append_column(column)
 
   60         self.visualizer.add_information_window(self)
 
   65         self.visualizer.remove_information_window(self)
 
   68         node = ns.network.NodeList.GetNode(self.
node_index)
 
   69         olsr = node.GetObject(ns.olsr.olsr.RoutingProtocol.GetTypeId())
 
   70         ipv4 = node.GetObject(ns.internet.Ipv4.GetTypeId())
 
   73         self.table_model.clear()
 
   74         for route 
in olsr.GetRoutingTableEntries():
 
   75             tree_iter = self.table_model.append()
 
   76             netdevice = ipv4.GetNetDevice(route.interface)
 
   80                 interface_name = ns.core.Names.FindName(netdevice)
 
   81                 if not interface_name:
 
   82                     interface_name = 
"(interface %i)" % route.interface
 
   83             self.table_model.set(tree_iter,
 
   84                                  self.COLUMN_DESTINATION, str(route.destAddr),
 
   85                                  self.COLUMN_NEXT_HOP, str(route.nextAddr),
 
   86                                  self.COLUMN_INTERFACE, interface_name,
 
   87                                  self.COLUMN_NUM_HOPS, route.distance)
 
   91     ns3_node = ns.network.NodeList.GetNode(node.node_index)
 
   92     olsr = ns3_node.GetObject(ns.olsr.olsr.RoutingProtocol.GetTypeId())
 
   97     menu_item = gtk.MenuItem(
"Show OLSR Routing Table")
 
  100     def _show_ipv4_routing_table(dummy_menu_item):
 
  103     menu_item.connect(
"activate", _show_ipv4_routing_table)
 
  107     viz.connect(
"populate-node-menu", populate_node_menu)
 
def __init__(self, visualizer, node_index)
 
def _response_cb(self, win, response)
 
def populate_node_menu(viz, node, menu)