@Override
  public Point toModel(@NotNull Component source, @NotNull Point point) {
    Point p = myNativeComponent == source
              ? new Point(point) : SwingUtilities.convertPoint(source, point, myNativeComponent);

    if (myNativeComponent != source && myNativeComponent instanceof ScalableComponent scalableComponent) {
      double zoom = scalableComponent.getScale();

      if (zoom != 1) {
        p = new Point(p);
        p.x /= zoom;
        p.y /= zoom;
      }
    }

    return p;
  }
@Override
  public Point toModel(@NotNull Component source, @NotNull Point point)