parent
513cffbbd9
commit
420f48634d
@ -0,0 +1,44 @@
|
|||||||
|
|
||||||
|
from message.simple_messages import DataChgClickMessage
|
||||||
|
from model import Example
|
||||||
|
|
||||||
|
|
||||||
|
def _get_example_idx(example, model):
|
||||||
|
for sense in model.entry.senses:
|
||||||
|
for eidx, e in enumerate(sense.examples):
|
||||||
|
if e == example:
|
||||||
|
return (sense, eidx)
|
||||||
|
|
||||||
|
|
||||||
|
class ExampleMoveUp(DataChgClickMessage):
|
||||||
|
def update_model(self, model):
|
||||||
|
example = self.get_arg(0, Example)
|
||||||
|
sense, idx = _get_example_idx(example, model)
|
||||||
|
|
||||||
|
assert(idx >= 0)
|
||||||
|
if idx == 0:
|
||||||
|
return
|
||||||
|
|
||||||
|
sense.examples[idx], sense.examples[idx - 1] = sense.examples[idx - 1], sense.examples[idx]
|
||||||
|
|
||||||
|
|
||||||
|
class ExampleMoveDown(DataChgClickMessage):
|
||||||
|
def update_model(self, model):
|
||||||
|
example = self.get_arg(0, Example)
|
||||||
|
sense, idx = _get_example_idx(example, model)
|
||||||
|
|
||||||
|
assert(idx >= 0)
|
||||||
|
if idx == len(sense.examples) - 1:
|
||||||
|
return
|
||||||
|
|
||||||
|
sense.examples[idx], sense.examples[idx + 1] = sense.examples[idx + 1], sense.examples[idx]
|
||||||
|
|
||||||
|
|
||||||
|
class ExampleBin(DataChgClickMessage):
|
||||||
|
def update_model(self, model):
|
||||||
|
example = self.get_arg(0, Example)
|
||||||
|
sense, idx = _get_example_idx(example, model)
|
||||||
|
|
||||||
|
assert(idx >= 0)
|
||||||
|
sense.examples.splice(idx, 1)
|
||||||
|
|
Loading…
Reference in new issue