diff --git a/TODO b/TODO index 78e23c0..b23a22b 100644 --- a/TODO +++ b/TODO @@ -1,22 +1,17 @@ Features: -* scaling icons -* tab background -* top box layout * chat scrolls when switch theme -* eliminate "SWITCH" in profile menu * remove highlighted text area if focus in textinput -* new sound on CEASE and BEGIN? -* windows text goes gray when out of focus -* Logging +* windows text goes gray when out of focus? * Block list * User list/add from list * Turn quirks off * User commands/stop user from sending commands accidentally * Hyperlinks -* color tags * /me ghostDunk's [GD'S] * Transparent background * tab recombining gives wrong window icon +* help menu -- about and forum +* new sound on CEASE and BEGIN? -- release alpha * shared buddy lists - changes to the buddy list should refresh it? multiple clients share buddy list??? @@ -26,11 +21,13 @@ Features: * page up/down scrolling * ctrl-tab should prefer new convos * Chat rooms/browser -* More complex quirks +* More complex quirks: random, spelling, by-sound * Implement TC options * spell check? * Help menu +* more robust IRC error handling -- release beta +* log viewer * pick your own icon * time codes * theme elements define, implement @@ -40,4 +37,11 @@ Features: * put code into separate files * hide offline chums -* chum list groups \ No newline at end of file +* chum list groups + + + +-- MEMOS: +list has "CREATE" CACNCEL JOIN buttons +no "--" for sys mesg + diff --git a/logs/chums.js b/logs/chums.js index cac9eaf..30b71e4 100644 --- a/logs/chums.js +++ b/logs/chums.js @@ -1 +1 @@ -{"aquaMarinist": {"color": "#00caca", "handle": "aquaMarinist", "mood": "offline"}, "superGhost": {"color": "#800564", "handle": "superGhost", "mood": "offline"}, "captainCaveman": {"color": "#7c414e", "handle": "captainCaveman", "mood": "offline"}, "gamblingGenocider": {"color": "#00ff00", "handle": "gamblingGenocider", "mood": "offline"}, "unknownTraveler": {"color": "#006666", "handle": "unknownTraveler", "mood": "offline"}, "marineAquist": {"color": "#00caca", "handle": "marineAquist", "mood": "offline"}} \ No newline at end of file +{"aquaMarinist": {"color": "#00caca", "handle": "aquaMarinist", "mood": "offline"}, "nitroZealist": {"color": "#ff3737", "handle": "nitroZealist", "mood": "offline"}, "superGhost": {"color": "#800564", "handle": "superGhost", "mood": "offline"}, "tentacleTherapist": {"color": "#cc66ff", "handle": "tentacleTherapist", "mood": "offline"}, "captainCaveman": {"color": "#7c414e", "handle": "captainCaveman", "mood": "offline"}, "gamblingGenocider": {"color": "#00ff00", "handle": "gamblingGenocider", "mood": "offline"}, "schlagzeugGator": {"color": "#61821f", "handle": "schlagzeugGator", "mood": "offline"}, "unknownTraveler": {"color": "#006666", "handle": "unknownTraveler", "mood": "offline"}, "marineAquist": {"color": "#00caca", "handle": "marineAquist", "mood": "offline"}} \ No newline at end of file diff --git a/pesterchum.js b/pesterchum.js index 81621d8..d0acb73 100644 --- a/pesterchum.js +++ b/pesterchum.js @@ -1 +1 @@ -{"tabs": true, "chums": ["aquaMarinist", "gardenGnostic", "gamblingGenocider", "schlagzeugGator", "mechanicalSpectacle", "marineAquist", "unknownTraveler"], "defaultprofile": "testProfile"} \ No newline at end of file +{"tabs": true, "chums": ["aquaMarinist", "gardenGnostic", "gamblingGenocider", "schlagzeugGator", "mechanicalSpectacle", "marineAquist", "unknownTraveler", "tentacleTherapist"], "defaultprofile": "testProfile"} \ No newline at end of file diff --git a/pesterchum.py b/pesterchum.py index 3016fda..5cdd07e 100644 --- a/pesterchum.py +++ b/pesterchum.py @@ -18,7 +18,8 @@ logging.basicConfig(level=logging.INFO) class Mood(object): moods = ["chummy", "rancorous", "offline", "pleasant", "distraught", "unruly", "smooth", "ecstatic", "relaxed", "discontent", - "devious", "sleek", "detestful"] + "devious", "sleek", "detestful", "mirthful", "manipulative", + "vigorous", "perky", "acceptant", "protective"] def __init__(self, mood): if type(mood) is int: self.mood = mood @@ -34,7 +35,83 @@ class Mood(object): return name def icon(self, theme): f = theme["main/chums/moods"][self.name()]["icon"] - return QtGui.QIcon(f) + return PesterIcon(f) + +_ctag_begin = re.compile(r'') +_ctag_rgb = re.compile(r'\d+,\d+,\d+') + +def convertColorTags(string, format="html"): + if format not in ["html", "bbcode", "ctag"]: + raise ValueError("Color format not recognized") + def repfunc(matchobj): + color = matchobj.group(1) + if _ctag_rgb.match(color) is not None: + if format=='ctag': + return "" + qc = QtGui.QColor(*color.split(",")) + else: + qc = QtGui.QColor(color) + if not qc.isValid(): + qc = QtGui.QColor("black") + if format == "html": + return '' % (qc.name()) + elif format == "bbcode": + return '[color=%s]' % (qc.name()) + elif format == "ctag": + (r,g,b,a) = qc.getRgb() + return '' % (r,g,b) + string = _ctag_begin.sub(repfunc, string) + endtag = {"html": "", "bbcode": "[/color]", "ctag": ""} + string = string.replace("", endtag[format]) + return string + +def escapeBrackets(string): + class beginTag(object): + def __init__(self, tag): + self.tag = tag + class endTag(object): + pass + newlist = [] + begintagpos = [(m.start(), m.end()) for m in _ctag_begin.finditer(string)] + lasti = 0 + for (s, e) in begintagpos: + newlist.append(string[lasti:s]) + newlist.append(beginTag(string[s:e])) + lasti = e + if lasti < len(string): + newlist.append(string[lasti:]) + tmp = [] + for o in newlist: + if type(o) is not beginTag: + l = o.split("") + tmp.append(l[0]) + l = l[1:] + for item in l: + tmp.append(endTag()) + tmp.append(item) + else: + tmp.append(o) + btlen = 0 + etlen = 0 + retval = "" + newlist = tmp + for o in newlist: + if type(o) is beginTag: + retval += o.tag.replace("&", "&") + btlen +=1 + elif type(o) is endTag: + if etlen >= btlen: + continue + else: + retval += "" + etlen += 1 + else: + retval += o.replace("&", "&").replace("<", "<").replace(">", ">") + if btlen > etlen: + for i in range(0, btlen-etlen): + retval += "" + return retval + class waitingMessageHolder(object): def __init__(self, mainwindow, **msgfuncs): @@ -65,6 +142,30 @@ class waitingMessageHolder(object): class NoneSound(object): def play(self): pass +class PesterLog(object): + def __init__(self, handle): + self.handle = handle + if not os.path.exists("logs/%s" % (handle)): + os.mkdir("logs/%s" % (handle)) + self.convos = {} + def log(self, handle, msg): + if not self.convos.has_key(handle): + time = datetime.now().strftime("%Y-%m-%d.%H:%M") + if not os.path.exists("logs/%s/%s" % (self.handle, handle)): + os.mkdir("logs/%s/%s" % (self.handle, handle)) + fp = open("logs/%s/%s/%s.%s" % (self.handle, handle, handle, time), 'a') + self.convos[handle] = fp + self.convos[handle].write(msg+"\n") + self.convos[handle].flush() + def finish(self, handle): + if not self.convos.has_key(handle): + return + self.convos[handle].close() + del self.convos[handle] + def close(self): + for h in self.convos.keys(): + self.close(h) + class PesterProfileDB(dict): def __init__(self): try: @@ -124,10 +225,10 @@ class PesterProfile(object): "mood": self.mood.name(), "color": unicode(self.color.name())}) - def beganpestermsg(self, otherchum, verb="began pestering"): - return "-- %s [%s] %s %s [%s] at %s --" % (self.handle, self.colorhtml(), self.initials(), verb, otherchum.handle, otherchum.colorhtml(), otherchum.initials(), datetime.now().strftime("%H:%M")) - def ceasedpestermsg(self, otherchum, verb="ceased pestering"): - return "-- %s [%s] %s %s [%s] at %s --" % (self.handle, self.colorhtml(), self.initials(), verb, otherchum.handle, otherchum.colorhtml(), otherchum.initials(), datetime.now().strftime("%H:%M")) + def beganpestermsg(self, otherchum, syscolor, verb="began pestering"): + 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 ceasedpestermsg(self, otherchum, syscolor, verb="ceased pestering"): + 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")) @staticmethod def checkLength(handle): @@ -643,6 +744,7 @@ class PesterOptions(QtGui.QDialog): class WMButton(QtGui.QPushButton): def __init__(self, icon, parent=None): QtGui.QPushButton.__init__(self, icon, "", parent) + self.setIconSize(icon.realsize()) self.setFlat(True) self.setStyleSheet("QPushButton { padding: 0px; }") self.setAutoDefault(False) @@ -775,8 +877,9 @@ class PesterMoodHandler(QtCore.QObject): class PesterMoodButton(QtGui.QPushButton): def __init__(self, parent, **options): - icon = QtGui.QIcon(options["icon"]) + icon = PesterIcon(options["icon"]) QtGui.QPushButton.__init__(self, icon, options["text"], parent) + self.setIconSize(icon.realsize()) self.setFlat(True) self.resize(*options["size"]) self.move(*options["loc"]) @@ -795,6 +898,22 @@ class PesterMoodButton(QtGui.QPushButton): self.moodUpdated.emit(self.mood.value()) moodUpdated = QtCore.pyqtSignal(int) +class PesterIcon(QtGui.QIcon): + def __init__(self, *x, **y): + QtGui.QIcon.__init__(self, *x, **y) + if type(x[0]) in [str, unicode]: + self.icon_pixmap = QtGui.QPixmap(x[0]) + else: + self.icon_pixmap = None + def realsize(self): + if self.icon_pixmap: + return self.icon_pixmap.size() + else: + try: + return self.availableSizes()[0] + except IndexError: + return None + class MovingWindow(QtGui.QFrame): def __init__(self, *x, **y): QtGui.QFrame.__init__(self, *x, **y) @@ -831,7 +950,7 @@ class PesterTabWindow(QtGui.QFrame): self.connect(self.tabs, QtCore.SIGNAL('tabCloseRequested(int)'), self, QtCore.SLOT('tabClose(int)')) self.tabs.setShape(self.mainwindow.theme["convo/tabs/tabstyle"]) - self.tabs.setStyleSheet("QTabBar::tabs{ %s }" % (self.mainwindow.theme["convo/tabs/style"])) + self.tabs.setStyleSheet("QTabBar::tab{ %s } QTabBar::tab:selected { %s }" % (self.mainwindow.theme["convo/tabs/style"], self.mainwindow.theme["convo/tabs/selectedstyle"])) self.layout = QtGui.QVBoxLayout() self.layout.setContentsMargins(0,0,0,0) @@ -986,6 +1105,7 @@ class PesterText(QtGui.QTextEdit): self.setReadOnly(True) def addMessage(self, text, chum): color = chum.colorhtml() + systemColor = QtGui.QColor(self.parent().mainwindow.theme["convo/systemMsgColor"]) initials = chum.initials() msg = unicode(text) if msg == "PESTERCHUM:BEGIN": @@ -993,31 +1113,37 @@ class PesterText(QtGui.QTextEdit): parent.setChumOpen(True) window = parent.mainwindow me = window.profile() - msg = chum.beganpestermsg(me, window.theme["convo/text/beganpester"]) - self.append(msg) + msg = chum.beganpestermsg(me, systemColor, window.theme["convo/text/beganpester"]) + window.chatlog.log(chum.handle, convertColorTags(msg, "bbcode")) + self.append(convertColorTags(msg)) elif msg == "PESTERCHUM:CEASE": parent = self.parent() parent.setChumOpen(False) window = parent.mainwindow me = window.profile() - msg = chum.ceasedpestermsg(me, window.theme["convo/text/ceasepester"]) - self.append(msg) + msg = chum.ceasedpestermsg(me, systemColor, window.theme["convo/text/ceasepester"]) + window.chatlog.log(chum.handle, convertColorTags(msg, "bbcode")) + self.append(convertColorTags(msg)) else: if not self.parent().chumopen and chum is not self.parent().mainwindow.profile(): me = self.parent().mainwindow.profile() - beginmsg = chum.beganpestermsg(me, self.parent().mainwindow.theme["convo/text/beganpester"]) + beginmsg = chum.beganpestermsg(me, systemColor, self.parent().mainwindow.theme["convo/text/beganpester"]) self.parent().setChumOpen(True) - self.append(beginmsg) + self.parent().mainwindow.chatlog.log(chum.handle, convertColorTags(beginmsg, "bbcode")) + self.append(convertColorTags(beginmsg)) - msg = msg.replace("&", "&").replace("<", "<").replace(">", ">") - self.append("%s: %s" % \ - (color, initials, msg)) + msg = "%s: %s" % (color, initials, msg) + msg = escapeBrackets(msg) + self.append(convertColorTags(msg)) + if chum.handle == self.parent().mainwindow.profile().handle: + self.parent().mainwindow.chatlog.log(self.parent().chum.handle, convertColorTags(msg, "bbcode")) + else: + self.parent().mainwindow.chatlog.log(chum.handle, convertColorTags(msg, "bbcode")) def changeTheme(self, theme): self.setStyleSheet(theme["convo/textarea/style"]) def focusInEvent(self, event): self.parent().clearNewMessage() QtGui.QTextEdit.focusInEvent(self, event) - self.parent().textInput.setFocus() class PesterInput(QtGui.QLineEdit): def __init__(self, theme, parent=None): @@ -1045,6 +1171,10 @@ class PesterConvo(QtGui.QFrame): self.chumLabel = QtGui.QLabel(t.safe_substitute(handle=chum.handle), self) self.chumLabel.setStyleSheet(self.mainwindow.theme["convo/chumlabel/style"]) + self.chumLabel.setAlignment(self.aligndict["h"][self.mainwindow.theme["convo/chumlabel/align/h"]] | self.aligndict["v"][self.mainwindow.theme["convo/chumlabel/align/v"]]) + self.chumLabel.setMaximumHeight(self.mainwindow.theme["convo/chumlabel/maxheight"]) + self.chumLabel.setMinimumHeight(self.mainwindow.theme["convo/chumlabel/minheight"]) + self.chumLabel.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding, QtGui.QSizePolicy.Expanding)) self.textArea = PesterText(self.mainwindow.theme, self) self.textInput = PesterInput(self.mainwindow.theme, self) self.textInput.setFocus() @@ -1056,7 +1186,8 @@ class PesterConvo(QtGui.QFrame): self.layout.addWidget(self.chumLabel) self.layout.addWidget(self.textArea) self.layout.addWidget(self.textInput) - + self.layout.setSpacing(0) + self.setLayout(self.layout) self.chumopen = False @@ -1064,14 +1195,16 @@ class PesterConvo(QtGui.QFrame): if parent: parent.addChat(self) if initiated: - msg = self.mainwindow.profile().beganpestermsg(self.chum, self.mainwindow.theme["convo/text/beganpester"]) - self.textArea.append(msg) + msg = self.mainwindow.profile().beganpestermsg(self.chum, QtGui.QColor(self.mainwindow.theme["convo/systemMsgColor"]), self.mainwindow.theme["convo/text/beganpester"]) + self.textArea.append(convertColorTags(msg)) + self.mainwindow.chatlog.log(self.chum.handle, convertColorTags(msg, "bbcode")) self.newmessage = False def updateMood(self, mood): if mood.name() == "offline" and self.chumopen == True: - msg = self.chum.ceasedpestermsg(self.mainwindow.profile(), self.mainwindow.theme["convo/text/ceasepester"]) - self.textArea.append(msg) + msg = self.chum.ceasedpestermsg(self.mainwindow.profile(), QtGui.QColor(self.mainwindow.theme["convo/systemMsgColor"]), self.mainwindow.theme["convo/text/ceasepester"]) + self.textArea.append(convertColorTags(msg)) + self.mainwindow.chatlog.log(self.chum.handle, convertColorTags(msg, "bbcode")) self.chumopen = False if self.parent(): self.parent().updateMood(self.chum.handle, mood) @@ -1114,6 +1247,7 @@ class PesterConvo(QtGui.QFrame): # reset system tray def focusInEvent(self, event): self.clearNewMessage() + self.textInput.setFocus() def raiseChat(self): self.activateWindow() self.raise_() @@ -1136,6 +1270,10 @@ class PesterConvo(QtGui.QFrame): t = Template(self.mainwindow.theme["convo/chumlabel/text"]) self.chumLabel.setText(t.safe_substitute(handle=self.chum.handle)) self.chumLabel.setStyleSheet(theme["convo/chumlabel/style"]) + self.chumLabel.setAlignment(self.aligndict["h"][self.mainwindow.theme["convo/chumlabel/align/h"]] | self.aligndict["v"][self.mainwindow.theme["convo/chumlabel/align/v"]]) + self.chumLabel.setMaximumHeight(self.mainwindow.theme["convo/chumlabel/maxheight"]) + self.chumLabel.setMinimumHeight(self.mainwindow.theme["convo/chumlabel/minheight"]) + self.chumLabel.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding, QtGui.QSizePolicy.Expanding)) self.textArea.changeTheme(theme) self.textInput.changeTheme(theme) @@ -1157,10 +1295,18 @@ class PesterConvo(QtGui.QFrame): messageSent = QtCore.pyqtSignal(QtCore.QString, PesterProfile) windowClosed = QtCore.pyqtSignal(QtCore.QString) + aligndict = {"h": {"center": QtCore.Qt.AlignHCenter, + "left": QtCore.Qt.AlignLeft, + "right": QtCore.Qt.AlignRight }, + "v": {"center": QtCore.Qt.AlignVCenter, + "top": QtCore.Qt.AlignTop, + "bottom": QtCore.Qt.AlignBottom } } + class PesterWindow(MovingWindow): def __init__(self, parent=None): MovingWindow.__init__(self, parent, - flags=QtCore.Qt.CustomizeWindowHint) + flags=(QtCore.Qt.CustomizeWindowHint | + QtCore.Qt.FramelessWindowHint)) self.convos = {} self.tabconvo = None @@ -1174,6 +1320,8 @@ class PesterWindow(MovingWindow): self.userprofile = userProfile(PesterProfile("pesterClient%d" % (random.randint(100,999)), QtGui.QColor("black"), Mood(0))) self.theme = self.userprofile.getTheme() + self.chatlog = PesterLog(self.profile().handle) + self.move(100, 100) opts = QtGui.QAction(self.theme["main/menus/client/options"], self) @@ -1211,10 +1359,10 @@ class PesterWindow(MovingWindow): profilemenu.addAction(changequirks) profilemenu.addAction(switch) - self.closeButton = WMButton(QtGui.QIcon(self.theme["main/close/image"]), self) + self.closeButton = WMButton(PesterIcon(self.theme["main/close/image"]), self) self.connect(self.closeButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('close()')) - self.miniButton = WMButton(QtGui.QIcon(self.theme["main/minimize/image"]), self) + self.miniButton = WMButton(PesterIcon(self.theme["main/minimize/image"]), self) self.connect(self.miniButton, QtCore.SIGNAL('clicked()'), self, QtCore.SLOT('showMinimized()')) @@ -1338,13 +1486,17 @@ class PesterWindow(MovingWindow): self.choosetheme.exec_() def initTheme(self, theme): self.resize(*theme["main/size"]) - self.setWindowIcon(QtGui.QIcon(theme["main/icon"])) + self.setWindowIcon(PesterIcon(theme["main/icon"])) self.setWindowTitle(theme["main/windowtitle"]) self.setStyleSheet("QFrame#main { "+theme["main/style"]+" }") self.menu.setStyleSheet("QMenuBar { background: transparent; %s } QMenuBar::item { background: transparent; %s } " % (theme["main/menubar/style"], theme["main/menu/menuitem"]) + "QMenu { background: transparent; %s } QMenu::item::selected { %s }" % (theme["main/menu/style"], theme["main/menu/selected"])) - self.closeButton.setIcon(QtGui.QIcon(theme["main/close/image"])) + newcloseicon = PesterIcon(theme["main/close/image"]) + self.closeButton.setIcon(newcloseicon) + self.closeButton.setIconSize(newcloseicon.realsize()) self.closeButton.move(*theme["main/close/loc"]) - self.miniButton.setIcon(QtGui.QIcon(theme["main/minimize/image"])) + newminiicon = PesterIcon(theme["main/minimize/image"]) + self.miniButton.setIcon(newminiicon) + self.miniButton.setIconSize(newminiicon.realsize()) self.miniButton.move(*theme["main/minimize/loc"]) # menus self.menu.move(*theme["main/menu/loc"]) @@ -1444,10 +1596,13 @@ class PesterWindow(MovingWindow): @QtCore.pyqtSlot(QtCore.QString) def closeConvo(self, handle): h = unicode(handle) + chum = self.convos[h].chum chumopen = self.convos[h].chumopen - del self.convos[h] if chumopen: + self.chatlog.log(chum.handle, convertColorTags(self.profile().ceasedpestermsg(chum, QtGui.QColor(self.theme["convo/systemMsgColor"]), self.theme["convo/text/ceasepester"]), "bbcode")) + self.chatlog.finish(h) self.convoClosed.emit(handle) + del self.convos[h] @QtCore.pyqtSlot() def tabsClosed(self): del self.tabconvo @@ -1598,6 +1753,9 @@ class PesterWindow(MovingWindow): self.userprofile = userProfile.newUserProfile(profile) self.changeTheme(self.userprofile.getTheme()) + self.chatlog.close() + self.chatlog = PesterLog(handle) + # is default? if self.chooseprofile.defaultcheck.isChecked(): self.config.set("defaultprofile", self.userprofile.chat.handle) @@ -1818,9 +1976,9 @@ class PesterTray(QtGui.QSystemTrayIcon): @QtCore.pyqtSlot(int) def changeTrayIcon(self, i): if i == 0: - self.setIcon(QtGui.QIcon(self.mainwindow.theme["main/icon"])) + self.setIcon(PesterIcon(self.mainwindow.theme["main/icon"])) else: - self.setIcon(QtGui.QIcon(self.mainwindow.theme["main/newmsgicon"])) + self.setIcon(PesterIcon(self.mainwindow.theme["main/newmsgicon"])) def main(): @@ -1833,7 +1991,7 @@ def main(): widget = PesterWindow() widget.show() - trayicon = PesterTray(QtGui.QIcon(widget.theme["main/icon"]), widget, app) + trayicon = PesterTray(PesterIcon(widget.theme["main/icon"]), widget, app) trayicon.show() trayicon.connect(trayicon, diff --git a/themes/pesterchum/Thumbs.db b/themes/pesterchum/Thumbs.db deleted file mode 100644 index 8517079..0000000 Binary files a/themes/pesterchum/Thumbs.db and /dev/null differ diff --git a/themes/pesterchum/pcbg.png b/themes/pesterchum/pcbg.png index 1f93fa9..688eab7 100644 Binary files a/themes/pesterchum/pcbg.png and b/themes/pesterchum/pcbg.png differ diff --git a/themes/pesterchum/style.js b/themes/pesterchum/style.js index 8617f13..3dbc992 100644 --- a/themes/pesterchum/style.js +++ b/themes/pesterchum/style.js @@ -1,168 +1,173 @@ -{"main": - {"style": "background-image:url($path/pcbg.png);", - "size": [300, 620], - "icon": "$path/trayicon.gif", - "newmsgicon": "$path/trayicon2.png", - "windowtitle": "P3ST3RCHUM", - "close": { "image": "$path/x.gif", - "loc": [275, 0]}, - "minimize": { "image": "$path/m.gif", - "loc": [255, 0]}, - "menubar": { "style": "font-family: 'Courier New'; font-weight: bold; font-size: 12px;" }, - "menu" : { "style": "font-family: 'Courier New'; font-weight: bold; font-size: 12px; background-color: #fdb302;border:2px solid #ffff00", - "selected": "background-color: #ffff00", - "menuitem": "margin-right:10px;", - "loc": [7,3] - }, - "sounds": { "alertsound": "$path/alarm.wav" }, - "menus": {"client": {"_name": "CLIENT", - "options": "OPTIONS", - "exit": "EXIT"}, - "profile": {"_name": "PROFILE", - "switch": "SWITCH", - "theme": "THEME", - "quirks": "QUIRKS"}, - "rclickchumlist": {"pester": "PESTER", - "removechum": "REMOVE CHUM"} - }, - "chums": { "style": "background-color: black;color: white;font: bold;font-family: 'Courier New';selection-background-color:#919191; ", - "loc": [20, 65], - "size": [266, 270], - "moods": { "chummy": { "icon": "$path/chummy.gif", - "color": "white" }, - "offline": { "icon": "$path/offline.gif", - "color": "#919191"}, - "rancorous": { "icon": "$path/rancorous.gif", - "color": "red" }, - "detestful": { "icon": "$path/detestful.gif", - "color": "red" }, - "devious": { "icon": "$path/devious.gif", - "color": "white" }, - "discontent": { "icon": "$path/discontent.gif", - "color": "white" }, - "distraught": { "icon": "$path/distraught.gif", - "color": "white" }, - "ecstatic": { "icon": "$path/estatic.gif", - "color": "white" }, - "pleasant": { "icon": "$path/pleasant.gif", - "color": "white" }, - "relaxed": { "icon": "$path/relaxed.gif", - "color": "white" }, - "sleek": { "icon": "$path/sleek.gif", - "color": "white" }, - "smooth": { "icon": "$path/smooth.gif", - "color": "white" }, - "unruly": { "icon": "$path/unruly.gif", - "color": "white" } - } - }, - "mychumhandle": { "label": { "text": "MYCHUMHANDLE", - "loc": [70,380], - "style": "color:black;font:bold;" }, - "handle": { "style": "border:3px solid yellow; background: black; color:white;", - "loc": [20,400], - "size": [220,30] }, - "colorswatch": { "loc": [243,400], - "size": [40,30], - "text": "" } - }, - "defaultwindow": { "style": "background: #fdb302; font-family:'Courier New';font:bold;selection-background-color:#919191; " - }, - "addchum": { "style": "background: #fdb302; border:5px solid yellow; font: bold;", - "loc": [20,340], - "size": [100, 40], - "text": "ADD CHUM" - }, - "pester": { "style": "background: #fdb302; border:5px solid yellow; font: bold;", - "loc": [130,340], - "size": [100, 40], - "text": "PESTER!" - }, - "defaultmood": 0, - "moodlabel": { "style": "", - "loc": [20, 430], - "text": "MOODS" - }, - "moods": [ - { "style": "text-align:left; background: white; border:3px solid black; padding: 5px;color:#919191;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 470], - "size": [133, 30], - "text": "CHUMMY", - "icon": "$path/chummy.gif", - "mood": 0 - }, - { "style": "text-align:left; background: white; border:3px solid black; padding: 5px;color: #919191", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 497], - "size": [133, 30], - "text": "PLEASANT", - "icon": "$path/pleasant.gif", - "mood": 3 - }, - { "style": "text-align:left; background: white; border:3px solid black; padding: 5px;color:#919191;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 524], - "size": [133, 30], - "text": "DISTRAUGHT", - "icon": "$path/distraught.gif", - "mood": 4 - }, - { "style": "text-align:left; background: white; border:3px solid black; padding: 5px;color:#919191;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [150, 470], - "size": [133, 30], - "text": "UNRULY", - "icon": "$path/unruly.gif", - "mood": 5 - }, - { "style": "text-align:left; background: white; border:3px solid black; padding: 5px;color:#919191;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [150, 497], - "size": [133, 30], - "text": "SMOOTH", - "icon": "$path/smooth.gif", - "mood": 6 - }, - { "style": "text-align:left; background: red; border:3px solid black; padding: 5px;", - "selected": "text-align:left; background: red; border:3px solid black; padding: 5px;font: bold;", - "loc": [150, 524], - "size": [133, 30], - "text": "RANCOROUS", - "icon": "$path/rancorous.gif", - "mood": 1 - }, - { "style": "text-align:center; background: #919191; border:3px solid black; padding: 5px;", - "selected": "text-align:center; background: #919191; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 551], - "size": [263, 30], - "text": "ABSCOND", - "icon": "$path/offline.gif", - "mood": 2 - } - ] - }, - "convo": - {"style": "background: #fdb302; font-family: 'Courier New'", - "size": [600, 500], - "chumlabel": { "style": "background: rgba(255, 255, 255, 25%);", - "text" : ":: $handle ::" - }, - "textarea": { - "style": "background: white;font:bold;" - }, - "input": { - "style": "background: white;" - }, - "tabs": { - "style": "", - "newmsgcolor": "#fdb302", - "tabstyle": 0 - }, - "text": { - "beganpester": "began pestering", - "ceasepester": "ceased pestering" - } - } - -} +{"main": + {"style": "background-image:url($path/pcbg.png);", + "size": [232, 380], + "icon": "$path/trayicon.png", + "newmsgicon": "$path/trayicon2.png", + "windowtitle": "PESTERCHUM", + "close": { "image": "$path/x.gif", + "loc": [210, 2]}, + "minimize": { "image": "$path/m.gif", + "loc": [190, 2]}, + "menubar": { "style": "font-family: 'Courier'; font:bold; font-size: 12px;" }, + "menu" : { "style": "font-family: 'Courier'; font: bold; font-size: 12px; background-color: #fdb302;border:2px solid #ffff00", + "menuitem": "margin-right:10px;", + "selected": "background-color: #ffff00", + "loc": [10,0] + }, + "sounds": { "alertsound": "$path/alarm.wav" }, + "menus": {"client": {"_name": "CLIENT", + "options": "OPTIONS", + "exit": "EXIT"}, + "profile": {"_name": "PROFILE", + "switch": "SWITCH", + "theme": "THEME", + "quirks": "QUIRKS"}, + "rclickchumlist": {"pester": "PESTER", + "removechum": "REMOVE CHUM"} + }, + "chums": { "style": "border:2px solid yellow; background-color: black;color: white;font: bold;font-family: 'Courier';selection-background-color:#646464; ", + "loc": [12, 117], + "size": [209, 82], + "moods": { "chummy": { "icon": "$path/chummy.gif", + "color": "white" }, + "offline": { "icon": "$path/offline.gif", + "color": "#646464"}, + "rancorous": { "icon": "$path/rancorous.gif", + "color": "red" }, + "detestful": { "icon": "$path/detestful.gif", + "color": "red" }, + "devious": { "icon": "$path/devious.gif", + "color": "white" }, + "discontent": { "icon": "$path/discontent.gif", + "color": "white" }, + "distraught": { "icon": "$path/distraught.gif", + "color": "white" }, + "ecstatic": { "icon": "$path/estatic.gif", + "color": "white" }, + "pleasant": { "icon": "$path/pleasant.gif", + "color": "white" }, + "relaxed": { "icon": "$path/relaxed.gif", + "color": "white" }, + "sleek": { "icon": "$path/sleek.gif", + "color": "white" }, + "smooth": { "icon": "$path/smooth.gif", + "color": "white" }, + "unruly": { "icon": "$path/unruly.gif", + "color": "white" } + } + }, + "mychumhandle": { "label": { "text": "CHUMHANDLE:", + "loc": [19,232], + "style": "color: rgba(255, 255, 0, 0%) ;font:bold; font-family: 'Courier';" }, + "handle": { "style": "background: black; padding: 3px; color:white; font-family:'Courier'; font:bold; text-align:left;", + "loc": [14,246], + "size": [190, 21] }, + "colorswatch": { "loc": [196,246], + "size": [23,21], + "text": "" } + }, + "defaultwindow": { "style": "background: #fdb302; font-family:'Courier';font:bold;selection-background-color:#919191; " + }, + "addchum": { "style": "background: rgba(255, 255, 0, 0%); border:2px solid #c48a00; font: bold; color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [12,202], + "size": [71, 22], + "text": "ADD CHUM" + }, + "pester": { "style": "background: rgba(255, 255, 0, 0%); border:2px solid #c48a00; font: bold; color: rgba(255, 255, 0, 0%); font-family:'Courier';", + "loc": [150,202], + "size": [71, 22], + "text": "PESTER!" + }, + "defaultmood": 0, + "moodlabel": { "style": "", + "loc": [20, 430], + "text": "MOODS" + }, + "moods": [ + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck1.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [12, 288], + "size": [104, 22], + "text": "CHUMMY", + "icon": "$path/chummy.gif", + "mood": 0 + }, + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck2.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [12, 308], + "size": [104, 22], + "text": "PALSY", + "icon": "$path/chummy.gif", + "mood": 3 + }, + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck3.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [12, 328], + "size": [104, 22], + "text": "CHIPPER", + "icon": "$path/chummy.gif", + "mood": 4 + }, + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck2.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [117, 288], + "size": [104, 22], + "text": "BULLY", + "icon": "$path/chummy.gif", + "mood": 5 + }, + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck2.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [117, 308], + "size": [104, 22], + "text": "PEPPY", + "icon": "$path/chummy.gif", + "mood": 6 + }, + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck4.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [117, 328], + "size": [104, 22], + "text": "RANCOROUS", + "icon": "$path/rancorous.gif", + "mood": 1 + }, + { "style": "text-align:left; border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier'", + "selected": "text-align:left; background-image:url($path/moodcheck5.gif); border:2px solid #c48a00; padding: 5px;color: rgba(0, 0, 0, 0%); font-family:'Courier';", + "loc": [12, 348], + "size": [209, 22], + "text": "ABSCOND", + "icon": "$path/x.gif", + "mood": 2 + } + ] + }, + "convo": + {"style": "background: #fdb302; border:2px solid yellow; font-family: 'Courier'", + "size": [295, 191], + "chumlabel": { "style": "background: rgb(196, 138, 0); color: white; border:0px;", + "align": { "h": "center", "v": "center" }, + "minheight": 30, + "maxheight": 50, + "text" : ":: $handle ::" + }, + "textarea": { + "style": "background: white; font:bold; border:2px solid #c48a00;text-align:center;" + }, + "input": { + "style": "background: white; border:2px solid #c48a00;margin-top:5px;" + }, + "tabs": { + "style": "", + "selectedstyle": "", + "newmsgcolor": "#fdb302", + "tabstyle": 0 + }, + "text": { + "beganpester": "began pestering", + "ceasepester": "ceased pestering" + }, + "systemMsgColor": "#646464" + } + +} \ No newline at end of file diff --git a/themes/pesterchum/trayicon.gif b/themes/pesterchum/trayicon.gif deleted file mode 100644 index 926ccc7..0000000 Binary files a/themes/pesterchum/trayicon.gif and /dev/null differ diff --git a/themes/pesterchum/trayicon2.png b/themes/pesterchum/trayicon2.png index 817bf4b..7b78586 100644 Binary files a/themes/pesterchum/trayicon2.png and b/themes/pesterchum/trayicon2.png differ diff --git a/themes/pesterchum/x.gif b/themes/pesterchum/x.gif index 1c679ca..6f29624 100644 Binary files a/themes/pesterchum/x.gif and b/themes/pesterchum/x.gif differ diff --git a/themes/pesterchum6/style.js b/themes/pesterchum6/style.js index f561d72..3dbc992 100644 --- a/themes/pesterchum6/style.js +++ b/themes/pesterchum6/style.js @@ -145,23 +145,29 @@ "convo": {"style": "background: #fdb302; border:2px solid yellow; font-family: 'Courier'", "size": [295, 191], - "chumlabel": { "style": "background: rgb(196, 138, 0); color: white; text-align:center;", - "text" : ":: $handle ::" }, + "chumlabel": { "style": "background: rgb(196, 138, 0); color: white; border:0px;", + "align": { "h": "center", "v": "center" }, + "minheight": 30, + "maxheight": 50, + "text" : ":: $handle ::" + }, "textarea": { "style": "background: white; font:bold; border:2px solid #c48a00;text-align:center;" }, "input": { - "style": "background: white; border:2px solid #c48a00;" + "style": "background: white; border:2px solid #c48a00;margin-top:5px;" }, "tabs": { "style": "", + "selectedstyle": "", "newmsgcolor": "#fdb302", "tabstyle": 0 }, "text": { "beganpester": "began pestering", "ceasepester": "ceased pestering" - } + }, + "systemMsgColor": "#646464" } } \ No newline at end of file diff --git a/themes/trollian/Thumbs.db b/themes/trollian/Thumbs.db index f67753d..40ac244 100644 Binary files a/themes/trollian/Thumbs.db and b/themes/trollian/Thumbs.db differ diff --git a/themes/trollian/chummy.gif b/themes/trollian/chummy.gif deleted file mode 100644 index bdacc01..0000000 Binary files a/themes/trollian/chummy.gif and /dev/null differ diff --git a/themes/trollian/detestful.gif b/themes/trollian/detestful.gif deleted file mode 100644 index e8f3e08..0000000 Binary files a/themes/trollian/detestful.gif and /dev/null differ diff --git a/themes/trollian/devious.gif b/themes/trollian/devious.gif deleted file mode 100644 index 06ba8be..0000000 Binary files a/themes/trollian/devious.gif and /dev/null differ diff --git a/themes/trollian/discontent.gif b/themes/trollian/discontent.gif deleted file mode 100644 index addcf54..0000000 Binary files a/themes/trollian/discontent.gif and /dev/null differ diff --git a/themes/trollian/distraught.gif b/themes/trollian/distraught.gif deleted file mode 100644 index 222e9dd..0000000 Binary files a/themes/trollian/distraught.gif and /dev/null differ diff --git a/themes/trollian/estatic.gif b/themes/trollian/estatic.gif deleted file mode 100644 index dc3ee61..0000000 Binary files a/themes/trollian/estatic.gif and /dev/null differ diff --git a/themes/trollian/m.gif b/themes/trollian/m.gif index 946ed22..b40729b 100644 Binary files a/themes/trollian/m.gif and b/themes/trollian/m.gif differ diff --git a/themes/trollian/offline.gif b/themes/trollian/offline.gif deleted file mode 100644 index 1733bf0..0000000 Binary files a/themes/trollian/offline.gif and /dev/null differ diff --git a/themes/trollian/pleasant.gif b/themes/trollian/pleasant.gif deleted file mode 100644 index ef1457c..0000000 Binary files a/themes/trollian/pleasant.gif and /dev/null differ diff --git a/themes/trollian/rancorous.gif b/themes/trollian/rancorous.gif deleted file mode 100644 index d4a3dc0..0000000 Binary files a/themes/trollian/rancorous.gif and /dev/null differ diff --git a/themes/trollian/relaxed.gif b/themes/trollian/relaxed.gif deleted file mode 100644 index 55a31a0..0000000 Binary files a/themes/trollian/relaxed.gif and /dev/null differ diff --git a/themes/trollian/sleek.gif b/themes/trollian/sleek.gif deleted file mode 100644 index 5573aa5..0000000 Binary files a/themes/trollian/sleek.gif and /dev/null differ diff --git a/themes/trollian/smooth.gif b/themes/trollian/smooth.gif deleted file mode 100644 index e86ebd3..0000000 Binary files a/themes/trollian/smooth.gif and /dev/null differ diff --git a/themes/trollian/style.js b/themes/trollian/style.js index 784a101..ac7f161 100644 --- a/themes/trollian/style.js +++ b/themes/trollian/style.js @@ -1,168 +1,247 @@ {"main": - {"style": "background-image:url($path/tnbg2.png);background-color:rgba(255,255,255,0);", - "size": [300, 620], - "icon": "$path/trayicon3.png", - "newmsgicon": "$path/trayicon.gif", + {"style": "background-image:url($path/tnbg.png);background-color:rgba(255,255,255,0);", + "size": [650, 450], + "icon": "$path/trayicon2.png", + "newmsgicon": "$path/trayicon3.png", "windowtitle": "TROLLIAN", "close": { "image": "$path/x.gif", - "loc": [275, 0]}, + "loc": [635, 2]}, "minimize": { "image": "$path/m.gif", - "loc": [255, 0]}, - "menubar": { "style": "font-family: 'Courier New'; font-weight: bold; font-size: 12px;" }, - "menu" : { "style": "font-family: 'Courier New'; font-weight: bold; font-size: 12px; background-color: #e5000f; border:2px solid #ff0000", - "selected": "background-color: #ff0000", - "menuitem": "margin-right:10px;", - "loc": [10,0] + "loc": [621, 8]}, + "menubar": { "style": "font-family: 'Arial'; font-size: 11px; color: rgba(0,0,0,0);" }, + + + "menu" : { "style": "font-family: 'Arial'; font-size: 11px; background-color: #c2c2c2; border:1px solid #545454;", + + + "selected": "background-color: #545454", + + + "menuitem": "margin-right:14px;", + + "loc": [14,90] }, + "sounds": { "alertsound": "$path/alarm.wav" }, - "menus": {"client": {"_name": "GRUBBER", - "options": "OPTIONS", - "exit": "ABSCOND"}, - "profile": {"_name": "HEMOSPECTRUM", - "switch": "SWITCH", - "theme": "THEME", - "quirks": "ANNOYING"}, - "rclickchumlist": {"pester": "TROLL", - "removechum": "REMOVE LOSER"} + "menus": {"client": {"_name": "Trollian", + "options": "Options", + "exit": "Abscond"}, + "profile": {"_name": "View", + "switch": "Trolltag", + "theme": "Theme", + "quirks": "Annoying"}, + "rclickchumlist": {"pester": "Troll", + "removechum": "Trash"} }, - "chums": { "style": "background-color: black;color: white;font: bold;font-family: 'Courier New';selection-background-color:#ffb6b6; ", - "loc": [20, 65], - "size": [266, 270], - "moods": { "chummy": { "icon": "$path/chummy.gif", - "color": "white" }, - "offline": { "icon": "$path/offline.gif", - "color": "#919191"}, - "rancorous": { "icon": "$path/rancorous.gif", - "color": "red" }, - "detestful": { "icon": "$path/detestful.gif", - "color": "red" }, - "devious": { "icon": "$path/devious.gif", - "color": "white" }, - "discontent": { "icon": "$path/discontent.gif", - "color": "white" }, - "distraught": { "icon": "$path/distraught.gif", - "color": "white" }, - "ecstatic": { "icon": "$path/estatic.gif", - "color": "white" }, - "pleasant": { "icon": "$path/pleasant.gif", - "color": "white" }, - "relaxed": { "icon": "$path/relaxed.gif", - "color": "white" }, - "sleek": { "icon": "$path/sleek.gif", - "color": "white" }, - "smooth": { "icon": "$path/smooth.gif", - "color": "white" }, - "unruly": { "icon": "$path/unruly.gif", - "color": "white" } + "chums": { "style": "border: 0px; background-color: white; padding: 5px; font-family: 'Arial';selection-background-color:rgb(200,200,200); ", + "loc": [476, 90], + "size": [175, 361], + + "moods": { + +"chummy": { "icon": "$path/chummy.png", "color": "#63ea00" }, + +"rancorous": { "icon": "$path/rancorous.png", "color": "#7f7f7f" }, + +"offline": { "icon": "$path/offline.png", "color": "black"}, + + +"pleasant": { "icon": "$path/pleasant.png", "color": "#d69df8" }, + +"distraught": { "icon": "$path/distraught.png", "color": "#706eba" }, + +"unruly": { "icon": "$path/unruly.png", "color": "blue" }, + +"smooth": { "icon": "$path/smooth.png", "color": "red" }, + + +"ecstatic": { "icon": "$path/ecstatic.png", "color": "#99004d" }, + +"relaxed": { "icon": "$path/relaxed.png", "color": "#078446" }, + +"discontent": { "icon": "$path/discontent.png", "color": "#a75403" }, + +"devious": { "icon": "$path/devious.png", "color": "#008282" }, + +"sleek": { "icon": "$path/sleek.png", "color": "#a1a100" }, + +"detestful": { "icon": "$path/detestful.png", "color": "#6a006a" }, + +"mirthful": { "icon": "$path/mirthful.png", "color": "#450077" }, + +"manipulative": { "icon": "$path/manipulative.png", "color": "#004182" }, + +"vigorous": { "icon": "$path/vigorous.png", "color": "#0021cb" }, + +"perky": { "icon": "$path/perky.png", "color": "#406600" }, + +"acceptant": { "icon": "$path/acceptant.png", "color": "#a10000" }, + +"protective": { "icon": "$path/protective.png", "color": "white" } + } }, - "mychumhandle": { "label": { "text": "MYTROLLTAG", + "mychumhandle": { "label": { "text": "", "loc": [85,410], - "style": "color:black;font:bold;" }, - "handle": { "style": "border:3px solid #550000; background: black; color:white;", - "loc": [20,430], - "size": [220,30] }, - "colorswatch": { "loc": [243,430], - "size": [40,30], + "style": "color:rgba(0,0,0,0);" }, + "handle": { "style": "background: rgba(0,0,0,0); color:rgba(0,0,0,0);", + "loc": [0,0], + "size": [0,0] }, + "colorswatch": { "loc": [0,0], + "size": [0,0], "text": "" } }, - "defaultwindow": { "style": "background: #e5000f; font-family:'Courier New';font:bold;selection-background-color:#ffb6b6; " + "defaultwindow": { "style": "background: #c2c2c2; font-family:'Arial';font:bold;selection-background-color:#545454; " }, - "addchum": { "style": "background: black; border:5px solid #550000; font: bold;color:white;", - "loc": [20,340], - "size": [100, 40], - "text": "ADD LOSER" + "addchum": { "style": "background: rgba(0,0,0,0); border:0px; color: rgba(0,0,0,0);", + "loc": [475, 67], + "size": [175, 18], + "text": "" }, - "pester": { "style": "background: black; border:5px solid #550000; font: bold;color:white;", - "loc": [130,340], - "size": [100, 40], - "text": "TROLL" + "pester": { "style": "background: rgba(0,0,0,0); border:0px; color: rgba(0,0,0,0);", + "loc": [0,0], + "size": [0, 0], + "text": "" }, "defaultmood": 7, "moodlabel": { "style": "", - "loc": [20, 430], - "text": "MOODS" + "loc": [0, 0], + "text": "" }, "moods": [ - { "style": "text-align:left; background: black; border:3px solid black; padding: 5px;color:#dbdbdb;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 470], - "size": [133, 30], - "text": "ECSTATIC", - "icon": "$path/estatic.gif", - "mood": 7 + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck1.png); border:0px;", + "loc": [25, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 17 }, - { "style": "text-align:left; background: black; border:3px solid black; padding: 5px;color: #dbdbdb", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 497], - "size": [133, 30], - "text": "RELAXED", - "icon": "$path/relaxed.gif", - "mood": 8 - }, - { "style": "text-align:left; background: black; border:3px solid black; padding: 5px;color:#dbdbdb;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 524], - "size": [133, 30], - "text": "DISCONTENT", - "icon": "$path/discontent.gif", + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck2.png); border:0px;", + "loc": [60, 141], + "size": [20, 270], + "text": "", + "icon": "", "mood": 9 }, - { "style": "text-align:left; background: black; border:3px solid black; padding: 5px;color:#dbdbdb;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [150, 470], - "size": [133, 30], - "text": "DEVIOUS", - "icon": "$path/devious.gif", - "mood": 10 - }, - { "style": "text-align:left; background: black; border:3px solid black; padding: 5px;color:#dbdbdb;", - "selected": "text-align:left; background: white; border:3px solid black; padding: 5px;font: bold;", - "loc": [150, 497], - "size": [133, 30], - "text": "SLEEK", - "icon": "$path/sleek.gif", + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck3.png); border:0px;", + "loc": [95, 141], + "size": [20, 270], + "text": "", + "icon": "", "mood": 11 }, - { "style": "text-align:left; background: red; border:3px solid black; padding: 5px;", - "selected": "text-align:left; background: red; border:3px solid black; padding: 5px;font: bold;", - "loc": [150, 524], - "size": [133, 30], - "text": "DETESTFUL", - "icon": "$path/detestful.gif", + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck4.png); border:0px;", + "loc": [130, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 1 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck5.png); border:0px;", + "loc": [165, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 16 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck6.png); border:0px;", + "loc": [200, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 8 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck7.png); border:0px;", + "loc": [235, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 10 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck8.png); border:0px;", + "loc": [270, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 14 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck9.png); border:0px;", + "loc": [305, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 15 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck10.png); border:0px;", + "loc": [340, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 13 + }, + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck11.png); border:0px;", + "loc": [375, 141], + "size": [20, 270], + "text": "", + "icon": "", "mood": 12 }, - { "style": "text-align:center; background: #919191; border:3px solid black; padding: 5px;", - "selected": "text-align:center; background: #919191; border:3px solid black; padding: 5px;font: bold;", - "loc": [20, 551], - "size": [263, 30], - "text": "ABSCOND", - "icon": "$path/offline.gif", + { "style": "border:0px;", + "selected": "background-image:url($path/moodcheck12.png); border:0px;", + "loc": [410, 141], + "size": [20, 270], + "text": "", + "icon": "", + "mood": 7 + }, + + { "style": "border:0px;color: rgba(0, 0, 0, 0%);", + "selected": "border:0px; color: rgba(0, 0, 0, 0%);", + "loc": [12, 117], + "size": [435, 18], + "text": "", + "icon": "", "mood": 2 } ] }, "convo": - {"style": "background: #e5000f; font-family: 'Courier New'", - "size": [600, 500], - "chumlabel": { "style": "background: rgba(255, 255, 255, 25%);", - "text" : "trolling $handle" + {"style": "background: rgb(190, 19, 4); font-family: 'Arial'", + "size": [308, 194], + "chumlabel": { "style": "background: rgb(255, 38, 18); color: white;", + "align": { "h": "center", "v": "center" }, + "minheight": 30, + "maxheight": 50, + "text" : "trolling: $handle" }, "textarea": { - "style": "background: white;font:bold;" + "style": "background: white; border:0px;" }, "input": { - "style": "background: white;" + "style": "background: white; border:0px solid #c48a00;margin-top:5px;" }, "tabs": { "style": "", + "selectedstyle": "", "newmsgcolor": "red", "tabstyle": 0 }, "text": { "beganpester": "began trolling", "ceasepester": "gave up trolling" - } + }, + "systemMsgColor": "#646464" } -} +} \ No newline at end of file diff --git a/themes/trollian/tnbg.png b/themes/trollian/tnbg.png index ac1513b..1c409a5 100644 Binary files a/themes/trollian/tnbg.png and b/themes/trollian/tnbg.png differ diff --git a/themes/trollian/tnbg2.png b/themes/trollian/tnbg2.png index 87babae..4ea9d2a 100644 Binary files a/themes/trollian/tnbg2.png and b/themes/trollian/tnbg2.png differ diff --git a/themes/trollian/trayicon2.png b/themes/trollian/trayicon2.png index 92b7081..31f7d29 100644 Binary files a/themes/trollian/trayicon2.png and b/themes/trollian/trayicon2.png differ diff --git a/themes/trollian/trayicon3.png b/themes/trollian/trayicon3.png index 31f7d29..84d1156 100644 Binary files a/themes/trollian/trayicon3.png and b/themes/trollian/trayicon3.png differ diff --git a/themes/trollian/unruly.gif b/themes/trollian/unruly.gif deleted file mode 100644 index 3bbd8be..0000000 Binary files a/themes/trollian/unruly.gif and /dev/null differ diff --git a/themes/trollian/x.gif b/themes/trollian/x.gif index 16a9d37..80f14b6 100644 Binary files a/themes/trollian/x.gif and b/themes/trollian/x.gif differ