This commit is contained in:
Stephen Dranger 2011-02-24 12:07:37 -06:00
parent 3430472472
commit b3e99df069
6 changed files with 16 additions and 11 deletions

3
TODO
View file

@ -5,11 +5,8 @@ Bugs:
Features:
* help menu -- about and forum
* copy quirks between profiles?
* shared buddy lists - changes to the buddy list should refresh it?
multiple clients share buddy list???
* chumList not scaling -- QListView + delegate?
* help button on quirks menu?
-- release beta
* hide offline chums
* chum list groups
* More complex quirks: by-sound

View file

@ -341,10 +341,10 @@ class PesterText(QtGui.QTextEdit):
timeout=15)
hconn.request("POST", "/index.php", params, headers)
response = hconn.getresponse()
if response.status == "200":
if response.status == 200:
self.sending.sendinglabel.setText("SUCC3SS!")
else:
self.sending.sendinglabel.setText("F41L3D")
self.sending.sendinglabel.setText("F41L3D: %s %s" % (response.status, response.reason))
hconn.close()
except Exception, e:
self.sending.sendinglabel.setText("F41L3D: %s" % (e))

File diff suppressed because one or more lines are too long

View file

@ -12,7 +12,7 @@ _ctag_rgb = re.compile(r'\d+,\d+,\d+')
_urlre = re.compile(r"(?i)http://[^\s]+")
_memore = re.compile(r"(\s|^)(#[A-Za-z0-9_]+)")
_imgre = re.compile(r"""(?i)<img src=['"](\S+)['"]\s*/>""")
_mecmdre = re.compile(r"^/me(\S*)")
_mecmdre = re.compile(r"^(/me|PESTERCHUM:ME)(\S*)")
def lexer(string, objlist):
"""objlist is a list: [(objecttype, re),...] list is in order of preference"""
@ -118,7 +118,7 @@ class smiley(object):
else:
return self.string
class mecmd(object):
def __init__(self, string, suffix):
def __init__(self, string, mecmd, suffix):
self.string = string
self.suffix = suffix
def convert(self, format):

View file

@ -1 +1 @@
{"tabs": true, "soundon": true, "server": "irc.tymoon.eu", "chums": ["unknownTraveler", "tentacleTherapist", "vaginalEngineer", "mechanicalSpectacle", "carcinoGeneticist", "schlagzeugGator", "gamblingGenocider", "gardenGnostic", "superGhost", "centaursTesticle", "arachnidsGrip", "grimAuxiliatrix", "remoteBloodbath", "nitroZealist", "greenZephyr", "arsenicCatnip", "cuttlefishCuller", "rageInducer", "gallowsCalibrator", "caligulasAquarium", "terminallyCapricious", "illuminatedWax", "aquaMarinist", "elegantDiversion", "moirailBunp", "uroborosUnbound", "androidTechnician", "midnightSparrow", "apocalypseArisen", "anguillaNuntia", "oilslickOrchid", "confusedTransient", "pretentiousFantasia", "aquaticMarinist", "lyricalKeraunoscopic", "counterRealist", "ectoBiologist", "percipientPedestrian", "asceticClinician", "doctectiveMiracles", "noSense", "obliviousCrafter", "ircMonster", "twinArmageddons", "cannabisHero", "jetRocket"], "defaultprofile": "ghostDunk", "block": []}
{"tabs": true, "soundon": true, "server": "irc.tymoon.eu", "chums": ["unknownTraveler", "tentacleTherapist", "vaginalEngineer", "mechanicalSpectacle", "carcinoGeneticist", "schlagzeugGator", "gamblingGenocider", "gardenGnostic", "superGhost", "centaursTesticle", "arachnidsGrip", "grimAuxiliatrix", "remoteBloodbath", "nitroZealist", "greenZephyr", "arsenicCatnip", "cuttlefishCuller", "rageInducer", "gallowsCalibrator", "caligulasAquarium", "terminallyCapricious", "illuminatedWax", "aquaMarinist", "elegantDiversion", "moirailBunp", "uroborosUnbound", "androidTechnician", "midnightSparrow", "apocalypseArisen", "anguillaNuntia", "oilslickOrchid", "confusedTransient", "pretentiousFantasia", "aquaticMarinist", "lyricalKeraunoscopic", "counterRealist", "ectoBiologist", "percipientPedestrian", "asceticClinician", "doctectiveMiracles", "noSense", "obliviousCrafter", "ircMonster", "twinArmageddons", "cannabisHero", "jetRocket", "adiosToreador", "turntechGodhead"], "defaultprofile": "ghostDunk", "block": []}

View file

@ -199,6 +199,8 @@ class userConfig(object):
self.userprofile = None
def chums(self):
return self.config['chums']
def hideOfflineChums(self):
return self.config.get('hideOfflineChums', False)
def defaultprofile(self):
try:
return self.config['defaultprofile']
@ -208,7 +210,10 @@ class userConfig(object):
return self.config["tabs"]
def addChum(self, chum):
if chum.handle not in self.config['chums']:
newchums = self.config['chums'] + [chum.handle]
fp = open("pesterchum.js") # what if we have two clients open??
newconfig = json.load(fp)
fp.close()
newchums = newconfig['chums'] + [chum.handle]
self.set("chums", newchums)
def removeChum(self, chum):
if type(chum) is PesterProfile:
@ -770,7 +775,10 @@ class PesterWindow(MovingWindow):
self.namesdb = {}
self.chumdb = PesterProfileDB()
chums = [PesterProfile(c, chumdb=self.chumdb) for c in set(self.config.chums())]
if self.config.hideOfflineChums():
chums = []
else:
chums = [PesterProfile(c, chumdb=self.chumdb) for c in set(self.config.chums())]
self.chumList = chumArea(chums, self)
self.connect(self.chumList,
QtCore.SIGNAL('itemActivated(QListWidgetItem *)'),