⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 evaluationresultspanel.java

📁 检查Java程序漏洞
💻 JAVA
字号:
package net.sourceforge.pmd.util.viewer.gui;

import net.sourceforge.pmd.ast.SimpleNode;
import net.sourceforge.pmd.util.viewer.model.ViewerModel;
import net.sourceforge.pmd.util.viewer.model.ViewerModelEvent;
import net.sourceforge.pmd.util.viewer.model.ViewerModelListener;

import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.awt.*;
import java.util.Vector;


/**
 * A panel showing XPath expression evaluation results
 *
 * @author Boris Gruschko ( boris at gruschko.org )
 * @version $Id: EvaluationResultsPanel.java,v 1.3 2004/04/15 18:21:58 tomcopeland Exp $
 */
public class EvaluationResultsPanel
  extends JPanel
  implements ViewerModelListener
{
  private ViewerModel model;
  private JList       list;

  /**
   * constructs the panel
   *
   * @param model model to refer to
   */
  public EvaluationResultsPanel( ViewerModel model )
  {
    super( new BorderLayout(  ) );

    this.model = model;

    init(  );
  }

  private void init(  )
  {
    model.addViewerModelListener( this );

    list = new JList(  );
    list.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );

    list.addListSelectionListener(
      new ListSelectionListener(  )
      {
        public void valueChanged( ListSelectionEvent e )
        {
          if ( list.getSelectedValue(  ) != null )
          {
            model.selectNode(
              (SimpleNode)list.getSelectedValue(  ), EvaluationResultsPanel.this );
          }
        }
      } );

    add( new JScrollPane( list ), BorderLayout.CENTER );
  }

  /**
   * @see org.gruschko.pmd.viewer.model.ViewerModelListener#viewerModelChanged(org.gruschko.pmd.viewer.model.ViewerModelEvent)
   */
  public void viewerModelChanged( ViewerModelEvent e )
  {
    switch ( e.getReason(  ) )
    {
      case ViewerModelEvent.PATH_EXPRESSION_EVALUATED :

        if ( e.getSource(  ) != this )
        {
          list.setListData( new Vector( model.getLastEvaluationResults(  ) ) );
        }

        break;

      case ViewerModelEvent.CODE_RECOMPILED :
        list.setListData( new Vector( 0 ) );

        break;
    }
  }
}


/*
 * $Log: EvaluationResultsPanel.java,v $ * Revision 1.3  2004/04/15 18:21:58  tomcopeland * Cleaned up imports with new version of IDEA; fixed some deprecated Ant junx *
 * Revision 1.2  2003/09/23 20:51:06  tomcopeland
 * Cleaned up imports
 *
 * Revision 1.1  2003/09/23 20:32:42  tomcopeland
 * Added Boris Gruschko's new AST/XPath viewer
 *
 * Revision 1.1  2003/09/24 01:33:03  bgr
 * moved to a new package
 *
 * Revision 1.1  2003/09/24 00:40:35  bgr
 * evaluation results browsing added
 *
 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -