Google Maps Api 3 Eliminar solo el marcador seleccionado

Tengo 2 funciones de la siguiente manera:

function addMarker() {
    marker = new google.maps.Marker({
        position: Gpoint,
        map: map,
        draggable: true,
        animation: google.maps.Animation.DROP
    });
    map.panTo(Gpoint);

    google.maps.event.addListener(marker, "rightclick", 
    function (point) { 
    showContextMarker(point.latLng); } ); 
    $('.contextmenu').remove();
};

function delMarker() { marker.setMap(null); $('.contextmenu').remove(); };

Entonces, como puedo entender, tengo un menú contextual que tiene la opción "Eliminar marcador". Estoy vinculando un oyente "clic derecho" durante la adición de un marcador, para mostrar este menú.

Todo funciona sin ningún problema hasta este momento.

Pero cuando trato de hacer clic en un marcador para eliminarlo; solo afecta al último marcador agregado. Cuando lo intento de nuevo; no pasa nada

Así que mi idea es obtener la identificación del marcador en el que se hizo clic (o algo que bien puede ser útil) y ejecutar esta función de eliminación de acuerdo con esto.

Brevemente; Quiero eliminar el marcador en el que hice clic, de un mapa que tiene múltiples marcadores.

¿Tiene algún enfoque para resolver este problema?

¡Gracias por adelantado

¡RESUELTO!

Aquí está la solución. Gracias Fatih era imposible sin tu guía:

var id;
var markers = {};
var addMarker = function () {
    marker = new google.maps.Marker({ 
        position: Gpoint,
        map: map,
        draggable: true,
        animation: google.maps.Animation.DROP
    });
    map.panTo(Gpoint);
    id = marker.__gm_id
    markers[id] = marker; 

    google.maps.event.addListener(marker, "rightclick", function (point) { id = this.__gm_id; delMarker(id) });
}

var delMarker = function (id) {
    marker = markers[id]; 
    marker.setMap(null);
}

Función de eliminación de llamadas por:delMarker(id) Ps: "Hacer clic derecho es suficiente en este caso"

¡Gracias

Respuestas a la pregunta(10)

Su respuesta a la pregunta