model.modal now a function and multiple sense labels

This commit is contained in:
2019-11-12 00:34:52 +01:00
parent 75755ef3c5
commit 58adffb104
10 changed files with 66 additions and 21 deletions

View File

@@ -12,16 +12,25 @@ class Model:
#runtime info
self.menu_location = (0, 0)
self.menu_shown = False
self.modal = []
# modal handling
self.modal = lambda: []
self.modal_shown = False
# currently edited stuff
self.translation = None
self.sense = None
self.reset()
self.modal_reset()
def reset(self):
self.menu_shown = False
self.modal_shown = False
def modal_reset(self):
self.modal = lambda: []
def import_xml(self, xml_text):
parser = __new__(DOMParser())

View File

@@ -4,10 +4,9 @@ from model.translation import Translation
class Sense:
def __init__(self, sense_xml):
label = sense_xml.querySelector("labelList label")
definition = sense_xml.querySelector("definitionList definition")
self.label = label.textContent if label else ""
self.labels = [label.textContent for label in sense_xml.querySelectorAll("labelList label")]
self.definition = definition.textContent if definition else ""
self.examples = [Example(example_xml) for example_xml in
@@ -25,4 +24,6 @@ class Sense:
for clusterNum, translation in translations:
self.translations[clusterNum - 1].append(translation)
# useful for editing
self.temporary_labels = None