editing example texts now as I see it could look like.

This commit is contained in:
2020-01-25 21:33:22 +01:00
parent 98cce79b79
commit 4fb17bb2fc
6 changed files with 114 additions and 15 deletions

View File

@@ -1,10 +1,10 @@
from message.simple_messages import NoReset, Reset, ModalNotOkClose, ClickMessage, DataChgClickMessage, KeyboardPress
from message.translation_edit import EditTranslation, MoveRight, MoveLeft, BinTranslation
from message.show_messages import ShowEntryLabelsEdit, ShowEditTranslation, ShowSenseLabelEdit, ShowSenseDefinitionEdit, ShowCommentEdit, ShowAddTranslation, ShowExampleEdit, ShowExampleTranslationEdit, ShowVariantsEdit, ShowRelatedEntriesEdit
from message.simple_edits import EditSenseLabel, EditSenseDefinition, EditComment, AddSenseLabel, AddSense, EditExample, AddExampleTranslation, EditExampleTranslation, DoChosenExamples, AddToLabelList, AddToGenericList, EditVariants, EditRelatedEntries, EditEntryLabels
from message.show_messages import ShowEntryLabelsEdit, ShowEditTranslation, ShowSenseLabelEdit, ShowSenseDefinitionEdit, ShowCommentEdit, ShowAddTranslation, ShowExampleEdit, ShowVariantsEdit, ShowRelatedEntriesEdit
from message.simple_edits import EditSenseLabel, EditSenseDefinition, EditComment, AddSenseLabel, AddSense, AddExampleTranslation, DoChosenExamples, AddToLabelList, AddToGenericList, EditVariants, EditRelatedEntries, EditEntryLabels
from message.show_menu import ShowTranslationMenu, ShowSenseMenu, ShowExampleMenu
from message.sense_edit import SenseMoveUp, SenseMoveDown, SenseBin
from message.example_edit import ExampleMoveUp, ExampleMoveDown, ExampleBin
from message.example_edit import ExampleMoveUp, ExampleMoveDown, ExampleBin, ExampleRoleChange, ExampleComponentAdd, ExampleComponentRemove, EditExampleText
from message.delete_messages import DeleteComment, DeleteVariants, DeleteRelatedEntries, DeleteEntryLabels
from message.message import msg

View File

@@ -1,6 +1,8 @@
from browser import document
from message.simple_messages import DataChgClickMessage, ClickMessage, NoReset
from message.message import Message
from model.example import Example, ComponentLexeme
from message.simple_messages import DataChgClickMessage
from model import Example
def _get_example_idx(example, model):
@@ -42,3 +44,41 @@ class ExampleBin(DataChgClickMessage):
assert(idx >= 0)
sense.examples.splice(idx, 1)
class EditExampleText(Message):
def update_model(self, model):
example = self.get_arg(0, Example)
example.overwrite_with_copy()
idx = 0
for txt in document.getElementsByClassName("example-component-text"):
example.components[idx].text = txt.value
idx += 1
class ExampleRoleChange(NoReset):
def update_model(self, model):
example = self.get_arg(0, Example)
component_num = self.get_arg(1, int)
component_new_role = self.get_arg(2, str)
if component_new_role == "none":
component_new_role = None
example.copy().components[component_num].role = component_new_role
class ExampleComponentAdd(NoReset):
def update_model(self, model):
example = self.get_arg(0, Example)
component_num = self.get_arg(1, int)
new_component = ComponentLexeme.new_empty()
example.copy().components.insert(component_num + 1, new_component)
class ExampleComponentRemove(NoReset):
def update_model(self, model):
example = self.get_arg(0, Example)
component_num = self.get_arg(1, int)
example.copy().components.splice(component_num, 1)

View File

@@ -39,12 +39,6 @@ class AddToLabelList(NoReset):
return False
class EditExampleTranslation(QuestionMessage):
def update_model(self, model):
example = self.get_arg(0, Example)
example.text = self.new_text
class AddSense(Message):
def update_model(self, model):
sense = Sense.new_empty()