public void actionPerformed(ActionEvent evt) {
      Cab2bHyperlink<JPageElement> hyperlink = (Cab2bHyperlink<JPageElement>) evt.getSource();

      String hyperlinkText = hyperlink.getText();
      JPageElement jPageElement = hyperlink.getUserObject();
      PageElement pageElement = jPageElement.getPageElement();

      /* Get the data row corresponding to the clicked element. */
      Vector recordListUserObject = (Vector) pageElement.getUserObject();

      DataRow dataRow = (DataRow) recordListUserObject.get(0);
      IRecord record = (IRecord) recordListUserObject.get(1);

      ViewSearchResultsSimplePanel currentPanel =
          (ViewSearchResultsSimplePanel) m_resultsPanel.getComponent(panelCount);

      /*
       * Refresh the breadcrumb vector, and pass that instance onto a new
       * instance of the breadcrumb panel.
       */
      int currentCount = ++panelCount;

      m_vBreadCrumbs.add(currentCount + "#" + hyperlinkText);
      BreadcrumbPanel breadcrumbPanel =
          new BreadcrumbPanel(getBreadCrumbsAL(), m_vBreadCrumbs, this.searchPanel.viewPanel);
      currentBreadCrumbName = hyperlinkText;

      JXPanel detailsPanel =
          ResultPanelFactory.getSearchResultPanel(
              searchPanel,
              record,
              dataRow,
              currentPanel.getIncomingAssociationCollection(),
              currentPanel.getIntraModelAssociationCollection());

      addBreadCrumbPanel(breadcrumbPanel, "" + currentCount);
      showBreadcrumbPanel("" + currentCount);

      addPanel(detailsPanel, "" + currentCount);
      showPanel("" + currentCount);
    }
 /** Shows a panel represented by a name, by bringing that panel to the top. */
 private void showPanel(String panelName) {
   logger.debug("panel name : " + panelName);
   CardLayout layout = (CardLayout) this.m_resultsPanel.getLayout();
   layout.show(this.m_resultsPanel, panelName);
   int totalCardPanels = m_resultsPanel.getComponentCount();
   /** have to add My Data list summary panel */
   for (int i = 0; i < totalCardPanels; i++) {
     Component comp = m_resultsPanel.getComponent(i);
     if (true == comp.isVisible()) {
       if (comp instanceof ViewSearchResultsSimplePanel) {
         ViewSearchResultsSimplePanel showingPanel =
             (ViewSearchResultsSimplePanel) m_resultsPanel.getComponent(i);
         showingPanel.addDataSummaryPanel();
         break;
       } else if (comp instanceof ResultObjectDetailsPanel) {
         ResultObjectDetailsPanel showingPanel =
             (ResultObjectDetailsPanel) m_resultsPanel.getComponent(i);
         showingPanel.addDataSummaryPanel();
         break;
       }
     }
   }
 }