Ejemplo n.º 1
0
 def notify(self, signal, event = None):        
     for h in self.handlers[signal]:
         try:
             h[0](event, *h[1])
         except Exception, e:
             import traceback
             traceback.print_exc()
             logger.warning("%s sent %s signal to bad handler %s: %s" %(self.__class__.__name__, signal, h[0], e))
 def popup_set_packet(self, popup, packet, packet_class):      
     new_packet = packet_class()
     new_packet.add_payload(packet.payload)
     if(packet == self.model.packet):
         #корневой заголовок
         self.model.set_packet(new_packet)
     else:
         u = packet.underlayer
         if(u is None):
             logger.warning("None underlayer for no root layer!")
         else:
             u.remove_payload()
             u.add_payload(new_packet)
             self.model.update()
 def popup_remove_packet(self, popup, packet):
     if(packet == self.model.packet):
         #корневой заголовок
         if(not packet.payload):
             self.model.set_packet(None)
         else:
             self.model.set_packet(packet.payload)
     else:
         u = packet.underlayer
         if(u is None):
             logger.warning("None underlayer for no root layer!")
         else:
             u.remove_payload()
             u.add_payload(packet.payload)
             self.model.update()