/**
   * Constructor de la clase.
   *
   * @param oControlConfiguracionCliente Objeto ControlConfiguracionCliente. Mediante este parametro
   *     la Vista (este JPanel) tiene una referencia al Modelo (el objeto
   *     ControlConfiguracionCliente) y le permite pedir información al Modelo para actualizarse
   *     convenientemente.
   * @throws gestorDeConfiguracion.ControlConfiguracionClienteException
   * @see gestorDeConfiguracion.ControlConfiguracionClienteException
   */
  public GUIDialogoConfiguracion(
      java.awt.Frame parent,
      String title,
      boolean modal,
      ControlConfiguracionCliente oControlConfiguracionCliente)
      throws ControlConfiguracionClienteException {
    super(parent, title, modal);
    initComponents();
    // Registramos la vista como observadora del modelo
    ControlConfiguracionCliente.obtenerInstancia().anadirObservador(this);

    // Guardo en la Vista una referencia al Modelo.
    _objetoModelo = oControlConfiguracionCliente;
    // Creo el Controlador y le paso una referencia al Modelo y a la Vista
    // Y guardo en la Vista una referencia al Controlador.
    _objetoControlador = new ControladorPanelConfiguracion(_objetoModelo, this);

    // Ocultar el cuadro de dialogo al pulsar el aspa de cerrar la ventana.
    addWindowListener(
        new java.awt.event.WindowAdapter() {
          public void windowClosing(java.awt.event.WindowEvent e) {
            setVisible(false);
          }
        });
    // Pongo al objeto controlador a "escuchar" a los botones.
    _btnAceptar.addActionListener(_objetoControlador);
    _btnCancelar.addActionListener(_objetoControlador);
    _btnRestaurar.addActionListener(_objetoControlador);
    _btnDirCompartidos.addActionListener(_objetoControlador);
    _btnDirLlegada.addActionListener(_objetoControlador);
    inicializarCampos(_objetoModelo.obtenerConfiguracion());
  }
 /**
  * Este metodo (implementacion de la interfaz ObservadorControlConfiguracionCliente) permite
  * reflejar en la Vista (este panel) los cambios que se han producido en el Modelo (objeto
  * ControlConfiguracionCliente). En el parametro propiedades están las propiedades que han
  * cambiado de valor (no tienen porqué haber cambiado todas). EN ESTE CASO NO HACE FALTA tratar de
  * manera diferenciada cada posible cambio: se muestra en el panel el contenido del objeto entero.
  *
  * @param obj Objeto ControlConfiguracionCliente que almacena la configuracion
  * @param propiedades Conjunto de propiedades que han cambiado en el objeto anterior.
  */
 @Override
 public void cambioEnPropiedades(ControlConfiguracionCliente obj, Properties propiedades) {
   inicializarCampos(_objetoModelo.obtenerConfiguracion());
 }