<commit_before>
package edu.duke.cabig.catrip.gui.panels;

import java.awt.Color;
import java.awt.Component;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Vector;
import java.util.regex.Pattern;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableModel;

import edu.duke.cabig.catrip.gui.common.AttributeBean;
import edu.duke.cabig.catrip.gui.common.ClassBean;
import edu.duke.cabig.catrip.gui.components.CPanel;
import edu.duke.cabig.catrip.gui.querysharing.HtmlDemo;
import edu.duke.cabig.catrip.gui.util.GUIConstants;
import edu.duke.cabig.catrip.gui.util.LargeTextDialog;
import edu.duke.cabig.catrip.gui.util.TableSorter;

/**
 * Out Panel to show the results from the DCQL Query execution.
 * It has a dynamic Table Model, where the Table columns are shown based on the Target object selected on the Graph.
 *
 * @author  <NAME>
 */
public class OutputPanel extends CPanel {
    private final boolean SORT_ON = false;
    /** Creates new form OutputPanel */
    public OutputPanel() {
        initComponents();
        if (SORT_ON){
        //Set up tool tips for column headers.
        getOutputTable().getTableHeader().setToolTipText(
                "Click to specify sorting; Control-Click to specify secondary sorting");
        }
        outputTable.addMouseListener(new java.awt.event.MouseListener() {
        	public void mouseClicked(java.awt.event.MouseEvent e) {
        		if (e.getClickCount() == 2)  {
        		String columnName = outputTable.getColumnName(outputTable.getSelectedColumn());
        		String strValue = (String)outputTable.getValueAt(outputTable.getSelectedRow(), outputTable.getSelectedColumn());
        		boolean bigText = (strValue.length() > GUIConstants.LARGE_TEXT_LIMIT)?true:false;
        		if (bigText){
	        		LargeTextDialog  f = new LargeTextDialog(columnName, strValue);
	        		//JFrame  f = HtmlDemo.createAndShowGUI(columnName, strValue);
	        		f.setLocationRelativeTo(null); 
	        		// f.setLocation(e.getX(), e.getY());
	        	    f.setVisible(true);
        		}
        		}
        	}
        	public void mousePressed(java.awt.event.MouseEvent e) {
        	}
        	public void mouseReleased(java.awt.event.MouseEvent e) {
        	}
        	public void mouseEntered(java.awt.event.MouseEvent e) {
        	}<commit_msg>*** empty log message ***<commit_after>
package edu.duke.cabig.catrip.gui.panels;

import java.awt.Color;
import java.awt.Component;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Vector;
import java.util.regex.Pattern;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableModel;

import edu.duke.cabig.catrip.gui.common.AttributeBean;
import edu.duke.cabig.catrip.gui.common.ClassBean;
import edu.duke.cabig.catrip.gui.components.CPanel;
import edu.duke.cabig.catrip.gui.util.GUIConstants;
import edu.duke.cabig.catrip.gui.util.LargeTextDialog;
import edu.duke.cabig.catrip.gui.util.TableSorter;

/**
 * Out Panel to show the results from the DCQL Query execution.
 * It has a dynamic Table Model, where the Table columns are shown based on the Target object selected on the Graph.
 *
 * @author  <NAME>
 */
public class OutputPanel extends CPanel {
    private final boolean SORT_ON = false;
    /** Creates new form OutputPanel */
    public OutputPanel() {
        initComponents();
        if (SORT_ON){
        //Set up tool tips for column headers.
        getOutputTable().getTableHeader().setToolTipText(
                "Click to specify sorting; Control-Click to specify secondary sorting");
        }
        outputTable.addMouseListener(new java.awt.event.MouseListener() {
        	public void mouseClicked(java.awt.event.MouseEvent e) {
        		if (e.getClickCount() == 2)  {
        		String columnName = outputTable.getColumnName(outputTable.getSelectedColumn());
        		String strValue = (String)outputTable.getValueAt(outputTable.getSelectedRow(), outputTable.getSelectedColumn());
        		boolean bigText = (strValue.length() > GUIConstants.LARGE_TEXT_LIMIT)?true:false;
        		if (bigText){
	        		LargeTextDialog  f = new LargeTextDialog(columnName, strValue);
	        		f.setLocationRelativeTo(null); 
	        		// f.setLocation(e.getX(), e.getY());
	        	    f.setVisible(true);
        		}
        		}
        	}
        	public void mousePressed(java.awt.event.MouseEvent e) {
        	}
        	public void mouseReleased(java.awt.event.MouseEvent e) {
        	}
        	public void mouseEntered(java.awt.event.MouseEvent e) {
        	}
{'fraction_non_alphanumeric': 0.10627177700348432, 'fraction_numerical': 0.00038714672861014324, 'mean_word_length': 3.2387202625102542, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5567427', 'n_tokens_mistral': 1629, 'n_tokens_neox': 1613, 'n_words': 334}