def sentMessage(self): text = unicode(self.textInput.text()) if text == "" or text[0:11] == "PESTERCHUM:": return self.history.add(text) if self.time.getTime() == None: self.sendtime() grammar = self.time.getGrammar() quirks = self.mainwindow.userprofile.quirks lexmsg = lexMessage(text) if type(lexmsg[0]) is not mecmd: if self.applyquirks: lexmsg = quirks.apply(lexmsg) initials = self.mainwindow.profile().initials() colorcmd = self.mainwindow.profile().colorcmd() clientMsg = [colorBegin("<c=%s>" % (colorcmd), colorcmd), "%s%s%s: " % (grammar.pcf, initials, grammar.number)] + lexmsg + [colorEnd("</c>")] # account for TC's parsing error serverMsg = [colorBegin("<c=%s>" % (colorcmd), colorcmd), "%s: " % (initials)] + lexmsg + [colorEnd("</c>"), " "] else: clientMsg = copy(lexmsg) serverMsg = copy(lexmsg) self.addMessage(clientMsg, True) serverText = convertTags(serverMsg, "ctag") self.messageSent.emit(serverText, self.title()) self.textInput.setText("")
def addMessage(self, lexmsg, chum): if len(lexmsg) == 0: return color = chum.colorcmd() systemColor = QtGui.QColor(self.parent().mainwindow.theme["convo/systemMsgColor"]) initials = chum.initials() parent = self.parent() window = parent.mainwindow me = window.profile() if self.mainwindow.config.animations(): for m in self.urls: if convertTags(lexmsg).find(self.urls[m].toString()) != -1: if m.state() == QtGui.QMovie.NotRunning: m.start() if self.parent().mainwindow.config.showTimeStamps(): if self.parent().mainwindow.config.time12Format(): time = strftime("[%I:%M") else: time = strftime("[%H:%M") if self.parent().mainwindow.config.showSeconds(): time += strftime(":%S] ") else: time += "] " else: time = "" if lexmsg[0] == "PESTERCHUM:BEGIN": parent.setChumOpen(True) pmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/beganpester"]) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:CEASE": parent.setChumOpen(False) pmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/ceasepester"]) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:BLOCK": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/blocked']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:UNBLOCK": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/unblocked']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:BLOCKED": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/blockedmsg']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:IDLE": imsg = chum.idlemsg(systemColor, window.theme['convo/text/idle']) window.chatlog.log(chum.handle, imsg) self.append(convertTags(imsg)) elif type(lexmsg[0]) is mecmd: memsg = chum.memsg(systemColor, lexmsg) if chum is me: window.chatlog.log(parent.chum.handle, memsg) else: window.chatlog.log(chum.handle, memsg) self.append(time + convertTags(memsg)) else: if not parent.chumopen and chum is not me: beginmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/beganpester"]) parent.setChumOpen(True) window.chatlog.log(chum.handle, beginmsg) self.append(convertTags(beginmsg)) lexmsg[0:0] = [colorBegin("<c=%s>" % (color), color), "%s: " % (initials)] lexmsg.append(colorEnd("</c>")) self.append("<span style=\"color:#000000\">" + time + convertTags(lexmsg) + "</span>") if chum is me: window.chatlog.log(parent.chum.handle, lexmsg) else: if window.idleaction.isChecked() and parent.chumopen: idlethreshhold = 60 if (not hasattr(self, 'lastmsg')) or \ datetime.now() - self.lastmsg > timedelta(0,idlethreshhold): verb = window.theme["convo/text/idle"] idlemsg = me.idlemsg(systemColor, verb) parent.textArea.append(convertTags(idlemsg)) window.chatlog.log(parent.title(), idlemsg) parent.messageSent.emit("PESTERCHUM:IDLE", parent.title()) self.lastmsg = datetime.now() window.chatlog.log(chum.handle, lexmsg)
def addMessage(self, lexmsg, chum): if len(lexmsg) == 0: return color = chum.colorcmd() systemColor = QtGui.QColor( self.parent().mainwindow.theme["convo/systemMsgColor"]) initials = chum.initials() parent = self.parent() window = parent.mainwindow me = window.profile() if self.mainwindow.config.animations(): for m in self.urls: if convertTags(lexmsg).find(self.urls[m].toString()) != -1: if m.state() == QtGui.QMovie.NotRunning: m.start() if self.parent().mainwindow.config.showTimeStamps(): if self.parent().mainwindow.config.time12Format(): time = strftime("[%I:%M") else: time = strftime("[%H:%M") if self.parent().mainwindow.config.showSeconds(): time += strftime(":%S] ") else: time += "] " else: time = "" if lexmsg[0] == "PESTERCHUM:BEGIN": parent.setChumOpen(True) pmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/beganpester"]) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:CEASE": parent.setChumOpen(False) pmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/ceasepester"]) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:BLOCK": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/blocked']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:UNBLOCK": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/unblocked']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:BLOCKED": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/blockedmsg']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:IDLE": imsg = chum.idlemsg(systemColor, window.theme['convo/text/idle']) window.chatlog.log(chum.handle, imsg) self.append(convertTags(imsg)) elif type(lexmsg[0]) is mecmd: memsg = chum.memsg(systemColor, lexmsg) if chum is me: window.chatlog.log(parent.chum.handle, memsg) else: window.chatlog.log(chum.handle, memsg) self.append(time + convertTags(memsg)) else: if not parent.chumopen and chum is not me: beginmsg = chum.pestermsg( me, systemColor, window.theme["convo/text/beganpester"]) parent.setChumOpen(True) window.chatlog.log(chum.handle, beginmsg) self.append(convertTags(beginmsg)) lexmsg[0:0] = [ colorBegin("<c=%s>" % (color), color), "%s: " % (initials) ] lexmsg.append(colorEnd("</c>")) self.append("<span style=\"color:#000000\">" + time + convertTags(lexmsg) + "</span>") #self.append('<img src="/Users/lexi/pesterchum-lex/smilies/tab.gif" />' # + '<img src="/Users/lexi/pesterchum/smilies/tab.gif" />' # + '<img src="/Applications/Pesterchum.app/Contents/Resources/smilies/tab.gif" />' # + '<img src="smilies/tab.gif" />'); if chum is me: window.chatlog.log(parent.chum.handle, lexmsg) else: if ((window.idler.auto or window.idler.manual) and parent.chumopen and not parent.isBot(chum.handle)): idlethreshhold = 60 if (not hasattr(self, 'lastmsg')) or \ datetime.now() - self.lastmsg > timedelta(0,idlethreshhold): verb = window.theme["convo/text/idle"] idlemsg = me.idlemsg(systemColor, verb) parent.textArea.append(convertTags(idlemsg)) window.chatlog.log(chum.handle, idlemsg) parent.messageSent.emit("PESTERCHUM:IDLE", parent.title()) self.lastmsg = datetime.now() window.chatlog.log(chum.handle, lexmsg)
def addMessage(self, lexmsg, chum): if len(lexmsg) == 0: return color = chum.colorcmd() systemColor = QtGui.QColor(self.parent().mainwindow.theme["convo/systemMsgColor"]) initials = chum.initials() parent = self.parent() window = parent.mainwindow me = window.profile() if lexmsg[0] == "PESTERCHUM:BEGIN": parent.setChumOpen(True) pmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/beganpester"]) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:CEASE": parent.setChumOpen(False) pmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/ceasepester"]) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:BLOCK": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/blocked']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:UNBLOCK": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/unblocked']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:BLOCKED": pmsg = chum.pestermsg(me, systemColor, window.theme['convo/text/blockedmsg']) window.chatlog.log(chum.handle, pmsg) self.append(convertTags(pmsg)) elif lexmsg[0] == "PESTERCHUM:IDLE": imsg = chum.idlemsg(systemColor, window.theme['convo/text/idle']) window.chatlog.log(chum.handle, imsg) self.append(convertTags(imsg)) elif type(lexmsg[0]) is mecmd: memsg = chum.memsg(systemColor, lexmsg) if chum is me: window.chatlog.log(parent.chum.handle, memsg) else: window.chatlog.log(chum.handle, memsg) self.append(convertTags(memsg)) else: if not parent.chumopen and chum is not me: beginmsg = chum.pestermsg(me, systemColor, window.theme["convo/text/beganpester"]) parent.setChumOpen(True) window.chatlog.log(chum.handle, beginmsg) self.append(convertTags(beginmsg)) lexmsg[0:0] = [colorBegin("<c=%s>" % (color), color), "%s: " % (initials)] lexmsg.append(colorEnd("</c>")) self.append(convertTags(lexmsg)) if chum is me: window.chatlog.log(parent.chum.handle, lexmsg) else: if window.idleaction.isChecked() and parent.chumopen: idlethreshhold = 60 if (not hasattr(self, 'lastmsg')) or \ datetime.now() - self.lastmsg > timedelta(0,idlethreshhold): verb = window.theme["convo/text/idle"] idlemsg = me.idlemsg(systemColor, verb) parent.textArea.append(convertTags(idlemsg)) window.chatlog.log(parent.title(), idlemsg) parent.messageSent.emit("PESTERCHUM:IDLE", parent.title()) self.lastmsg = datetime.now() window.chatlog.log(chum.handle, lexmsg)