undo method

  1. @override
void undo({
  1. bool deleteOnly = false,
  2. bool silent = false,
})
override

Implementation

@override
void undo({bool deleteOnly = false, bool silent = false}) {
  // remove from parent

  if ( newParent != null) {
    newParent!.children.remove(widget);

    if (!silent)
      bus.publish(
        "property-changed",
        PropertyChangeEvent(widget: newParent, source: this),
      );
  }

  widget.parent = oldParent;
  widget.cell = oldCell;

  // add to old

  if (oldParent != null) {
    if ( index >= 0)
      oldParent!.children.insert(index, widget);
    else
      oldParent!.children.add(widget);

    if (!silent)
      bus.publish(
        "property-changed",
        PropertyChangeEvent(widget: oldParent, source: this),
      );
  }

  super.undo(deleteOnly: deleteOnly);
}