Javafx - Determine la posición del cursor al hacer clic derecho en relación con el panel de cuadrícula

Tengo un panel de cuadrícula de 40x40, que muestra un mapa. Actualmente, tengo los siguientes métodos escuchando un clic derecho:

    //detect right click + display menu, select if you want to place item 1 or item 2
    final ContextMenu cm = new ContextMenu();
    cm.addEventFilter(MouseEvent.MOUSE_RELEASED, new EventHandler<MouseEvent>() 
    {
        @Override
        public void handle(MouseEvent event) 
        {
            if (event.getButton() == MouseButton.SECONDARY) 
                event.consume();

        }
    });
    cm.setOnAction(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent event) {
            System.out.println("Following item selected: "+
                    ((MenuItem)event.getTarget()).getText());
        }
    });
    //two placeable items
    MenuItem item1Place = new MenuItem("Item 1");
    MenuItem item2Place = new MenuItem("Item 2");
    cm.getItems().addAll(item1Place, item2Place);

    primaryStage.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() 
    {
        @Override
        public void handle(MouseEvent e)
        {
            if (e.getButton() == MouseButton.SECONDARY) 
            {
              cm.show(primaryStage, e.getScreenX(), e.getScreenY());
            } 
        }
    });

Lo que me gustaría implementar es lo siguiente:

Si se selecciona un elemento de menú después de un clic derecho, me gustaría guardar la posición del clic derecho en una variable
p.ej. [32,12] si el clic derecho era de 32 bloques del panel de cuadrícula de ancho y 12 bloques hacia arriba.


¿Alguna sugerencia sobre cómo hacer esto?
Gracias por adelantado

// first edit code entered below. I realise the indentation is very off however fixing it seemed to turn it back to plain text
placeItem1.setOnAction(evt -> System.out.println("Item 1 placed ["+col+", "+row+"]"));
                placeItem2.setOnAction(evt -> System.out.println(Item 2 placed["+col+", "+row+"]"));
                menu.show(cell, e.getScreenX(), e.getScreenY());
            });
            root.add(cell, x, y);

Respuestas a la pregunta(1)

Su respuesta a la pregunta