Buenas, es muy simple.. no se si conoces de patrones de diseño, pero sino, no importa... lo q vas a hacer es utilizar el patron "mediador"...
En la clase donde programaste la ventana esa, agrega los metodos "get" de cada no de los botones, del JTextField "elemento", y del cuadro de abajo...
Luego crea un metodo asi:
public void setActionListener(ActionListener al){
//aca van todos los botones uitilizando el metodo "addActionListener(al)" asi:
botonAgregar.addActionListener(al);
botonQuitaraddActionListener(al);
....
botonCancelar.addActionListener(al);
}
Hecho esto, vas a crearte una nueva classe que se llame MediadorVentana y que implemente la interfaz "Action listener" asi:
public class MediadorVentana implement ActionListener{
dentro de esta clase mediadora, vas a crear un atributo privado de la clase de la ventana, asii:
private Ventana v;
y en el constructor del mediador vas a hacer el new de la ventana, y luego vas a llamar al metodo setActionListener de la ventana, asignando al mediador como listener de los botones, asi
public MediadorVentana(){
v = new Ventana();
v.setActionListener(this);
v.setVisible(true); //esto es para que la ventana se vea, lo podes hacer aca, o en el constructor de Ventana
}
hecho esto solo te queda implementar el metodo de la interfaz ActionListener que captura los eventos q generan los botones al apretarse, asii:
public void actionPerformed(ActionEvent e) {
if (e.getSource() == v.getBotonAgregar) {
//implementas el boton agregar
}
else{
if (e.getSource() == v.getBotonCancelar) {
//implementas el boton cancelar
}
}
}
y asi para todos los botones, espero haber sido claro, es mi primera respuesta