Class SwingNavigationView

All Implemented Interfaces:
NavigationView, ViewerComponent, ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants

public class SwingNavigationView extends JTabbedPane implements NavigationView
The navigation view is responsible for the group tree, the search view, and any other navigation tabs needed by the application. These navigation tabs are displayed as individual tabs, that is, the user can switch between them. The typical use of a NavigationView would be a holder for a group tree to the left of the report scroll view, however it can be used in any other manner as well.
Since:
7.0
See Also:
  • Method Details

    • reload

      public void reload()
      Reloads the data underlying this navigation view and renews the display with the new data. Reload will be called whenever the ReportView is reloaded in order to prevent two different states between the ReportView and the NavigationView. It will be passed on to all navigation tabs in this navigation view.
      Specified by:
      reload in interface NavigationView
      Since:
      7.0
    • showError

      public void showError(Throwable th)
      Called when any error occurs within the navigation view
      Specified by:
      showError in interface NavigationView
      Parameters:
      th - Exception which has occurred.
      Since:
      7.0
    • getReportData

      public RenderData getReportData()
      Returns the RenderData object of this NavigationView, that is, the source of the report data
      Specified by:
      getReportData in interface NavigationView
      Returns:
      The RenderData object of this NavigationView, that is, the source of the report data
      Since:
      7.0
    • addNavigationTab

      public void addNavigationTab(String title, NavigationTab tab)
      Add a new NavigationTab to this NavigationView with a certain title. This allows you to create your own NavigationTab and add it to the NavigationView.
      Specified by:
      addNavigationTab in interface NavigationView
      Parameters:
      title - Title the navigation tab is to have
      tab - NavigationTab to add to the navigation view.
      Since:
      7.0
    • getNavigationTab

      public NavigationTab getNavigationTab(int index)
      Returns the navigation tab at the specified index - the index is 0-based and is determined by when the navigation tabs were added to the navigation view. The maximum allowed index is getNavigationTabsCount()-1.
      Specified by:
      getNavigationTab in interface NavigationView
      Parameters:
      index - Index of NavigationTab to return, 0-based
      Returns:
      NavigationTab at this index
      Since:
      7.0
    • removeNavigationTab

      public void removeNavigationTab(int index)
      Removes the navigation tab at the specified index and causes the navigation view to be refreshed without this navigation tab. The maximum allowed index is getNavigationTabsCount()-1.
      Specified by:
      removeNavigationTab in interface NavigationView
      Parameters:
      index - Index of navigation tab to remove
      Since:
      7.0
    • getNavigationTabsCount

      public int getNavigationTabsCount()
      Get the amount of navigation tabs in this navigation view - this is also one higher than the allowed index of any navigation tab. That is, to iterate through all navigation tabs, example code would be:

      int count = getNavigationTabsCount();
      for (int i=0; i < count; i++) {
        NavigationTab tab = getNavigationTab(i);
        ...
      }

      Specified by:
      getNavigationTabsCount in interface NavigationView
      Returns:
      The amount of navigation tabs in the navigation view.
      Since:
      7.0
    • isVisible

      public boolean isVisible()
      Returns whether this navigation view is set to be visible or not
      Specified by:
      isVisible in interface NavigationView
      Overrides:
      isVisible in class Component
      Returns:
      Whether this navigation view is set to be visible or not
      Since:
      7.0
    • setVisible

      public void setVisible(boolean visible)
      Shows or hides this navigation view.
      Specified by:
      setVisible in interface NavigationView
      Overrides:
      setVisible in class JComponent
      Parameters:
      visible - Show this navigation view or not
      Since:
      7.0
    • getComponent

      public Component getComponent()
      All public graphical components of the viewer must implement this method, which returns the actual AWT component so that it can be added to containers, etc.
      For example, if you have a "ReportViewer" and would like to add it to your own JFrame, simply call: myFrame.add(viewer.getComponent())
      Specified by:
      getComponent in interface ViewerComponent
      Returns:
      Actual AWT component of this object.
      Since:
      7.0
    • getNavigationTabIndex

      public int getNavigationTabIndex(String tab_group_tree)
      Returns the NavigationTab index of the first found NavigationTab with the given name, or -1 if none is found with this name. See the constants for examples to use to retrieve the search or group views
      Specified by:
      getNavigationTabIndex in interface NavigationView
      Parameters:
      tab_group_tree - Name of NavigationTab for which the index is to be returned.
      Returns:
      NavigationTab's index
      Since:
      7.0
      See Also:
      • GroupView.TAB_GROUP_TREE
      • SearchView.TAB_SEARCH
    • showNavigationTab

      public void showNavigationTab(int tabIndex)
      Causes the navigation tab at the given index to be selected and shown for this navigation view. The index for any navigation tab can be retrieved using the method getNavigationTabIndex(String).
      Specified by:
      showNavigationTab in interface NavigationView
      Parameters:
      tabIndex - Index of navigation tab to select and display.
      Since:
      7.0