changeset 552:f86fa363ec0d

mostly removing ET. and adding ParserContext imports
author davidbyron
date Thu, 01 Apr 2010 23:00:09 -0500
parents fc43840cc6b0
children 352dd34444e7
files orpg/gametree/gametree.py orpg/gametree/nodehandlers/StarWarsd20.py orpg/gametree/nodehandlers/core.py orpg/gametree/nodehandlers/d20.py orpg/gametree/nodehandlers/dnd35.py orpg/gametree/nodehandlers/dnd3e.py orpg/gametree/nodehandlers/forms.py orpg/gametree/nodehandlers/minilib.py orpg/gametree/nodehandlers/rpg_grid.py orpg/mapper/background.py orpg/mapper/base.py orpg/mapper/fog.py orpg/mapper/fog_msg.py orpg/mapper/map.py plugins/xxbonuses.py
diffstat 15 files changed, 76 insertions(+), 71 deletions(-) [+]
line wrap: on
line diff
--- a/orpg/gametree/gametree.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/gametree.py	Thu Apr 01 23:00:09 2010 -0500
@@ -37,7 +37,7 @@
 from wx.lib.filebrowsebutton import  *
 
 from orpg.ui.util.misc import ImageHelper
-from orpg.orpgCore import open_rpg
+from orpg.orpgCore import open_rpg, ParserContext
 from orpg.dirpath import dir_struct
 from orpg.tools.settings import settings
 from orpg.tools.orpg_log import logger
--- a/orpg/gametree/nodehandlers/StarWarsd20.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/StarWarsd20.py	Thu Apr 01 23:00:09 2010 -0500
@@ -61,7 +61,7 @@
     def on_version(self,old_version):
         node_handler.on_version(self,old_version)
         if old_version == "":
-            data = ET.parse(orpg.dirpath.dir_struct["nodes"]+"StarWars_d20character.xml").getroot()
+            data = parse(orpg.dirpath.dir_struct["nodes"]+"StarWars_d20character.xml").getroot()
             for tag in ("howtouse","inventory","powers","divine","pp"):
                 self.xml.append(data.find(tag))
 
@@ -1339,7 +1339,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["SWd20"]+"d20feats.xml")
+            tree = parse(orpg.dirpath.dir_struct["SWd20"]+"d20feats.xml")
             self.temp_dom = tree.getroot()
         opts = []
         f_list = self.temp_dom.findall('feat')
