Class AgentConfigurationPanel

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
es.ull.mazesolver.gui.configuration.AgentConfigurationPanel
All Implemented Interfaces:
Translatable, ImageObserver, MenuContainer, Serializable, Accessible
Direct Known Subclasses:
SimpleAgentConfigurationPanel

public abstract class AgentConfigurationPanel extends JPanel implements Translatable
Se trata de un panel de configuración de agentes, que permite al usuario configurar un agente dependiendo del tipo que sea.

Los controles para aceptar o cancelar la configuración deben ser implementados desde el exterior y utilizarse para llamar a los métodos "accept()" o "cancel", respectivamente.

See Also:
Serialized Form
  • Field Details

    • m_agent

      protected Agent m_agent
      Agente que se quiere configurar.
    • m_errors

      protected ArrayList<String> m_errors
      Lista de mensajes de error obtenidos al intentar guardar la configuración de un agente.
    • m_success

      protected ArrayList<String> m_success
      Lista de mensajes de éxito obtenidos tras guardar la configuración de un agente.
  • Constructor Details

    • AgentConfigurationPanel

      public AgentConfigurationPanel(Agent agent)
      Construye la interfaz del panel de configuración de agentes.
      Parameters:
      agent - Agente que se quiere configurar.
  • Method Details

    • addEventListener

      public final void addEventListener(AgentConfigurationPanel.EventListener listener)
      Añade un oyente de eventos.
      Parameters:
      listener - Clase oyente que se quiere añadir.
    • removeEventListener

      public final void removeEventListener(AgentConfigurationPanel.EventListener listener)
      Elimina un oyente de eventos. Si no es un oyente, la lista de oyentes permanece intacta.
      Parameters:
      listener - Clase oyente que se quiere añadir.
    • translate

      public void translate()
      Description copied from interface: Translatable
      Traduce las cadenas de texto de la clase.
      Specified by:
      translate in interface Translatable
    • accept

      protected abstract boolean accept()
      Provoca que la configuración actualmente almacenada en el panel de configuración se guarde en el agente, modificando su comportamiento.

      Este método debe ser implementado por cada agente.

      Returns:
      • true si se pudo guardar el resultado.
      • false si la configuración indicada no es válida.
    • cancel

      protected abstract void cancel()
      Cancela la operación de configuración, dejando al agente en su estado de partida.

      Este método debe ser implementado por cada agente.

    • createGUI

      protected abstract void createGUI(JPanel root)
      Crea la interfaz gráfica de usuario, que es la que se mostrará al mismo. Estará personalizada para el agente específico, pero no incluirá los botones de "Aceptar" y "Cancelar", que se proporcionan por defecto.
      Parameters:
      root - Panel padre de todos los elementos que se creen. Si se intenta utilizar el panel padre de la clase en lugar de éste, el panel de configuración no se mostrará correctamente.