@Override
    public @Nullable JComponent getCellRendererComponent(@NotNull MouseEvent e) {
      Point p = e.getPoint();
      int column = owner.columnAtPoint(p);
      int row = owner.rowAtPoint(p);

      if ((column != -1) && (row != -1)) {
        TableCellRenderer renderer = owner.getCellRenderer(row, column);
        return (JComponent)owner.prepareRenderer(renderer, row, column);
      } else {
        return null;
      }
    }
@Override
    public @Nullable JComponent getCellRendererComponent(@NotNull MouseEvent e)