1
0
mirror of https://github.com/KanjiVG/kanjivg.git synced 2025-12-25 18:30:20 +01:00
Files
kanjivg/xmlhandler.py
Ben Bullock 3890844943 Add back python distro files; delete template.svg
The python scripts were used to build the release files, so they are
still necessary.

template.svg from 2009 referred to an old format and was not in use,
and is deleted with this commit.
2022-03-29 11:43:56 +09:00

53 lines
1.6 KiB
Python

#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Copyright (C) 2008 Alexandre Courbot
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import xml.sax.handler
class BasicHandler(xml.sax.handler.ContentHandler):
def __init__(self):
xml.sax.handler.ContentHandler.__init__(self)
self.elementsTree = []
def currentElement(self):
return str(self.elementsTree[-1])
def startElement(self, qName, atts):
self.elementsTree.append(str(qName))
attrName = "handle_start_" + str(qName)
if hasattr(self, attrName):
rfunc = getattr(self, attrName)
rfunc(atts)
self.characters = ""
return True
def endElement(self, qName):
attrName = "handle_data_" + qName
if hasattr(self, attrName):
rfunc = getattr(self, attrName)
rfunc(self.characters)
attrName = "handle_end_" + str(qName)
if hasattr(self, attrName):
rfunc = getattr(self, attrName)
rfunc()
self.elementsTree.pop()
return True
def characters(self, string):
self.characters += string
return True