WIP: on_event instead of constructor and constructor acceppting args
This commit is contained in:
@@ -5,40 +5,34 @@ from browser import document
|
||||
from model import Sense, Example
|
||||
|
||||
|
||||
class SimpleEditMessage(Message):
|
||||
def __init__(self, event, prop):
|
||||
input_element = document.getElementById("modal-input")
|
||||
class QuestionMessage(Message):
|
||||
def on_event(self, event):
|
||||
input_element = document.getElementById("modal-question")
|
||||
self.new_text = input_element.value
|
||||
self.prop = prop
|
||||
|
||||
|
||||
class EditSenseLabel(Message):
|
||||
def __init__(self, _, prop):
|
||||
assert(type(prop) is Sense)
|
||||
self.sense = prop
|
||||
|
||||
def update_model(self, model):
|
||||
self.sense.labels = []
|
||||
sense = self.get_arg(0, Sense)
|
||||
sense.labels = []
|
||||
for input_el in document.getElementsByClassName("sense-edit-input"):
|
||||
new_sense_label = input_el.value
|
||||
if new_sense_label != "":
|
||||
self.sense.labels.append(new_sense_label)
|
||||
sense.labels.append(new_sense_label)
|
||||
|
||||
|
||||
class AddSenseLabel(NoReset):
|
||||
def __init__(self, _, prop):
|
||||
assert(type(prop) is Sense)
|
||||
self.sense = prop
|
||||
|
||||
def update_model(self, model):
|
||||
sense = self.get_arg(0, Sense)
|
||||
# just adding to the copy to show in the modal
|
||||
self.sense.copy().labels.append("")
|
||||
sense.copy().labels.append("")
|
||||
|
||||
|
||||
class AddExampleTranslation(NoReset):
|
||||
def __init__(self, _, prop):
|
||||
assert(type(prop) is Example)
|
||||
self.example = prop
|
||||
def update_model(self, model):
|
||||
example = self.get_arg(0, Example)
|
||||
# just adding to the copy to show in the modal
|
||||
example.copy().translations.append("")
|
||||
|
||||
def update_model(self, model):
|
||||
# just adding to the copy to show in the modal
|
||||
@@ -46,36 +40,31 @@ class AddExampleTranslation(NoReset):
|
||||
|
||||
|
||||
class EditExampleTranslation(Message):
|
||||
def __init__(self, _, prop):
|
||||
assert(type(prop) is Example)
|
||||
self.example = prop
|
||||
|
||||
def update_model(self, model):
|
||||
self.example.translations = common_accessors.generic_list_getter()
|
||||
example = self.get_arg(0, Example)
|
||||
example.translations = common_accessors.generic_list_getter()
|
||||
|
||||
|
||||
class AddSense(SimpleEditMessage):
|
||||
class AddSense(QuestionMessage):
|
||||
def update_model(self, model):
|
||||
sense = Sense.new_empty()
|
||||
sense.labels = [self.new_text]
|
||||
model.entry.senses.append(sense)
|
||||
|
||||
|
||||
class EditSenseDefinition(SimpleEditMessage):
|
||||
class EditSenseDefinition(QuestionMessage):
|
||||
def update_model(self, model):
|
||||
sense = self.prop
|
||||
assert(type(sense) is Sense)
|
||||
sense = self.get_arg(0, Sense)
|
||||
sense.definition = self.new_text
|
||||
|
||||
|
||||
class EditComment(SimpleEditMessage):
|
||||
class EditComment(QuestionMessage):
|
||||
def update_model(self, model):
|
||||
model.entry.comment = self.new_text
|
||||
|
||||
|
||||
class EditExample(SimpleEditMessage):
|
||||
class EditExample(QuestionMessage):
|
||||
def update_model(self, model):
|
||||
example = self.prop
|
||||
assert(type(example) is Example)
|
||||
example = self.get_arg(0, Example)
|
||||
example.example = self.new_text
|
||||
|
||||
|
||||
Reference in New Issue
Block a user