Refactoring example into multiple files

This commit is contained in:
2020-02-16 23:25:11 +01:00
parent 8c2197e78b
commit b6cb2dbce5
6 changed files with 188 additions and 178 deletions

View File

@@ -0,0 +1,46 @@
from model.data import Data
class ComponentLexeme(Data):
def __init__(self, xml):
self.other_attributes = {}
if xml.nodeName == "#text":
self.text = xml.data
self.role = None
else:
self.text = xml.textContent
self.role = xml.getAttribute("role")
for oth_attr in ["lexical_unit_lexeme_id", "slolex", "kol"]:
if xml.hasAttribute(oth_attr):
self.other_attributes[oth_attr] = xml.getAttribute(oth_attr)
self.text = self.text.strip()
def isValid(self):
return len(self.text) > 0
def export(self, doc):
if self.role is None:
return doc.createTextNode(self.text)
result = doc.createElement("comp")
result.setAttribute("role", self.role)
result.textContent = self.text
for key, value in self.other_attributes.items():
result.setAttribute(key, value)
return result
def view_style(self):
result = ".comp-text"
if self.role is not None:
result += ".comp-role"
if self.role == "headword":
result += ".comp-role-headword"
return result