diff --git a/TODO b/TODO
index aaeb3f2..a7fcb93 100644
--- a/TODO
+++ b/TODO
@@ -1,7 +1,5 @@
Features:
* Tray doesn't disappear on windows after close
-* memo quirk toggle
-* mood change system msg
* comment history (up button)
* page up/down scrolling
* System tray menu
diff --git a/convo.py b/convo.py
index 9bfbbe2..8ae2d46 100644
--- a/convo.py
+++ b/convo.py
@@ -350,12 +350,17 @@ class PesterConvo(QtGui.QFrame):
def icon(self):
return self.chum.mood.icon(self.mainwindow.theme)
- def updateMood(self, mood, unblocked=False):
+ def updateMood(self, mood, unblocked=False, old=None):
+ syscolor = QtGui.QColor(self.mainwindow.theme["convo/systemMsgColor"])
if mood.name() == "offline" and self.chumopen == True and not unblocked:
- msg = self.chum.pestermsg(self.mainwindow.profile(), QtGui.QColor(self.mainwindow.theme["convo/systemMsgColor"]), self.mainwindow.theme["convo/text/ceasepester"])
+ msg = self.chum.pestermsg(self.mainwindow.profile(), syscolor, self.mainwindow.theme["convo/text/ceasepester"])
self.textArea.append(convertTags(msg))
self.mainwindow.chatlog.log(self.title(), convertTags(msg, "bbcode"))
self.chumopen = False
+ elif old and old.name() != mood.name():
+ msg = self.chum.moodmsg(syscolor, self.mainwindow.theme)
+ self.textArea.append(convertTags(msg))
+ self.mainwindow.chatlog.log(self.title(), convertTags(msg, "bbcode"))
if self.parent():
self.parent().updateMood(self.title(), mood, unblocked)
else:
diff --git a/convo.pyc b/convo.pyc
index d80a8cb..5444dee 100644
Binary files a/convo.pyc and b/convo.pyc differ
diff --git a/dataobjs.py b/dataobjs.py
index 8be4b37..9b3456b 100644
--- a/dataobjs.py
+++ b/dataobjs.py
@@ -25,7 +25,6 @@ class Mood(object):
name = "chummy"
return name
def icon(self, theme):
-
try:
f = theme["main/chums/moods"][self.name()]["icon"]
except KeyError:
@@ -139,6 +138,8 @@ class PesterProfile(object):
return "-- %s%s [%s] %s --" % (syscolor.name(), handle, suffix, self.colorhtml(), initials, msg)
def pestermsg(self, otherchum, syscolor, verb):
return "-- %s [%s] %s %s [%s] at %s --" % (syscolor.name(), self.handle, self.colorhtml(), self.initials(), verb, otherchum.handle, otherchum.colorhtml(), otherchum.initials(), datetime.now().strftime("%H:%M"))
+ def moodmsg(self, syscolor, theme):
+ return "-- %s [%s] changed their mood to %s --" % (syscolor.name(), self.handle, self.colorhtml(), self.initials(), self.mood.name().upper(), theme["main/chums/moods"][self.mood.name()]["icon"])
def memoclosemsg(self, syscolor, timeGrammar, verb):
return "%s%s%s %s." % (syscolor.name(), self.colorhtml(), timeGrammar.pcf, self.initials(), timeGrammar.number, verb)
def memoopenmsg(self, syscolor, td, timeGrammar, verb, channel):
diff --git a/dataobjs.pyc b/dataobjs.pyc
index a378f29..a3409ab 100644
Binary files a/dataobjs.pyc and b/dataobjs.pyc differ
diff --git a/generic.pyc b/generic.pyc
index cc9b4e2..033bd9a 100644
Binary files a/generic.pyc and b/generic.pyc differ
diff --git a/irc.pyc b/irc.pyc
index e4a65a5..62a8eb1 100644
Binary files a/irc.pyc and b/irc.pyc differ
diff --git a/logs/chums.js b/logs/chums.js
index 15c5e5c..2d32949 100644
--- a/logs/chums.js
+++ b/logs/chums.js
@@ -1 +1 @@
-{"macruralAlchemist": {"color": "#700000", "handle": "macruralAlchemist", "mood": "offline"}, "lyricalKeraunoscopic": {"color": "#00c000", "handle": "lyricalKeraunoscopic", "mood": "offline"}, "fireSwallow": {"color": "#80bb9a", "handle": "fireSwallow", "mood": "offline"}, "aquaMarinist": {"color": "#00caca", "handle": "aquaMarinist", "mood": "offline"}, "nitroZealist": {"color": "#ff3737", "handle": "nitroZealist", "mood": "offline"}, "mechanicalSpectacle": {"color": "#0000ff", "handle": "mechanicalSpectacle", "mood": "offline"}, "greyscalePacifist": {"color": "#7f7f7f", "handle": "greyscalePacifist", "mood": "offline"}, "caffeinatedAnalyst": {"color": "#aa0000", "handle": "caffeinatedAnalyst", "mood": "offline"}, "iw": {"color": "#ff0000", "handle": "iw", "mood": "offline"}, "insipidTranscient": {"color": "#104e68", "handle": "insipidTranscient", "mood": "offline"}, "pesterClient394": {"color": "#ff3737", "handle": "pesterClient394", "mood": "offline"}, "absoluteTranquility": {"color": "#000033", "handle": "absoluteTranquility", "mood": "offline"}, "centaursTesticle": {"color": "#000056", "handle": "centaursTesticle", "mood": "offline"}, "quintessentialArbalest": {"color": "#999999", "handle": "quintessentialArbalest", "mood": "offline"}, "agogPorphyry": {"color": "#522d80", "handle": "agogPorphyry", "mood": "offline"}, "DocScratch": {"color": "#ffffff", "handle": "DocScratch", "mood": "offline"}, "anguillaNuntia": {"color": "#ff007f", "handle": "anguillaNuntia", "mood": "offline"}, "aceIsm": {"color": "#ffcc66", "handle": "aceIsm", "mood": "offline"}, "apocalypseArisen": {"color": "#a10000", "handle": "apocalypseArisen", "mood": "offline"}, "radicalApologist": {"color": "#ffaa00", "handle": "radicalApologist", "mood": "offline"}, "microMachines": {"color": "#aa00ff", "handle": "microMachines", "mood": "offline"}, "uroborosUnbound": {"color": "#00416a", "handle": "uroborosUnbound", "mood": "offline"}, "arachnidsGrip": {"color": "#005682", "handle": "arachnidsGrip", "mood": "offline"}, "percipientPedestrian": {"color": "#00ffff", "handle": "percipientPedestrian", "mood": "offline"}, "tentacleTherapist": {"color": "#cc66ff", "handle": "tentacleTherapist", "mood": "offline"}, "gamblingGenocider": {"color": "#00ff00", "handle": "gamblingGenocider", "mood": "offline"}, "elegantDiversion": {"color": "#14b40a", "handle": "elegantDiversion", "mood": "offline"}, "moirailBunp": {"color": "#6a3d0f", "handle": "moirailBunp", "mood": "offline"}, "madLurker": {"color": "#000000", "handle": "madLurker", "mood": "offline"}, "testOut": {"color": "#c760cc", "handle": "testOut", "mood": "offline"}, "pesterClient3022": {"color": "#336600", "handle": "pesterClient3022", "mood": "offline"}, "hellerificJefferson": {"color": "#3300ff", "handle": "hellerificJefferson", "mood": "offline"}, "androidTechnician": {"color": "#0000ff", "handle": "androidTechnician", "mood": "offline"}, "recalcitrantDisaster": {"color": "#8b0068", "handle": "recalcitrantDisaster", "mood": "offline"}, "superGhost": {"color": "#800564", "handle": "superGhost", "mood": "offline"}, "arsenicCatnip": {"color": "#006400", "handle": "arsenicCatnip", "mood": "offline"}, "kaleidoscopicMind": {"color": "#ff6666", "handle": "kaleidoscopicMind", "mood": "offline"}, "aquaticMarinist": {"color": "#00caca", "handle": "aquaticMarinist", "mood": "offline"}, "captainCaveman": {"color": "#7c414e", "handle": "captainCaveman", "mood": "offline"}, "cuttlefishCuller": {"color": "#77003c", "handle": "cuttlefishCuller", "mood": "offline"}, "carcinoGeneticist": {"color": "#999999", "handle": "carcinoGeneticist", "mood": "offline"}, "masterG": {"color": "#77003c", "handle": "masterG", "mood": "offline"}, "plasmaModerator": {"color": "#5685cc", "handle": "plasmaModerator", "mood": "offline"}, "carcinoGenetecist": {"color": "#7f7f7f", "handle": "carcinoGenetecist", "mood": "offline"}, "remoteBloodbath": {"color": "#c70000", "handle": "remoteBloodbath", "mood": "offline"}, "oilslickOrchid": {"color": "#743f7e", "handle": "oilslickOrchid", "mood": "offline"}, "acapellaWaterfall": {"color": "#000099", "handle": "acapellaWaterfall", "mood": "offline"}, "rageInducer": {"color": "#00ffff", "handle": "rageInducer", "mood": "offline"}, "gallowsCalibrator": {"color": "#008282", "handle": "gallowsCalibrator", "mood": "offline"}, "greenZephyr": {"color": "#00ca40", "handle": "greenZephyr", "mood": "offline"}, "lawdEngrish": {"color": "#00ff00", "handle": "lawdEngrish", "mood": "offline"}, "adiosToreador": {"color": "#aa5500", "handle": "adiosToreador", "mood": "offline"}, "maxiumumFatness": {"color": "#3366ff", "handle": "maxiumumFatness", "mood": "offline"}, "schlagzeugGator": {"color": "#61821f", "handle": "schlagzeugGator", "mood": "offline"}, "metaliAggressive": {"color": "#9289d5", "handle": "metaliAggressive", "mood": "offline"}, "midnightSparrow": {"color": "#ff55ff", "handle": "midnightSparrow", "mood": "offline"}, "magmaExploiter": {"color": "#d90000", "handle": "magmaExploiter", "mood": "offline"}, "illuminatedWax": {"color": "#000000", "handle": "illuminatedWax", "mood": "offline"}, "zealousScarecrow": {"color": "#00c882", "handle": "zealousScarecrow", "mood": "offline"}, "gardenGnostic": {"color": "#00ff00", "handle": "gardenGnostic", "mood": "offline"}, "unknownTraveler": {"color": "#006666", "handle": "unknownTraveler", "mood": "offline"}, "utilitarianTurnabout": {"color": "#dd0000", "handle": "utilitarianTurnabout", "mood": "offline"}, "marineAquist": {"color": "#00caca", "handle": "marineAquist", "mood": "offline"}}
\ No newline at end of file
+{"macruralAlchemist": {"color": "#700000", "handle": "macruralAlchemist", "mood": "offline"}, "lyricalKeraunoscopic": {"color": "#00c000", "handle": "lyricalKeraunoscopic", "mood": "offline"}, "fireSwallow": {"color": "#80bb9a", "handle": "fireSwallow", "mood": "offline"}, "aquaMarinist": {"color": "#00caca", "handle": "aquaMarinist", "mood": "offline"}, "nitroZealist": {"color": "#ff3737", "handle": "nitroZealist", "mood": "offline"}, "mechanicalSpectacle": {"color": "#0000ff", "handle": "mechanicalSpectacle", "mood": "offline"}, "greyscalePacifist": {"color": "#7f7f7f", "handle": "greyscalePacifist", "mood": "offline"}, "caffeinatedAnalyst": {"color": "#aa0000", "handle": "caffeinatedAnalyst", "mood": "offline"}, "iw": {"color": "#ff0000", "handle": "iw", "mood": "offline"}, "insipidTranscient": {"color": "#145064", "handle": "insipidTranscient", "mood": "offline"}, "pesterClient394": {"color": "#ff3737", "handle": "pesterClient394", "mood": "offline"}, "absoluteTranquility": {"color": "#000033", "handle": "absoluteTranquility", "mood": "offline"}, "centaursTesticle": {"color": "#000056", "handle": "centaursTesticle", "mood": "offline"}, "quintessentialArbalest": {"color": "#999999", "handle": "quintessentialArbalest", "mood": "offline"}, "agogPorphyry": {"color": "#522d80", "handle": "agogPorphyry", "mood": "offline"}, "DocScratch": {"color": "#ffffff", "handle": "DocScratch", "mood": "offline"}, "anguillaNuntia": {"color": "#ff007f", "handle": "anguillaNuntia", "mood": "offline"}, "aceIsm": {"color": "#ffcc66", "handle": "aceIsm", "mood": "offline"}, "apocalypseArisen": {"color": "#a10000", "handle": "apocalypseArisen", "mood": "offline"}, "radicalApologist": {"color": "#ffaa00", "handle": "radicalApologist", "mood": "offline"}, "microMachines": {"color": "#aa00ff", "handle": "microMachines", "mood": "offline"}, "uroborosUnbound": {"color": "#00416a", "handle": "uroborosUnbound", "mood": "offline"}, "arachnidsGrip": {"color": "#005682", "handle": "arachnidsGrip", "mood": "offline"}, "percipientPedestrian": {"color": "#00ffff", "handle": "percipientPedestrian", "mood": "offline"}, "tentacleTherapist": {"color": "#cc66ff", "handle": "tentacleTherapist", "mood": "offline"}, "gamblingGenocider": {"color": "#00ff00", "handle": "gamblingGenocider", "mood": "offline"}, "elegantDiversion": {"color": "#14b40a", "handle": "elegantDiversion", "mood": "offline"}, "moirailBunp": {"color": "#6a3d0f", "handle": "moirailBunp", "mood": "offline"}, "madLurker": {"color": "#000000", "handle": "madLurker", "mood": "offline"}, "testOut": {"color": "#c760cc", "handle": "testOut", "mood": "offline"}, "pesterClient3022": {"color": "#336600", "handle": "pesterClient3022", "mood": "offline"}, "hellerificJefferson": {"color": "#3300ff", "handle": "hellerificJefferson", "mood": "offline"}, "androidTechnician": {"color": "#0000ff", "handle": "androidTechnician", "mood": "offline"}, "recalcitrantDisaster": {"color": "#8b0068", "handle": "recalcitrantDisaster", "mood": "offline"}, "superGhost": {"color": "#800564", "handle": "superGhost", "mood": "offline"}, "arsenicCatnip": {"color": "#006400", "handle": "arsenicCatnip", "mood": "offline"}, "kaleidoscopicMind": {"color": "#ff6666", "handle": "kaleidoscopicMind", "mood": "offline"}, "aquaticMarinist": {"color": "#00caca", "handle": "aquaticMarinist", "mood": "offline"}, "captainCaveman": {"color": "#7c414e", "handle": "captainCaveman", "mood": "offline"}, "sucroseSaboteur": {"color": "#00e700", "handle": "sucroseSaboteur", "mood": "offline"}, "cuttlefishCuller": {"color": "#77003c", "handle": "cuttlefishCuller", "mood": "offline"}, "carcinoGeneticist": {"color": "#999999", "handle": "carcinoGeneticist", "mood": "offline"}, "masterG": {"color": "#77003c", "handle": "masterG", "mood": "offline"}, "plasmaModerator": {"color": "#5685cc", "handle": "plasmaModerator", "mood": "offline"}, "carcinoGenetecist": {"color": "#7f7f7f", "handle": "carcinoGenetecist", "mood": "offline"}, "remoteBloodbath": {"color": "#c70000", "handle": "remoteBloodbath", "mood": "offline"}, "oilslickOrchid": {"color": "#743f7e", "handle": "oilslickOrchid", "mood": "offline"}, "acapellaWaterfall": {"color": "#000099", "handle": "acapellaWaterfall", "mood": "offline"}, "rageInducer": {"color": "#00ffff", "handle": "rageInducer", "mood": "offline"}, "gallowsCalibrator": {"color": "#008282", "handle": "gallowsCalibrator", "mood": "offline"}, "greenZephyr": {"color": "#00ca40", "handle": "greenZephyr", "mood": "offline"}, "lawdEngrish": {"color": "#00ff00", "handle": "lawdEngrish", "mood": "offline"}, "adiosToreador": {"color": "#aa5500", "handle": "adiosToreador", "mood": "offline"}, "maxiumumFatness": {"color": "#3366ff", "handle": "maxiumumFatness", "mood": "offline"}, "schlagzeugGator": {"color": "#61821f", "handle": "schlagzeugGator", "mood": "offline"}, "metaliAggressive": {"color": "#9289d5", "handle": "metaliAggressive", "mood": "offline"}, "midnightSparrow": {"color": "#ff55ff", "handle": "midnightSparrow", "mood": "offline"}, "magmaExploiter": {"color": "#d90000", "handle": "magmaExploiter", "mood": "offline"}, "illuminatedWax": {"color": "#000000", "handle": "illuminatedWax", "mood": "offline"}, "zealousScarecrow": {"color": "#00c882", "handle": "zealousScarecrow", "mood": "offline"}, "gardenGnostic": {"color": "#00ff00", "handle": "gardenGnostic", "mood": "offline"}, "unknownTraveler": {"color": "#006666", "handle": "unknownTraveler", "mood": "offline"}, "utilitarianTurnabout": {"color": "#dd0000", "handle": "utilitarianTurnabout", "mood": "offline"}, "marineAquist": {"color": "#00caca", "handle": "marineAquist", "mood": "offline"}}
\ No newline at end of file
diff --git a/memos.py b/memos.py
index 7ca4036..5b0a358 100644
--- a/memos.py
+++ b/memos.py
@@ -318,6 +318,13 @@ class PesterMemo(PesterConvo):
self.userlist.optionsMenu.addAction(self.addchumAction)
# ban & op list added if we are op
+ self.optionsMenu = QtGui.QMenu(self)
+ self.quirksOff = QtGui.QAction(self.mainwindow.theme["main/menus/rclickchumlist/quirksoff"], self)
+ self.quirksOff.setCheckable(True)
+ self.connect(self.quirksOff, QtCore.SIGNAL('toggled(bool)'),
+ self, QtCore.SLOT('toggleQuirks(bool)'))
+ self.optionsMenu.addAction(self.quirksOff)
+
self.timeslider = TimeSlider(QtCore.Qt.Horizontal, self)
self.timeinput = TimeInput(self.timeslider, self)
self.timeinput.setText(timestr)
@@ -387,6 +394,7 @@ class PesterMemo(PesterConvo):
self.op = False
self.newmessage = False
+ self.applyquirks = True
def title(self):
return self.channel
@@ -532,14 +540,17 @@ class PesterMemo(PesterConvo):
@QtCore.pyqtSlot()
def sentMessage(self):
- text = self.textInput.text()
+ text = unicode(self.textInput.text())
if text == "":
return
if self.time.getTime() == None:
self.sendtime()
grammar = self.time.getGrammar()
# deal with quirks here
- qtext = self.mainwindow.userprofile.quirks.apply(unicode(text))
+ if self.applyquirks:
+ qtext = self.mainwindow.userprofile.quirks.apply(text)
+ else:
+ qtext = text
if qtext[0:3] != "/me":
initials = self.mainwindow.profile().initials()
colorcmd = self.mainwindow.profile().colorcmd()
@@ -549,12 +560,11 @@ class PesterMemo(PesterConvo):
else:
clientText = qtext
serverText = clientText
- self.textInput.setText("")
self.addMessage(clientText, True)
# convert color tags
- text = convertTags(unicode(serverText), "ctag")
+ serverText = convertTags(unicode(serverText), "ctag")
self.messageSent.emit(serverText, self.title())
-
+ self.textInput.setText("")
@QtCore.pyqtSlot()
def namesUpdated(self):
# get namesdb
diff --git a/memos.pyc b/memos.pyc
index 1b0b798..b60595e 100644
Binary files a/memos.pyc and b/memos.pyc differ
diff --git a/menus.pyc b/menus.pyc
index 7cad1d7..2c3ae99 100644
Binary files a/menus.pyc and b/menus.pyc differ
diff --git a/oyoyo/__init__.pyc b/oyoyo/__init__.pyc
index 28e3e80..be26c04 100644
Binary files a/oyoyo/__init__.pyc and b/oyoyo/__init__.pyc differ
diff --git a/oyoyo/client.pyc b/oyoyo/client.pyc
index 9115adc..5ba5325 100644
Binary files a/oyoyo/client.pyc and b/oyoyo/client.pyc differ
diff --git a/oyoyo/cmdhandler.pyc b/oyoyo/cmdhandler.pyc
index d97b3d1..e9def19 100644
Binary files a/oyoyo/cmdhandler.pyc and b/oyoyo/cmdhandler.pyc differ
diff --git a/oyoyo/helpers.pyc b/oyoyo/helpers.pyc
index e5b17da..e5c82c4 100644
Binary files a/oyoyo/helpers.pyc and b/oyoyo/helpers.pyc differ
diff --git a/oyoyo/ircevents.pyc b/oyoyo/ircevents.pyc
index c83999f..1f1ccd6 100644
Binary files a/oyoyo/ircevents.pyc and b/oyoyo/ircevents.pyc differ
diff --git a/oyoyo/parse.pyc b/oyoyo/parse.pyc
index 9095b24..e67f2ea 100644
Binary files a/oyoyo/parse.pyc and b/oyoyo/parse.pyc differ
diff --git a/parsetools.py b/parsetools.py
index bec1652..34d70cf 100644
--- a/parsetools.py
+++ b/parsetools.py
@@ -43,11 +43,8 @@ def convertTags(string, format="html"):
string = _urlre.sub(urlrep, string)
if format == "html":
string = _memore.sub(r" \1", string)
- string = string.replace(" :trollcool:", " " % ("themes/pesterchum/trollcool.gif")) # ugh hardcoded, gross i know. but its just 2 smilies
- string = string.replace(" :cool:", " " % ("themes/pesterchum/pccool.gif"))
- elif format == "bbcode":
- string = string.replace(" :trollcool:", " [img]http://www.mspaintadventures.com/storyfiles/hs2/scraps/trollcool.gif[/img]")
- string = string.replace(" :cool:", " [img]http://www.mspaintadventures.com/storyfiles/hs2/scraps/pccool.gif[/img]")
+ for (code, f) in smiledict.iteritems():
+ string = string.replace(" %s" % (code), " " % (f))
return string
def escapeBrackets(string):
@@ -141,3 +138,40 @@ def timeDifference(td):
else:
timetext = "%d HOURS %s" % (hours, when)
return timetext
+
+
+smiledict = {
+ ":rancorous:": "pc_rancorous.gif",
+ ":apple:": "apple.gif",
+ ":bathearst:" "bathearst.gif"
+ ":pleasant:": "pc_pleasant.gif",
+ ":blueghost:": "blueslimer.gif",
+ ":candycorn:": "candycorn.gif",
+ ":cheer:": "cheer.gif",
+ ":duhjohn:": "confusedjohn.gif",
+ ":datrump:": "datrump.gif",
+ ":facepalm:": "facepalm.gif",
+ ":bonk:": "headbonk.gif",
+ ":mspa:": "mspa_face.gif",
+ ":gun:": "mspa_reader.gif",
+ ":cal:": "lilcal.png",
+ ":amazedfirman:": "pc_amazedfirman.gif",
+ ":amazed:": "pc_amazed.gif",
+ ":chummy:": "pc_chummy.gif",
+ ":cool:": "pccool.gif",
+ ":smooth:": "pccool.gif",
+ ":distraughtfirman": "pc_distraughtfirman.gif",
+ ":distraught:": "pc_distraught.gif",
+ ":insolent:": "pc_insolent.gif",
+ ":3:": "pckitty.gif",
+ ":mystified:": "pc_mystified.gif",
+ ":pranky:": "pc_pranky.gif",
+ ":tense:": "pc_tense.gif",
+ ":record:": "record.gif",
+ ":squiddle:": "squiddle.gif",
+ ":tab:": "tab.gif",
+ ":beetip:": "theprofessor.gif",
+ ":flipout:": "weasel.gif",
+ ":befuddled:": "what.gif",
+ ":pumpkin:": "whatpumpkin.gif",
+ ":trollcool:": "trollcool.gif"}
diff --git a/parsetools.pyc b/parsetools.pyc
index bb5bc72..692c655 100644
Binary files a/parsetools.pyc and b/parsetools.pyc differ
diff --git a/pesterchum.js b/pesterchum.js
index 50e241a..4d98969 100644
--- a/pesterchum.js
+++ b/pesterchum.js
@@ -1 +1 @@
-{"tabs": true, "soundon": false, "chums": ["marineAquist", "unknownTraveler", "tentacleTherapist", "macruralAlchemist", "vaginalEngineer", "mechanicalSpectacle", "carcinoGeneticist", "schlagzeugGator", "gamblingGenocider", "gardenGnostic", "superGhost", "centaursTesticle", "arachnidsGrip", "grimAuxiliatrix", "remoteBloodbath", "nitroZealist", "greenZephyr", "arsenicCatnip", "adiosToreador", "cuttlefishCuller", "rageInducer", "gallowsCalibrator", "caligulasAquarium", "terminallyCapricious", "illuminatedWax", "aquaMarinist", "maxiumumFatness", "elegantDiversion", "moirailBunp", "uroborosUnbound", "androidTechnician", "midnightSparrow", "apocalypseArisen", "acapellaWaterfall", "anguillaNuntia", "oilslickOrchid"], "block": []}
\ No newline at end of file
+{"tabs": true, "soundon": true, "chums": ["marineAquist", "unknownTraveler", "tentacleTherapist", "macruralAlchemist", "vaginalEngineer", "mechanicalSpectacle", "carcinoGeneticist", "schlagzeugGator", "gamblingGenocider", "gardenGnostic", "superGhost", "centaursTesticle", "arachnidsGrip", "grimAuxiliatrix", "remoteBloodbath", "nitroZealist", "greenZephyr", "arsenicCatnip", "adiosToreador", "cuttlefishCuller", "rageInducer", "gallowsCalibrator", "caligulasAquarium", "terminallyCapricious", "illuminatedWax", "aquaMarinist", "maxiumumFatness", "elegantDiversion", "moirailBunp", "uroborosUnbound", "androidTechnician", "midnightSparrow", "apocalypseArisen", "acapellaWaterfall", "anguillaNuntia", "oilslickOrchid", "confusedTransient"], "defaultprofile": "ghostDunk", "block": []}
\ No newline at end of file
diff --git a/pesterchum.py b/pesterchum.py
index a403749..639096f 100644
--- a/pesterchum.py
+++ b/pesterchum.py
@@ -364,8 +364,11 @@ class chumArea(RightClickList):
return chums
def updateMood(self, handle, mood):
chums = self.getChums(handle)
+ oldmood = None
for c in chums:
+ oldmood = c.mood
c.setMood(mood)
+ return oldmood
def updateColor(self, handle, color):
chums = self.findItems(handle, QtCore.Qt.MatchFlags(0))
for c in chums:
@@ -804,9 +807,9 @@ class PesterWindow(MovingWindow):
self.chumdb.setColor(handle, color)
def updateMood(self, handle, mood):
- self.chumList.updateMood(handle, mood)
+ oldmood = self.chumList.updateMood(handle, mood)
if self.convos.has_key(handle):
- self.convos[handle].updateMood(mood)
+ self.convos[handle].updateMood(mood, old=oldmood)
if hasattr(self, 'trollslum') and self.trollslum:
self.trollslum.updateMood(handle, mood)
def newConversation(self, chum, initiated=True):
diff --git a/profiles/ghostDunk.js b/profiles/ghostDunk.js
index 43ce8df..338c689 100644
--- a/profiles/ghostDunk.js
+++ b/profiles/ghostDunk.js
@@ -1 +1 @@
-{"color": "#ff00ff", "theme": "trollian", "quirks": [], "handle": "ghostDunk"}
\ No newline at end of file
+{"color": "#ff00ff", "theme": "pesterchum", "quirks": [], "handle": "ghostDunk"}
\ No newline at end of file
diff --git a/smilies/Smilies.zip b/smilies/Smilies.zip
new file mode 100644
index 0000000..fcd22d8
Binary files /dev/null and b/smilies/Smilies.zip differ
diff --git a/smilies/Thumbs.db b/smilies/Thumbs.db
new file mode 100644
index 0000000..f072252
Binary files /dev/null and b/smilies/Thumbs.db differ
diff --git a/smilies/apple.gif b/smilies/apple.gif
new file mode 100644
index 0000000..5a4960e
Binary files /dev/null and b/smilies/apple.gif differ
diff --git a/smilies/bathearst.gif b/smilies/bathearst.gif
new file mode 100644
index 0000000..757acb4
Binary files /dev/null and b/smilies/bathearst.gif differ
diff --git a/smilies/blacktear.gif b/smilies/blacktear.gif
new file mode 100644
index 0000000..b13cb3c
Binary files /dev/null and b/smilies/blacktear.gif differ
diff --git a/smilies/blueslimer.gif b/smilies/blueslimer.gif
new file mode 100644
index 0000000..7a2f8eb
Binary files /dev/null and b/smilies/blueslimer.gif differ
diff --git a/smilies/candycorn.gif b/smilies/candycorn.gif
new file mode 100644
index 0000000..9de4452
Binary files /dev/null and b/smilies/candycorn.gif differ
diff --git a/smilies/cathearst.png b/smilies/cathearst.png
new file mode 100644
index 0000000..82fca88
Binary files /dev/null and b/smilies/cathearst.png differ
diff --git a/smilies/cheer.gif b/smilies/cheer.gif
new file mode 100644
index 0000000..8d2c8cd
Binary files /dev/null and b/smilies/cheer.gif differ
diff --git a/smilies/confusedjohn.gif b/smilies/confusedjohn.gif
new file mode 100644
index 0000000..9298353
Binary files /dev/null and b/smilies/confusedjohn.gif differ
diff --git a/smilies/datrump.gif b/smilies/datrump.gif
new file mode 100644
index 0000000..ed03902
Binary files /dev/null and b/smilies/datrump.gif differ
diff --git a/smilies/facepalm.gif b/smilies/facepalm.gif
new file mode 100644
index 0000000..711ebce
Binary files /dev/null and b/smilies/facepalm.gif differ
diff --git a/smilies/headbonk.gif b/smilies/headbonk.gif
new file mode 100644
index 0000000..8767d0f
Binary files /dev/null and b/smilies/headbonk.gif differ
diff --git a/smilies/lilcal.png b/smilies/lilcal.png
new file mode 100644
index 0000000..c418532
Binary files /dev/null and b/smilies/lilcal.png differ
diff --git a/smilies/mspa_face.gif b/smilies/mspa_face.gif
new file mode 100644
index 0000000..1a10b79
Binary files /dev/null and b/smilies/mspa_face.gif differ
diff --git a/smilies/mspa_reader.gif b/smilies/mspa_reader.gif
new file mode 100644
index 0000000..217fb43
Binary files /dev/null and b/smilies/mspa_reader.gif differ
diff --git a/smilies/pc_amazed.gif b/smilies/pc_amazed.gif
new file mode 100644
index 0000000..8401577
Binary files /dev/null and b/smilies/pc_amazed.gif differ
diff --git a/smilies/pc_amazedfirman.gif b/smilies/pc_amazedfirman.gif
new file mode 100644
index 0000000..d9fab2a
Binary files /dev/null and b/smilies/pc_amazedfirman.gif differ
diff --git a/smilies/pc_bemused.gif b/smilies/pc_bemused.gif
new file mode 100644
index 0000000..72ee589
Binary files /dev/null and b/smilies/pc_bemused.gif differ
diff --git a/smilies/pc_chummy.gif b/smilies/pc_chummy.gif
new file mode 100644
index 0000000..1689a7f
Binary files /dev/null and b/smilies/pc_chummy.gif differ
diff --git a/smilies/pc_distraught.gif b/smilies/pc_distraught.gif
new file mode 100644
index 0000000..47e0a39
Binary files /dev/null and b/smilies/pc_distraught.gif differ
diff --git a/smilies/pc_distraughtfirman.gif b/smilies/pc_distraughtfirman.gif
new file mode 100644
index 0000000..ac65d35
Binary files /dev/null and b/smilies/pc_distraughtfirman.gif differ
diff --git a/smilies/pc_insolent.gif b/smilies/pc_insolent.gif
new file mode 100644
index 0000000..652958a
Binary files /dev/null and b/smilies/pc_insolent.gif differ
diff --git a/smilies/pc_mystified.gif b/smilies/pc_mystified.gif
new file mode 100644
index 0000000..f523f37
Binary files /dev/null and b/smilies/pc_mystified.gif differ
diff --git a/smilies/pc_pleasant.gif b/smilies/pc_pleasant.gif
new file mode 100644
index 0000000..fe7a61e
Binary files /dev/null and b/smilies/pc_pleasant.gif differ
diff --git a/smilies/pc_pranky.gif b/smilies/pc_pranky.gif
new file mode 100644
index 0000000..8fd795f
Binary files /dev/null and b/smilies/pc_pranky.gif differ
diff --git a/smilies/pc_rancorous.gif b/smilies/pc_rancorous.gif
new file mode 100644
index 0000000..021f71f
Binary files /dev/null and b/smilies/pc_rancorous.gif differ
diff --git a/smilies/pc_tense.gif b/smilies/pc_tense.gif
new file mode 100644
index 0000000..1948969
Binary files /dev/null and b/smilies/pc_tense.gif differ
diff --git a/smilies/pccool.gif b/smilies/pccool.gif
new file mode 100644
index 0000000..bd3ba35
Binary files /dev/null and b/smilies/pccool.gif differ
diff --git a/smilies/pckitty.gif b/smilies/pckitty.gif
new file mode 100644
index 0000000..f84e97c
Binary files /dev/null and b/smilies/pckitty.gif differ
diff --git a/smilies/record.gif b/smilies/record.gif
new file mode 100644
index 0000000..b32c29d
Binary files /dev/null and b/smilies/record.gif differ
diff --git a/smilies/squiddle.gif b/smilies/squiddle.gif
new file mode 100644
index 0000000..2a9c1c3
Binary files /dev/null and b/smilies/squiddle.gif differ
diff --git a/smilies/tab.gif b/smilies/tab.gif
new file mode 100644
index 0000000..d2e729b
Binary files /dev/null and b/smilies/tab.gif differ
diff --git a/smilies/theprofessor.gif b/smilies/theprofessor.gif
new file mode 100644
index 0000000..45c863c
Binary files /dev/null and b/smilies/theprofessor.gif differ
diff --git a/smilies/trollcool.gif b/smilies/trollcool.gif
new file mode 100644
index 0000000..25e8ffb
Binary files /dev/null and b/smilies/trollcool.gif differ
diff --git a/smilies/weasel.gif b/smilies/weasel.gif
new file mode 100644
index 0000000..203157a
Binary files /dev/null and b/smilies/weasel.gif differ
diff --git a/smilies/what.gif b/smilies/what.gif
new file mode 100644
index 0000000..9727eab
Binary files /dev/null and b/smilies/what.gif differ
diff --git a/smilies/whatpumpkin.gif b/smilies/whatpumpkin.gif
new file mode 100644
index 0000000..92f05e0
Binary files /dev/null and b/smilies/whatpumpkin.gif differ