cancelResize method

void cancelResize()

Cancels a resize operation and reverts to original position/size.

Restores the node to its state before the resize started using the original bounds captured in InteractionState.

Implementation

void cancelResize() {
  final nodeId = interaction.currentResizingNodeId;
  final originalBounds = interaction.currentOriginalNodeBounds;

  if (nodeId == null || originalBounds == null) return;

  final node = _nodes[nodeId];
  if (node != null && node.isResizable) {
    runInAction(() {
      node.position.value = originalBounds.topLeft;
      node.setVisualPosition(snapToGrid(originalBounds.topLeft));
      (node as ResizableMixin<T>).setSize(originalBounds.size);
    });
    _markNodeDirty(nodeId);
  }

  interaction.endResize();

  // Fire resize cancel event
  if (node != null) {
    events.node?.onResizeCancel?.call(node);
  }
}