index 6d6331cdbadaffdbec872dc3f253b630a3df2e07..a6928f5e4f9f59ac0156f6659c5520e64bfbcb0d 100644 (file)
help="do not create a copy, modify the markers")\r
\r
def effect(self):\r
- defs = self.xpathSingle('/svg//defs')\r
+ defs = self.xpathSingle('/svg:svg//svg:defs')\r
if not defs:\r
- defs = self.document.createElement('svg:defs')\r
- self.document.documentElement.appendChile(defs)\r
+ defs = inkex.etree.SubElement(self.document.getroot(),inkex.addNS('defs','svg'))\r
\r
for id, node in self.selected.iteritems():\r
mprops = ['marker','marker-start','marker-mid','marker-end']\r
try:\r
- style = simplestyle.parseStyle(node.attributes.getNamedItem('style').value)\r
+ style = simplestyle.parseStyle(node.get('style'))\r
except:\r
inkex.debug("No style attribute found for id: %s" % id)\r
continue\r
if style.has_key(mprop) and style[mprop] != 'none'and style[mprop][:5] == 'url(#':\r
marker_id = style[mprop][5:-1]\r
try:\r
- old_mnode = self.xpathSingle('/svg//marker[@id="%s"]' % marker_id)\r
+ old_mnode = self.xpathSingle('/svg:svg//svg:marker[@id="%s"]' % marker_id)\r
if not self.options.modify:\r
- mnode = old_mnode.cloneNode(True)\r
+ mnode = inkex.etree.fromstring(inkex.etree.tostring(old_mnode))\r
else:\r
mnode = old_mnode\r
except:\r
new_id = self.uniqueId(marker_id, not self.options.modify)\r
\r
style[mprop] = "url(#%s)" % new_id\r
- mnode.attributes.getNamedItem('id').value = new_id\r
- mnode.attributes.getNamedItemNS(inkex.NSS['inkscape'],'stockid').value = new_id\r
- defs.appendChild(mnode)\r
+ mnode.set('id', new_id)\r
+ mnode.set(inkex.addNS('stockid','inkscape'), new_id)\r
+ defs.append(mnode)\r
\r
- children = inkex.xml.xpath.Evaluate('/svg//marker[@id="%s"]//*[@style]' % new_id,self.document,context=self.ctx)\r
+ children = self.document.getroot().xpath('/svg:svg//svg:marker[@id="%s"]//*[@style]' % new_id,inkex.NSS)\r
for child in children:\r
- cstyle = simplestyle.parseStyle(child.attributes.getNamedItem('style').value)\r
+ cstyle = simplestyle.parseStyle(child.get('style'))\r
if ('stroke' in cstyle and cstyle['stroke'] != 'none') or 'stroke' not in cstyle:\r
cstyle['stroke'] = stroke\r
if ('fill' in cstyle and cstyle['fill'] != 'none') or 'fill' not in cstyle:\r
cstyle['fill'] = stroke\r
- child.attributes.getNamedItem('style').value = simplestyle.formatStyle(cstyle)\r
- node.attributes.getNamedItem('style').value = simplestyle.formatStyle(style)\r
+ child.set('style',simplestyle.formatStyle(cstyle))\r
+ node.set('style',simplestyle.formatStyle(style))\r
e = MyEffect()\r
e.affect()\r