Interface IPanelGroup

All Known Implementing Classes:
AbstractPanelGroup, TabbedPanel, TreePanel

public interface IPanelGroup

All kind of panels which support a group of IPanel must implement this interface.

Version:
15/10/2007
Author:
Pablo Piqueras Bartolomé (pablo.piqueras@iver.es)
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Notifies this panel of an accept action.
    void
    Adds another IPanel to this group.
    void
    Notifies this panel of an apply action.
    void
    Notifies this panel of a cancel action.
    Gets a reference to the active panel in this group.
    int
    Returns the number of panels registered in this group.
    int
    Returns the number of panels registered in this group that are in GUI.
    Gets the properties associated to this group of panels.
    Gets the object that has a a ''semantically'' or ''conceptually'' relation to this panel.
    boolean
    Determines if the last notification received has been IPanel.accept().
    boolean
    Returns true if the panel as parameter belongs to a this group and it's loaded in the graphical user interface; otherwise returns false.
    void
    Tries to load as most as possible panels using an IPanelGroupLoader.
    void
    Removes an IPanel from this group.
    void
    setPanelInGUI(IPanel panel, boolean b)
    Changes the visibility of an existent panel of this group.
    void
    Sets the parent of this component.
    void
    Updates the reference of all elements of the group with the new one.
  • Method Details

    • addPanel

      void addPanel(IPanel panel) throws org.gvsig.tools.exception.BaseException

      Adds another IPanel to this group.

      Parameters:
      panel - the IPanel to add
      Throws:
      EmptyPanelGroupException - if there was no panel loaded and tries to add a new one, launches this exception if the panel to add hasn't been registered to this component and then, no remains without panels
      EmptyPanelGroupGUIException - if there was no panel loaded and tries to add a new one, launches this exception if the panel to add hasn't been set to this component graphical interface and then, no remains without panels in its graphical interface
      org.gvsig.tools.exception.BaseException
      See Also:
    • removePanel

      void removePanel(IPanel panel)

      Removes an IPanel from this group.

      Parameters:
      panel - the IPanel to remove
      See Also:
    • loadPanels

      Tries to load as most as possible panels using an IPanelGroupLoader.

      Parameters:
      loader - used to load the panels into this group
      Throws:
      ListCouldntAddPanelException - list with all exceptions produced loading and adding the panels
      EmptyPanelGroupException - launched if there was no exception during the loading and adding processes but there is no panel registered finally in this component
      EmptyPanelGroupGUIException - launched if there was no exception during the loading and adding processes there is at least one panel registered, but finally none of them is in the graphical interface of this component
      See Also:
    • getActivePanel

      IPanel getActivePanel()

      Gets a reference to the active panel in this group.

      Returns:
      a reference to the active panel, or null if there is no any active
    • getProperties

      Hashtable getProperties()

      Gets the properties associated to this group of panels.

      Returns:
      properties associated to this group of panels
    • getReference

      Object getReference()

      Gets the object that has a a ''semantically'' or ''conceptually'' relation to this panel.

      Returns:
      type of object that has reference this panel, or null if there has reference to no object
    • updateReference

      void updateReference(Object reference)

      Updates the reference of all elements of the group with the new one.

      Parameters:
      reference - type of object that has reference this panel, or null if there has reference to no object
    • setPanelInGUI

      void setPanelInGUI(IPanel panel, boolean b)

      Changes the visibility of an existent panel of this group. If a panel changes to invisible, then that panel won't be accessible by the user interface. But if changes to visible and was invisible before, then will appear at the same position it was in the user interface. The position is according the order of the insertion at the group. Anyway, the group will have that panel.

      Parameters:
      panel - reference to the panel with visibility has changed.
      b - the new visibility for that panel.
    • isPanelInGUI

      boolean isPanelInGUI(IPanel panel)

      Returns true if the panel as parameter belongs to a this group and it's loaded in the graphical user interface; otherwise returns false.

      Returns:
      true if the panel as parameter belongs to a this group and it's loaded in the graphical user interface; otherwise returns false
    • getPanelCount

      int getPanelCount()

      Returns the number of panels registered in this group.

      Returns:
      number of panels registered in this group
    • getPanelInGUICount

      int getPanelInGUICount()

      Returns the number of panels registered in this group that are in GUI.

      Returns:
      number of panels registered in this group that are in GUI
    • isAccepted

      boolean isAccepted()

      Determines if the last notification received has been IPanel.accept().

      Returns:
      true if that has been the last notification received, false otherwise
    • setParentPanelGroup

      void setParentPanelGroup(IPanelGroup parent)

      Sets the parent of this component. That object must be another IPanelGroup component.

      Parameters:
      parent - parent of this component
    • accept

      void accept()

      Notifies this panel of an accept action.

    • apply

      void apply()

      Notifies this panel of an apply action.

    • cancel

      void cancel()

      Notifies this panel of a cancel action.