metodos para seleleccionar

hola estoy desarrollando una GUI pero lo que sucede es que me toca hacer que este, pueda seleccionar los objetos que se guardan en la siguiente lista que es la que evoca el jpanel para para pintarlos
elements = new LinkedList();
private List elements;

(Figure es una clase abstracta de la cual se extiendes las clases que crean las figuras: lineas elipses rectangulos,etc.
"los valores que posee Figure son: Bounnding box, color y seleccionado(booleano)")

la clase posee un booleano que es el que marca la seleccion del objeto en cuestion.
mi pregunta es ¿de que manera puedo acceder a los atributos de los objetos para que se pueda modificar el valor del booleano que por defecto es FALSE?
y mi otra pregunta es como le puedo indicar al programa que seleccione la linea, me explico.
ya tengo las variables que guardan los puntos que generan los metodos de MouseListener, pero lo que no se, es como puedo indicar que
estoy haciendo clic a una parte de la linea.

(esto con el fin de que al tener activa la herramienta seleccionar si toco alguna parte de la linea en el jpanel se pueda cambiar el valor del (booleano seleccionado) a TRUE)

la unica manera que se me ocure es comparando los valores de los puntos clickeados que crean un Boundingbox y compararlos con los puntos que componen la linea o las figuras, sin embargo no se como realizar esta comparacion.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de paranoid_android

Por si te sirve

Hola. Me parece que swing utiliza una librería llamada java2d creo parte está integrada y otra parte es descargable.
Encontré estos enlaces que te pueden ser de utilidad.
https://sites.google.com/site/drjohnbmatthews/graphpanel
http://stackoverflow.com/questions/2834984/java2d-capturing-an-event-on-a-line-object
http://docs.oracle.com/javase/tutorial/2d/index.html
http://docs.oracle.com/javase/tutorial/2d/advanced/index.html