@@ -1348,7 +1348,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Feat','Feats',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('feat')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1506,7 +1506,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["SWd20"]+"d20weapons.xml")
+            tree = parse(orpg.dirpath.dir_struct["SWd20"]+"d20weapons.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('weapon')
         opts = []
@@ -1515,7 +1515,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Weapon','Weapon List',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('weapon')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1618,7 +1618,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["SWd20"]+"d20armor.xml")
+            tree = parse(orpg.dirpath.dir_struct["SWd20"]+"d20armor.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('armor')
         opts = []
@@ -1627,7 +1627,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Armor:','Armor List',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('armor')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1703,7 +1703,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["SWd20"]+"SWd20classes.xml")
+            tree = parse(orpg.dirpath.dir_struct["SWd20"]+"SWd20classes.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('class')
         opts = []
@@ -1712,7 +1712,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Class','Classes',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('class')
             self.refresh_row(self.grid.GetNumberRows()-1)
--- a/orpg/gametree/nodehandlers/core.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/core.py	Thu Apr 01 23:00:09 2010 -0500
@@ -33,10 +33,11 @@
 import wx
 
 from orpg.mapper import map
-from orpg.orpgCore import open_rpg
+from orpg.orpgCore import open_rpg, ParserContext
 from orpg.dirpath import dir_struct
 from orpg.external.etree.ElementTree import ElementTree, Element
 from orpg.external.etree.ElementTree import fromstring, tostring
+from orpg.external.etree.ElementTree import parse, XML
 
 from nodehandler_version import NODEHANDLER_VERSION
 
@@ -505,5 +506,5 @@
         self.mapdata = self.xml[0]
 
     def on_ldclick(self,evt):
-        self.map.new_data(ET.tostring(self.mapdata))
+        self.map.new_data(tostring(self.mapdata))
         return 1
--- a/orpg/gametree/nodehandlers/d20.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/d20.py	Thu Apr 01 23:00:09 2010 -0500
@@ -68,7 +68,7 @@
     def on_version(self,old_version):
         node_handler.on_version(self,old_version)
         if old_version == "":
-            data = ET.parse(orpg.dirpath.dir_struct["nodes"]+"d20character.xml").getroot()
+            data = parse(orpg.dirpath.dir_struct["nodes"]+"d20character.xml").getroot()
             for tag in ("howtouse","inventory","powers","divine","pp"):
                 self.xml.append(data.find(tag))
 
@@ -1591,7 +1591,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20feats.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20feats.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('feat')
         opts = []
@@ -1600,7 +1600,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Feat','Feats',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('feat')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1681,7 +1681,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20spells.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20spells.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('spell')
         opts = []
@@ -1698,7 +1698,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Spell','Spells',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('spell')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1792,7 +1792,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20divine.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20divine.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('gift')
         opts = []
@@ -1809,7 +1809,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Spell','Spells',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('gift')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1910,7 +1910,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20powers.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20powers.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('power')
         opts = []
@@ -1927,7 +1927,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Power','Powers',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('power')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -2075,7 +2075,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20weapons.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20weapons.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('weapon')
         opts = []
@@ -2084,7 +2084,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Weapon','Weapon List',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('weapon')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -2184,7 +2184,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20armor.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20armor.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('armor')
         opts = []
@@ -2193,7 +2193,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Armor:','Armor List',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('armor')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -2267,7 +2267,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["d20"]+"d20classes.xml")
+            tree = parse(orpg.dirpath.dir_struct["d20"]+"d20classes.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('class')
         opts = []
@@ -2276,7 +2276,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Class','Classes',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('class')
             self.refresh_row(self.grid.GetNumberRows()-1)
--- a/orpg/gametree/nodehandlers/dnd35.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/dnd35.py	Thu Apr 01 23:00:09 2010 -0500
@@ -623,7 +623,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35classes.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35classes.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('class')
         opts = []
@@ -632,7 +632,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Class','Classes',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('class')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1228,7 +1228,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35feats.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35feats.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('feat')
         opts = []
@@ -1238,7 +1238,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Feat','Feats',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('feat')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1478,7 +1478,7 @@
 
     def updateFootN(self,n):#a 1.5012 this whole function
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35weapons.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35weapons.xml")
             self.temp_dom = tree.getroot()
         nameF = n.get('name')
         w_list = self.temp_dom.findall('weapon')
@@ -1936,7 +1936,7 @@
             fnFrame = wx.Frame(open_rpg.get_component('frame'), -1, title)
             fnFrame.panel = wx.html.HtmlWindow(fnFrame,-1)
             if not self.temp_dom:
-                tree = ET.parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35weapons.xml")
+                tree = parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35weapons.xml")
                 self.temp_dom = tree.getroot()
             f_list = self.temp_dom.findall('f') # the footnotes
             #print "weapon_panel - on_rclick f_list",f_list#a 1.6
@@ -2024,7 +2024,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35weapons.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35weapons.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('weapon')
         opts = []
@@ -2035,7 +2035,7 @@
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
             #print f_list[i] # DOM Element: weapon.
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             #print self.grid.AppendRows # a bound method of wxGrid
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('weapon')
@@ -2242,7 +2242,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35armor.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd35"]+"dnd35armor.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('armor')
         opts = []
@@ -2251,7 +2251,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Armor:','Armor List',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('armor')
             self.refresh_row(self.grid.GetNumberRows()-1)
--- a/orpg/gametree/nodehandlers/dnd3e.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/dnd3e.py	Thu Apr 01 23:00:09 2010 -0500
@@ -867,7 +867,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eclasses.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eclasses.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('class')
         opts = []
@@ -876,7 +876,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Class','Classes',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('class')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1473,7 +1473,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3efeats.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3efeats.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('feat')
         opts = []
@@ -1483,7 +1483,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Feat','Feats',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('feat')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -1728,7 +1728,7 @@
 
     def updateFootN(self,n):#a 1.5012 this whole function
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eweapons.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eweapons.xml")
             self.temp_dom = tree.getroot()
         nameF = n.get('name')
         w_list = self.temp_dom.findall('weapon')
@@ -2152,7 +2152,7 @@
             fnFrame = wx.Frame(masterFrame, -1, title)
             fnFrame.panel = wx.html.HtmlWindow(fnFrame,-1)
             if not self.temp_dom:
-                tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eweapons.xml")
+                tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eweapons.xml")
                 self.temp_dom = tree.getroot()
             f_list = self.temp_dom.findall('f') # the footnotes
             #print "weapon_panel - on_rclick f_list",f_list#a 1.6
@@ -2253,7 +2253,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eweapons.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3eweapons.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('weapon')
         opts = []
@@ -2264,7 +2264,7 @@
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
             #print f_list[i] # DOM Element: weapon.
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             #print self.grid.AppendRows # a bound method of wxGrid
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('weapon')
@@ -2471,7 +2471,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3earmor.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3earmor.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('armor')
         opts = []
@@ -2480,7 +2480,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Armor:','Armor List',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('armor')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -2724,7 +2724,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3espells.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3espells.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('spell')
         opts = []
@@ -2740,7 +2740,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Spell','Spells',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('spell')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -2922,7 +2922,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3edivine.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3edivine.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('gift')
         opts = []
@@ -2938,7 +2938,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Spell','Spells',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('gift')
             self.refresh_row(self.grid.GetNumberRows()-1)
@@ -3149,7 +3149,7 @@
 
     def on_add(self,evt):
         if not self.temp_dom:
-            tree = ET.parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3epowers.xml")
+            tree = parse(orpg.dirpath.dir_struct["dnd3e"]+"dnd3epowers.xml")
             self.temp_dom = tree.getroot()
         f_list = self.temp_dom.findall('power')
         opts = []
@@ -3166,7 +3166,7 @@
         dlg = wx.SingleChoiceDialog(self,'Choose Power','Powers',opts)
         if dlg.ShowModal() == wx.ID_OK:
             i = dlg.GetSelection()
-            new_node = self.xml.append(ET.XML(ET.tostring(f_list[i])))
+            new_node = self.xml.append(XML(tostring(f_list[i])))
             self.grid.AppendRows(1)
             self.n_list = self.xml.findall('power')
             self.refresh_row(self.grid.GetNumberRows()-1)
--- a/orpg/gametree/nodehandlers/forms.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/forms.py	Thu Apr 01 23:00:09 2010 -0500
@@ -67,7 +67,7 @@
             else:
                 self.tree.load_xml(child_xml,self.mytree_node)
         if self.atts is None:
-            self.atts = ET.Element('form')
+            self.atts = Element('form')
             self.atts.set("width","400")
             self.atts.set("height","600")
             self.xml.append(self.atts)
@@ -459,7 +459,7 @@
         return getText(self.options[index]), str(self.options[index].get("caption", ""))
 
     def add_option(self, index, value, caption):
-        elem = ET.Element('option')
+        elem = Element('option')
         elem.set("caption",caption)
         elem.set("selected","0")
         elem.text = value
--- a/orpg/gametree/nodehandlers/minilib.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/minilib.py	Thu Apr 01 23:00:09 2010 -0500
@@ -545,7 +545,10 @@
         # self.GetTable().SetValue( row, 1, item.get(ATTRIBUTE_URL) )
         # self.GetTable().SetValue( row, 2, item.get(ATTRIBUTE_UNIQUE) )
         for key in self.keys:
-            self.GetTable().SetValue( row, self.keys.index( key ), item.get( key ) )
+            value = item.get( key )
+            if value is None:
+                value = ''
+            self.GetTable().SetValue( row, self.keys.index( key ), value )
 
     def update_data_row( self, row ):
         """Updates the DOM nodw 'row' with grid data from 'row'
--- a/orpg/gametree/nodehandlers/rpg_grid.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/gametree/nodehandlers/rpg_grid.py	Thu Apr 01 23:00:09 2010 -0500
@@ -30,6 +30,7 @@
 
 from core import *
 from forms import *
+import string
 
 M_HTML = 1
 M_USE = 2
@@ -394,9 +395,9 @@
 
     def insert_row(self, index):
         cols = self.GetNumberCols()
-        row = ET.Element('row')
+        row = Element('row')
         for i in range(cols):
-            cell = ET.Element('cell')
+            cell = Element('cell')
             cell.text = ''
             row.append(cell) 
         self.handler.grid.insert(index, row)
@@ -414,7 +415,7 @@
 
     def insert_col(self, index):
         for r in self.rows:
-            cell = ET.Element('cell')
+            cell = Element('cell')
             cell.text = ''
             r.insert(index, cell)
         self.InsertCols(index, 1)
--- a/orpg/mapper/background.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/mapper/background.py	Thu Apr 01 23:00:09 2010 -0500
@@ -289,7 +289,7 @@
                 recvdata = f.read()
                 f.close()
                 try:
-                    xml = ET.XML(recvdata)
+                    xml = XML(recvdata)
                     if xml.tag == 'path':
                         path = xml.get('url')
                         path = urllib.unquote(path)
--- a/orpg/mapper/base.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/mapper/base.py	Thu Apr 01 23:00:09 2010 -0500
@@ -34,7 +34,7 @@
 
 from orpg.tools.rgbhex import RGBHex
 from orpg.external.etree.ElementTree import ElementTree, Element
-from orpg.external.etree.ElementTree import fromstring, tostring
+from orpg.external.etree.ElementTree import fromstring, tostring, XML
 
 from .images import ImageHandler
 
--- a/orpg/mapper/fog.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/mapper/fog.py	Thu Apr 01 23:00:09 2010 -0500
@@ -45,7 +45,7 @@
 
         for pairs in string.split(points, ';'):
             pair = string.split(pairs, ',')
-            p = ET.Element("point")
+            p = Element("point")
             p.set("x", pair[0])
             p.set("y", pair[1])
             result.append(p)
@@ -58,7 +58,7 @@
 
         if localOutline != None and localOutline != "all" and localOutline != "none":
             localOutline = "points"
-        elem = ET.Element("poly")
+        elem = Element("poly")
 
         if action == "del":
             elem.set("action", action)
@@ -67,7 +67,7 @@
                 list = self.points_to_elements(self.outline)
                 for p in list:
                     elem.append(p)
-            return ET.tostring(elem)
+            return tostring(elem)
 
         elem.set("action", action)
         if  localOutline != None:
@@ -77,7 +77,7 @@
                 for p in list:
                     elem.append(p)
 
-        return ET.tostring(elem)
+        return tostring(elem)
 
 fog_stipple_xpm = '''/* XPM */'
 static char * hatch_xpm[] = {
--- a/orpg/mapper/fog_msg.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/mapper/fog_msg.py	Thu Apr 01 23:00:09 2010 -0500
@@ -39,7 +39,7 @@
         self.fogregion.Clear()
 
     def get_line(self,outline,action,output_act):
-        elem = ET.Element("poly")
+        elem = Element("poly")
         if output_act:
             elem.set("action", action)
 
@@ -49,11 +49,11 @@
             elem.set("outline", "points")
             for pair in string.split(outline, ";"):
                 p = string.split(pair, ",")
-                point = ET.Element("point")
+                point = Element("point")
                 point.set("x", p[ 0 ])
                 point.set("y", p[ 1 ])
                 elem.append(point)
-        return ET.tostring(elem)
+        return tostring(elem)
 
     # convenience method to use if only this line is modified
     #   outputs a <map/> element containing only the changes to this line
--- a/orpg/mapper/map.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/orpg/mapper/map.py	Thu Apr 01 23:00:09 2010 -0500
@@ -686,7 +686,7 @@
         try:
             #parse the map DOM
             try:
-                xml = ET.XML(xmlString)
+                xml = XML(xmlString)
                 if xml.tag != 'map':
                     xml = xml.find('map')
             except:
@@ -744,7 +744,7 @@
     def re_ids_in_xml(self, xmlString):
         new_xml = ""
         tmp_map = map_msg()
-        xml = ET.XML(str(xmlString))
+        xml = XML(str(xmlString))
         mapNode = xml.find("map")
         if mapNode:
             tmp_map.init_from_dom(mapNode)
--- a/plugins/xxbonuses.py	Tue Mar 30 20:11:35 2010 -0500
+++ b/plugins/xxbonuses.py	Thu Apr 01 23:00:09 2010 -0500
@@ -7,7 +7,7 @@
 from orpg.mapper.miniatures_handler import *
 
 from orpg.pluginhandler import PluginHandler
-from orpg.orpgCore import open_rpg
+from orpg.orpgCore import open_rpg, ParserContext
 from orpg.mapper.base_handler import base_layer_handler
 from orpg.chat.chatwnd import compiled_simple_arithmetic_regex
 from orpg.chat.commands import command_args_parser