def disconnect(self,w,arg2=None): """disconnect pressed""" selectedConns=self.getConns() for conn in selectedConns: gtk.input_remove(self.sockidDict[conn]) del(self.sockidDict[conn]) self.sim.closeConnection(selectedConns) self.updateSockList()
def handleData(self,source,condition): """Handle data from simulation""" #source is a fd #print "Handling %s"%str(source) l=len(self.sim.connList) #print "len %d"%l #print self.sim.connList handledList=self.sim.process() if l!=len(self.sim.connList):#connections have been closed... #print "updateSockList" #print self.sim.connList for key in self.sockidDict.keys(): if key not in self.sim.connList:#connection has been closed print "Connection closed remotely" gtk.input_remove(self.sockidDict[key]) del(self.sockidDict[key]) self.updateSockList() #self.readGUIFeedback(handledList) for data in self.sim.recDataList:#unhandled things... for d in data: if type(d)==types.DictType: for key in d.keys(): print key,":\n",d[key] elif type(d)==socket.SocketType: print "Socket:",d.getpeername() else: print d #print data self.sim.recDataList=[] ## data=serialise.ReadMessage(self.sock.fileno()) ## print "Got data",type(data) ## if type(data)==types.NoneType: ## print "Disconnecting" ## self.gladetree.get_widget("togglebuttonConnect").set_active(False) return True
def removeWriter(self, writer): if hasWriter(writer): gtk.input_remove(writes[writer]) del writes[writer]
def removeReader(self, reader): if hasReader(reader): gtk.input_remove(reads[reader]) del reads[reader]
def remove(self,fd): try: gobject.source_remove(fd) except AttributeError as err: gtk.input_remove(fd)
def removeWriter(self, writer): if writer in self._writes: gtk.input_remove(self._writes[writer]) del self._writes[writer]
def removeReader(self, reader): if reader in self._reads: gtk.input_remove(self._reads[reader]) del self._reads[reader]
def remove(self, fd): try: gobject.source_remove(fd) except AttributeError as err: gtk.input_remove(fd)