From: Digital X. <dig...@us...> - 2007-05-22 00:28:09
|
Update of /cvsroot/openrpg/openrpg1/plugins In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv12632/plugins Added Files: xxchatnotify.py Log Message: Added the Chat Notification plugin --- NEW FILE: xxchatnotify.py --- import os import orpg.pluginhandler import wx class Plugin(orpg.pluginhandler.PluginHandler): def __init__(self, openrpg, plugindb, parent): orpg.pluginhandler.PluginHandler.__init__(self, openrpg, plugindb, parent) self.openrpg = openrpg # The Following code should be edited to contain the proper information self.name = 'Chat Notification' self.author = 'Dj Gilcrease' self.help = 'This plugin with either play a sound when a new chat message comes in, flash the taskbar or both' def plugin_enabled(self): self.plugin_addcommand('/notify', self.on_notify, 'beep|flash|both|off|type [all|whisper] - This command turns on the chat notification') self.notify = self.plugindb.GetString('xxchatnotify', 'notify', 'off') self.type = self.plugindb.GetString('xxchatnotify', 'type', 'all') self.mainframe = self.openrpg.get_component('frame') def plugin_disabled(self): self.plugin_removecmd('/notify') def on_notify(self, cmdargs): args = cmdargs.split(None, -1) if len(args) == 0: self.chat.InfoPost('You must specify if you want it to beep, flash, both or be turned off or specify if you want to be notified for all messages or just whispers') if args[0] == 'type': self.type = args[1] self.plugindb.SetString('xxchatnotify', 'type', self.type) self.chat.InfoPost('Setting Notification on Message type to ' + args[1]) return self.notify = args[0] self.plugindb.SetString('xxchatnotify', 'notify', self.notify) self.chat.InfoPost('Setting Notification type to ' + args[0]) def plugin_incoming_msg(self, text, type, name, player): if (self.notify == 'beep' or self.notify == 'both') and (self.type == 'all' or type == 2): wx.CallAfter(wx.Bell) wx.CallAfter(wx.Bell) if (self.notify == 'flash' or self.notify == 'both') and (self.type == 'all' or type == 2): wx.CallAfter(self.mainframe.RequestUserAttention) return text, type, name |