All Downloads are FREE. Search and download functionalities are using the official Maven repository.

devices.7.139.49.source-code.NI6683RECSetup Maven / Gradle / Ivy

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.StringTokenizer;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
/**
 *
 * @author taliercio
 */
public class NI6683RECSetup extends DeviceSetup
{
	private static final long serialVersionUID = 1L;

	/**
	 * Creates new form NI6683REC
	 */
	public NI6683RECSetup()
	{
		initComponents();
	}

	/**
	 * This method is called from within the constructor to initialize the form.
	 * WARNING: Do NOT modify this code. The content of this method is always
	 * regenerated by the Form Editor.
	 */
	// //GEN-BEGIN:initComponents
	private void initComponents()
	{
		deviceButtons1 = new DeviceButtons();
		jPanel2 = new javax.swing.JPanel();
		jPanel3 = new javax.swing.JPanel();
		deviceField2 = new DeviceField();
		deviceField4 = new DeviceField();
		deviceDispatch1 = new DeviceDispatch();
		jPanel1 = new javax.swing.JPanel();
		deviceChoice4 = new DeviceChoice();
		deviceChoice2 = new DeviceChoice();
		deviceField3 = new DeviceField();
		deviceChoice3 = new DeviceChoice();
		jTabbedPane1 = new javax.swing.JTabbedPane();
		jPanel4 = new javax.swing.JPanel();
		deviceChannel1 = new DeviceChannel();
		jPanel5 = new javax.swing.JPanel();
		deviceChoice6 = new DeviceChoice();
		deviceChoice7 = new DeviceChoice();
		deviceField1 = new DeviceField();
		jScrollPane2 = new javax.swing.JScrollPane();
		jTable2 = new javax.swing.JTable();
		jPanel6 = new javax.swing.JPanel();
		deviceChannel2 = new DeviceChannel();
		jPanel7 = new javax.swing.JPanel();
		deviceChoice8 = new DeviceChoice();
		deviceChoice9 = new DeviceChoice();
		deviceField5 = new DeviceField();
		jScrollPane3 = new javax.swing.JScrollPane();
		jTable3 = new javax.swing.JTable();
		jPanel8 = new javax.swing.JPanel();
		deviceChannel3 = new DeviceChannel();
		jPanel9 = new javax.swing.JPanel();
		deviceChoice10 = new DeviceChoice();
		deviceChoice11 = new DeviceChoice();
		deviceField6 = new DeviceField();
		jScrollPane4 = new javax.swing.JScrollPane();
		jTable4 = new javax.swing.JTable();
		jPanel10 = new javax.swing.JPanel();
		deviceChannel4 = new DeviceChannel();
		jPanel11 = new javax.swing.JPanel();
		deviceChoice12 = new DeviceChoice();
		deviceChoice13 = new DeviceChoice();
		deviceField7 = new DeviceField();
		jScrollPane5 = new javax.swing.JScrollPane();
		jTable5 = new javax.swing.JTable();
		jPanel12 = new javax.swing.JPanel();
		deviceChannel5 = new DeviceChannel();
		jPanel13 = new javax.swing.JPanel();
		deviceChoice14 = new DeviceChoice();
		deviceChoice15 = new DeviceChoice();
		deviceField8 = new DeviceField();
		jScrollPane6 = new javax.swing.JScrollPane();
		jTable6 = new javax.swing.JTable();
		jPanel14 = new javax.swing.JPanel();
		deviceChannel6 = new DeviceChannel();
		jPanel15 = new javax.swing.JPanel();
		deviceChoice16 = new DeviceChoice();
		deviceChoice17 = new DeviceChoice();
		deviceField9 = new DeviceField();
		jScrollPane7 = new javax.swing.JScrollPane();
		jTable7 = new javax.swing.JTable();
		jPanel16 = new javax.swing.JPanel();
		deviceChannel7 = new DeviceChannel();
		jPanel17 = new javax.swing.JPanel();
		deviceChoice18 = new DeviceChoice();
		deviceChoice19 = new DeviceChoice();
		deviceField10 = new DeviceField();
		jScrollPane8 = new javax.swing.JScrollPane();
		jTable8 = new javax.swing.JTable();
		jPanel18 = new javax.swing.JPanel();
		deviceChannel8 = new DeviceChannel();
		jPanel19 = new javax.swing.JPanel();
		deviceChoice20 = new DeviceChoice();
		deviceChoice21 = new DeviceChoice();
		deviceField11 = new DeviceField();
		jScrollPane9 = new javax.swing.JScrollPane();
		jTable9 = new javax.swing.JTable();
		setDeviceProvider("schmivl.nbtf");
		setDeviceTitle("National Instruments 6638 Timing Module Event Recorder");
		setDeviceType("NI6683REC");
		setHeight(500);
		setWidth(850);
		deviceButtons1.setMethods(new String[]
		{ "init start stop" });
		getContentPane().add(deviceButtons1, java.awt.BorderLayout.PAGE_END);
		jPanel2.setLayout(new java.awt.GridLayout(2, 0));
		deviceField2.setIdentifier("");
		deviceField2.setLabelString("Dev.ID:");
		deviceField2.setOffsetNid(3);
		jPanel3.add(deviceField2);
		deviceField4.setIdentifier("");
		deviceField4.setLabelString("Comment:");
		deviceField4.setNumCols(30);
		deviceField4.setOffsetNid(1);
		deviceField4.setTextOnly(true);
		jPanel3.add(deviceField4);
		jPanel3.add(deviceDispatch1);
		jPanel2.add(jPanel3);
		deviceChoice4.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice4.setIdentifier("");
		deviceChoice4.setLabelString("Pulse Terminal:");
		deviceChoice4.setOffsetNid(8);
		deviceChoice4.setUpdateIdentifier("");
		jPanel1.add(deviceChoice4);
		deviceChoice2.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice2.setIdentifier("");
		deviceChoice2.setLabelString("Edge:");
		deviceChoice2.setOffsetNid(9);
		deviceChoice2.setUpdateIdentifier("");
		jPanel1.add(deviceChoice2);
		deviceField3.setIdentifier("");
		deviceField3.setLabelString("Relative Time:");
		deviceField3.setNumCols(20);
		deviceField3.setOffsetNid(7);
		jPanel1.add(deviceField3);
		deviceChoice3.setChoiceItems(new String[]
		{ "PXI6682", "PCI1588", "PXI6683 ", "PXI6683H" });
		deviceChoice3.setIdentifier("");
		deviceChoice3.setLabelString("Dev. Type:");
		deviceChoice3.setOffsetNid(2);
		deviceChoice3.setUpdateIdentifier("");
		jPanel1.add(deviceChoice3);
		jPanel2.add(jPanel1);
		getContentPane().add(jPanel2, java.awt.BorderLayout.NORTH);
		jPanel4.setLayout(new java.awt.BorderLayout());
		deviceChannel1.setLabelString("");
		deviceChannel1.setOffsetNid(13);
		deviceChannel1.setShowVal("");
		deviceChannel1.setUpdateIdentifier("");
		deviceChannel1.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice6.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice6.setIdentifier("");
		deviceChoice6.setLabelString("Terminal:");
		deviceChoice6.setOffsetNid(15);
		deviceChoice6.setUpdateIdentifier("");
		jPanel5.add(deviceChoice6);
		deviceChoice7.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice7.setIdentifier("");
		deviceChoice7.setLabelString("Edge:");
		deviceChoice7.setOffsetNid(16);
		deviceChoice7.setUpdateIdentifier("");
		jPanel5.add(deviceChoice7);
		deviceField1.setIdentifier("");
		deviceField1.setLabelString("Comment:");
		deviceField1.setNumCols(40);
		deviceField1.setOffsetNid(14);
		deviceField1.setTextOnly(true);
		jPanel5.add(deviceField1);
		deviceChannel1.getContainer().add(jPanel5, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable2.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable2.setModel(new MyTableModel());
		jTable2.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable2ComponentShown(evt);
			}
		});
		jTable2.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable2PropertyChange(evt);
			}
		});
		jScrollPane2.setViewportView(jTable2);
		deviceChannel1.getContainer().add(jScrollPane2, java.awt.BorderLayout.CENTER);
		jPanel4.add(deviceChannel1, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 1", jPanel4);
		jPanel6.setLayout(new java.awt.BorderLayout());
		deviceChannel2.setLabelString("");
		deviceChannel2.setOffsetNid(20);
		deviceChannel2.setShowVal("");
		deviceChannel2.setUpdateIdentifier("");
		deviceChannel2.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice8.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice8.setIdentifier("");
		deviceChoice8.setLabelString("Terminal:");
		deviceChoice8.setOffsetNid(22);
		deviceChoice8.setUpdateIdentifier("");
		jPanel7.add(deviceChoice8);
		deviceChoice9.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice9.setIdentifier("");
		deviceChoice9.setLabelString("Edge:");
		deviceChoice9.setOffsetNid(23);
		deviceChoice9.setUpdateIdentifier("");
		jPanel7.add(deviceChoice9);
		deviceField5.setIdentifier("");
		deviceField5.setLabelString("Comment:");
		deviceField5.setNumCols(40);
		deviceField5.setOffsetNid(21);
		deviceField5.setTextOnly(true);
		jPanel7.add(deviceField5);
		deviceChannel2.getContainer().add(jPanel7, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable3.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable3.setModel(new MyTableModel());
		jTable3.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable3ComponentShown(evt);
			}
		});
		jTable3.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable3PropertyChange(evt);
			}
		});
		jScrollPane3.setViewportView(jTable3);
		deviceChannel2.getContainer().add(jScrollPane3, java.awt.BorderLayout.CENTER);
		jPanel6.add(deviceChannel2, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 2", jPanel6);
		jPanel8.setLayout(new java.awt.BorderLayout());
		deviceChannel3.setLabelString("");
		deviceChannel3.setOffsetNid(27);
		deviceChannel3.setShowVal("");
		deviceChannel3.setUpdateIdentifier("");
		deviceChannel3.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice10.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice10.setIdentifier("");
		deviceChoice10.setLabelString("Terminal:");
		deviceChoice10.setOffsetNid(29);
		deviceChoice10.setUpdateIdentifier("");
		jPanel9.add(deviceChoice10);
		deviceChoice11.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice11.setIdentifier("");
		deviceChoice11.setLabelString("Edge:");
		deviceChoice11.setOffsetNid(30);
		deviceChoice11.setUpdateIdentifier("");
		jPanel9.add(deviceChoice11);
		deviceField6.setIdentifier("");
		deviceField6.setLabelString("Comment:");
		deviceField6.setNumCols(40);
		deviceField6.setOffsetNid(28);
		deviceField6.setTextOnly(true);
		jPanel9.add(deviceField6);
		deviceChannel3.getContainer().add(jPanel9, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable4.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable4.setModel(new MyTableModel());
		jTable4.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable4ComponentShown(evt);
			}
		});
		jTable4.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable4PropertyChange(evt);
			}
		});
		jScrollPane4.setViewportView(jTable4);
		deviceChannel3.getContainer().add(jScrollPane4, java.awt.BorderLayout.CENTER);
		jPanel8.add(deviceChannel3, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 3", jPanel8);
		jPanel10.setLayout(new java.awt.BorderLayout());
		deviceChannel4.setLabelString("");
		deviceChannel4.setOffsetNid(34);
		deviceChannel4.setShowVal("");
		deviceChannel4.setUpdateIdentifier("");
		deviceChannel4.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice12.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice12.setIdentifier("");
		deviceChoice12.setLabelString("Terminal:");
		deviceChoice12.setOffsetNid(36);
		deviceChoice12.setUpdateIdentifier("");
		jPanel11.add(deviceChoice12);
		deviceChoice13.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice13.setIdentifier("");
		deviceChoice13.setLabelString("Edge:");
		deviceChoice13.setOffsetNid(37);
		deviceChoice13.setUpdateIdentifier("");
		jPanel11.add(deviceChoice13);
		deviceField7.setIdentifier("");
		deviceField7.setLabelString("Comment:");
		deviceField7.setNumCols(40);
		deviceField7.setOffsetNid(35);
		deviceField7.setTextOnly(true);
		jPanel11.add(deviceField7);
		deviceChannel4.getContainer().add(jPanel11, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable5.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable5.setModel(new MyTableModel());
		jTable5.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable5ComponentShown(evt);
			}
		});
		jTable5.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable5PropertyChange(evt);
			}
		});
		jScrollPane5.setViewportView(jTable5);
		deviceChannel4.getContainer().add(jScrollPane5, java.awt.BorderLayout.CENTER);
		jPanel10.add(deviceChannel4, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 4", jPanel10);
		jPanel12.setLayout(new java.awt.BorderLayout());
		deviceChannel5.setLabelString("");
		deviceChannel5.setOffsetNid(41);
		deviceChannel5.setShowVal("");
		deviceChannel5.setUpdateIdentifier("");
		deviceChannel5.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice14.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice14.setIdentifier("");
		deviceChoice14.setLabelString("Terminal:");
		deviceChoice14.setOffsetNid(43);
		deviceChoice14.setUpdateIdentifier("");
		jPanel13.add(deviceChoice14);
		deviceChoice15.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice15.setIdentifier("");
		deviceChoice15.setLabelString("Edge:");
		deviceChoice15.setOffsetNid(44);
		deviceChoice15.setUpdateIdentifier("");
		jPanel13.add(deviceChoice15);
		deviceField8.setIdentifier("");
		deviceField8.setLabelString("Comment:");
		deviceField8.setNumCols(40);
		deviceField8.setOffsetNid(42);
		deviceField8.setTextOnly(true);
		jPanel13.add(deviceField8);
		deviceChannel5.getContainer().add(jPanel13, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable6.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable6.setModel(new MyTableModel());
		jTable6.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable6ComponentShown(evt);
			}
		});
		jTable6.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable6PropertyChange(evt);
			}
		});
		jScrollPane6.setViewportView(jTable6);
		deviceChannel5.getContainer().add(jScrollPane6, java.awt.BorderLayout.CENTER);
		jPanel12.add(deviceChannel5, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 5", jPanel12);
		jPanel14.setLayout(new java.awt.BorderLayout());
		deviceChannel6.setLabelString("");
		deviceChannel6.setOffsetNid(48);
		deviceChannel6.setShowVal("");
		deviceChannel6.setUpdateIdentifier("");
		deviceChannel6.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice16.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice16.setIdentifier("");
		deviceChoice16.setLabelString("Terminal:");
		deviceChoice16.setOffsetNid(50);
		deviceChoice16.setUpdateIdentifier("");
		jPanel15.add(deviceChoice16);
		deviceChoice17.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice17.setIdentifier("");
		deviceChoice17.setLabelString("Edge:");
		deviceChoice17.setOffsetNid(51);
		deviceChoice17.setUpdateIdentifier("");
		jPanel15.add(deviceChoice17);
		deviceField9.setIdentifier("");
		deviceField9.setLabelString("Comment:");
		deviceField9.setNumCols(40);
		deviceField9.setOffsetNid(49);
		deviceField9.setTextOnly(true);
		jPanel15.add(deviceField9);
		deviceChannel6.getContainer().add(jPanel15, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable7.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable7.setModel(new MyTableModel());
		jTable7.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable7ComponentShown(evt);
			}
		});
		jTable7.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable7PropertyChange(evt);
			}
		});
		jScrollPane7.setViewportView(jTable7);
		deviceChannel6.getContainer().add(jScrollPane7, java.awt.BorderLayout.CENTER);
		jPanel14.add(deviceChannel6, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 6", jPanel14);
		jPanel16.setLayout(new java.awt.BorderLayout());
		deviceChannel7.setLabelString("");
		deviceChannel7.setOffsetNid(55);
		deviceChannel7.setShowVal("");
		deviceChannel7.setUpdateIdentifier("");
		deviceChannel7.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice18.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice18.setIdentifier("");
		deviceChoice18.setLabelString("Terminal:");
		deviceChoice18.setOffsetNid(57);
		deviceChoice18.setUpdateIdentifier("");
		jPanel17.add(deviceChoice18);
		deviceChoice19.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice19.setIdentifier("");
		deviceChoice19.setLabelString("Edge:");
		deviceChoice19.setOffsetNid(58);
		deviceChoice19.setUpdateIdentifier("");
		jPanel17.add(deviceChoice19);
		deviceField10.setIdentifier("");
		deviceField10.setLabelString("Comment:");
		deviceField10.setNumCols(40);
		deviceField10.setOffsetNid(56);
		deviceField10.setTextOnly(true);
		jPanel17.add(deviceField10);
		deviceChannel7.getContainer().add(jPanel17, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable8.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable8.setModel(new MyTableModel());
		jTable8.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable8ComponentShown(evt);
			}
		});
		jTable8.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable8PropertyChange(evt);
			}
		});
		jScrollPane8.setViewportView(jTable8);
		deviceChannel7.getContainer().add(jScrollPane8, java.awt.BorderLayout.CENTER);
		jPanel16.add(deviceChannel7, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 7", jPanel16);
		jPanel18.setLayout(new java.awt.BorderLayout());
		deviceChannel8.setLabelString("");
		deviceChannel8.setOffsetNid(62);
		deviceChannel8.setShowVal("");
		deviceChannel8.setUpdateIdentifier("");
		deviceChannel8.getContainer().setLayout(new java.awt.BorderLayout());
		deviceChoice20.setChoiceItems(new String[]
		{ "PFI0", "PFI1", "PFI2", "TRIG0", "TRIG1", "TRIG2", "TRIG3", "TRIG4", "TRIG5", "TRIG6", "TRIG7" });
		deviceChoice20.setIdentifier("");
		deviceChoice20.setLabelString("Terminal:");
		deviceChoice20.setOffsetNid(64);
		deviceChoice20.setUpdateIdentifier("");
		jPanel19.add(deviceChoice20);
		deviceChoice21.setChoiceItems(new String[]
		{ "RISING", "FALLING", "ANY" });
		deviceChoice21.setIdentifier("");
		deviceChoice21.setLabelString("Edge:");
		deviceChoice21.setOffsetNid(65);
		deviceChoice21.setUpdateIdentifier("");
		jPanel19.add(deviceChoice21);
		deviceField11.setIdentifier("");
		deviceField11.setLabelString("Comment:");
		deviceField11.setNumCols(40);
		deviceField11.setOffsetNid(63);
		deviceField11.setTextOnly(true);
		jPanel19.add(deviceField11);
		deviceChannel8.getContainer().add(jPanel19, java.awt.BorderLayout.PAGE_START);
		/*
		 * jTable9.setModel(new javax.swing.table.DefaultTableModel( new Object [][] {
		 * {null, null, null}, {null, null, null}, {null, null, null}, {null, null,
		 * null} }, new String [] { "Event n.", "Absolute Time", "Relative Time" }) );
		 */
		jTable9.setModel(new MyTableModel());
		jTable9.addComponentListener(new java.awt.event.ComponentAdapter()
		{
			@Override
			public void componentShown(java.awt.event.ComponentEvent evt)
			{
				jTable9ComponentShown(evt);
			}
		});
		jTable9.addPropertyChangeListener(new java.beans.PropertyChangeListener()
		{
			@Override
			public void propertyChange(java.beans.PropertyChangeEvent evt)
			{
				jTable9PropertyChange(evt);
			}
		});
		jScrollPane9.setViewportView(jTable9);
		deviceChannel8.getContainer().add(jScrollPane9, java.awt.BorderLayout.CENTER);
		jPanel18.add(deviceChannel8, java.awt.BorderLayout.CENTER);
		jTabbedPane1.addTab("Trig 8", jPanel18);
		getContentPane().add(jTabbedPane1, java.awt.BorderLayout.CENTER);
	}// //GEN-END:initComponents

	private void updateTable(javax.swing.JTable tb, int trigIdx)
	{
		final MyTableModel mtbm = (MyTableModel) (tb.getModel());
		mtbm.initTable(trigIdx);
		if (tb.getColumnModel().getColumnCount() > 0)
		{
			tb.getColumnModel().getColumn(0).setMinWidth(70);
			tb.getColumnModel().getColumn(0).setPreferredWidth(70);
			tb.getColumnModel().getColumn(0).setMaxWidth(70);
		}
	}

	private void jTable2PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable2PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		/*
		 * MyTableModel mtbm = (MyTableModel)jTable2.getModel();
		 *
		 * mtbm.initTable(0);
		 *
		 * if (jTable2.getColumnModel().getColumnCount() > 0) {
		 * jTable2.getColumnModel().getColumn(0).setMinWidth(70);
		 * jTable2.getColumnModel().getColumn(0).setPreferredWidth(70);
		 * jTable2.getColumnModel().getColumn(0).setMaxWidth(70); }
		 */
		updateTable((javax.swing.JTable) evt.getSource(), 0);
		// System.out.println("subtree " + subtree + " evt.getPropertyName() "+
		// evt.getPropertyName());
	}// GEN-LAST:event_jTable2PropertyChange

	private void jTable2ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable2ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable2ComponentShown

	private void jTable3ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable3ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable3ComponentShown

	private void jTable3PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable3PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 1);
	}// GEN-LAST:event_jTable3PropertyChange

	private void jTable4ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable4ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable4ComponentShown

	private void jTable4PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable4PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 2);
	}// GEN-LAST:event_jTable4PropertyChange

	private void jTable5ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable5ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable5ComponentShown

	private void jTable5PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable5PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 3);
	}// GEN-LAST:event_jTable5PropertyChange

	private void jTable6ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable6ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable6ComponentShown

	private void jTable6PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable6PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 4);
	}// GEN-LAST:event_jTable6PropertyChange

	private void jTable7ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable7ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable7ComponentShown

	private void jTable7PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable7PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 5);
	}// GEN-LAST:event_jTable7PropertyChange

	private void jTable8ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable8ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable8ComponentShown

	private void jTable8PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable8PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 6);
	}// GEN-LAST:event_jTable8PropertyChange

	private void jTable9ComponentShown(java.awt.event.ComponentEvent evt)
	{// GEN-FIRST:event_jTable9ComponentShown
		// TODO add your handling code here:
	}// GEN-LAST:event_jTable9ComponentShown

	private void jTable9PropertyChange(java.beans.PropertyChangeEvent evt)
	{// GEN-FIRST:event_jTable9PropertyChange
		// TODO add your handling code here:
		if (evt.getPropertyName().equals("tableCellEditor"))
			return;
		updateTable((javax.swing.JTable) evt.getSource(), 7);
	}// GEN-LAST:event_jTable9PropertyChange

	// Variables declaration - do not modify//GEN-BEGIN:variables
	private DeviceButtons deviceButtons1;
	private DeviceChannel deviceChannel1;
	private DeviceChannel deviceChannel2;
	private DeviceChannel deviceChannel3;
	private DeviceChannel deviceChannel4;
	private DeviceChannel deviceChannel5;
	private DeviceChannel deviceChannel6;
	private DeviceChannel deviceChannel7;
	private DeviceChannel deviceChannel8;
	private DeviceChoice deviceChoice10;
	private DeviceChoice deviceChoice11;
	private DeviceChoice deviceChoice12;
	private DeviceChoice deviceChoice13;
	private DeviceChoice deviceChoice14;
	private DeviceChoice deviceChoice15;
	private DeviceChoice deviceChoice16;
	private DeviceChoice deviceChoice17;
	private DeviceChoice deviceChoice18;
	private DeviceChoice deviceChoice19;
	private DeviceChoice deviceChoice2;
	private DeviceChoice deviceChoice20;
	private DeviceChoice deviceChoice21;
	private DeviceChoice deviceChoice3;
	private DeviceChoice deviceChoice4;
	private DeviceChoice deviceChoice6;
	private DeviceChoice deviceChoice7;
	private DeviceChoice deviceChoice8;
	private DeviceChoice deviceChoice9;
	private DeviceDispatch deviceDispatch1;
	private DeviceField deviceField1;
	private DeviceField deviceField10;
	private DeviceField deviceField11;
	private DeviceField deviceField2;
	private DeviceField deviceField3;
	private DeviceField deviceField4;
	private DeviceField deviceField5;
	private DeviceField deviceField6;
	private DeviceField deviceField7;
	private DeviceField deviceField8;
	private DeviceField deviceField9;
	private javax.swing.JPanel jPanel1;
	private javax.swing.JPanel jPanel10;
	private javax.swing.JPanel jPanel11;
	private javax.swing.JPanel jPanel12;
	private javax.swing.JPanel jPanel13;
	private javax.swing.JPanel jPanel14;
	private javax.swing.JPanel jPanel15;
	private javax.swing.JPanel jPanel16;
	private javax.swing.JPanel jPanel17;
	private javax.swing.JPanel jPanel18;
	private javax.swing.JPanel jPanel19;
	private javax.swing.JPanel jPanel2;
	private javax.swing.JPanel jPanel3;
	private javax.swing.JPanel jPanel4;
	private javax.swing.JPanel jPanel5;
	private javax.swing.JPanel jPanel6;
	private javax.swing.JPanel jPanel7;
	private javax.swing.JPanel jPanel8;
	private javax.swing.JPanel jPanel9;
	private javax.swing.JScrollPane jScrollPane2;
	private javax.swing.JScrollPane jScrollPane3;
	private javax.swing.JScrollPane jScrollPane4;
	private javax.swing.JScrollPane jScrollPane5;
	private javax.swing.JScrollPane jScrollPane6;
	private javax.swing.JScrollPane jScrollPane7;
	private javax.swing.JScrollPane jScrollPane8;
	private javax.swing.JScrollPane jScrollPane9;
	private javax.swing.JTabbedPane jTabbedPane1;
	private javax.swing.JTable jTable2;
	private javax.swing.JTable jTable3;
	private javax.swing.JTable jTable4;
	private javax.swing.JTable jTable5;
	private javax.swing.JTable jTable6;
	private javax.swing.JTable jTable7;
	private javax.swing.JTable jTable8;
	private javax.swing.JTable jTable9;
	// End of variables declaration//GEN-END:variables

	class MyTableModel extends javax.swing.table.AbstractTableModel
	{
		/**
		 *
		 */
		private static final long serialVersionUID = 1L;
		private final boolean DEBUG = true;
		private final String[] columnNames =
		{ "Event n.", "Absolute Time", "Relative Time" };
		private Object data[][];
		private final int TRIGGER_INC = 7;
		private final int TRIGGER_1 = 12;
		private final int NI6683REC_TIME = 7;
		private final int NI6683REC_UTC_NS = 6;

		MyTableModel()
		{
			super();
		}

		public void initTable(int trigIdx)
		{
			final int currBaseNid = baseNid + TRIGGER_1 + TRIGGER_INC * trigIdx;
			final int nidTimes = currBaseNid + NI6683REC_TIME;
			final int nidUTC = currBaseNid + NI6683REC_UTC_NS;
			// System.out.println("base Nid "+baseNid+" subtree "+subtree);
			try
			{
				// NodeInfo ni = subtree.getInfo(nidTimes, Tree.context);
				// System.out.println(ni.getPath());
				final String timeStr = subtree.getString(subtree.getDataExpr(nidTimes));
				// System.out.println(ni.getPath()+" "+timeStr);
				// ni = subtree.getInfo(nidUTC, Tree.context);
				// System.out.println(ni.getPath());
				final String utcStr = subtree.getString(subtree.getDataExpr(nidUTC));
				// System.out.println(ni.getPath()+" "+utcStr);
				if (timeStr != null && timeStr.length() != 0 && utcStr != null && utcStr.length() != 0)
				{
					final String s = (timeStr.substring(1, timeStr.length() - 1));
					final StringTokenizer st = new StringTokenizer(s, ",");
					final int numTimes = st.countTokens();
					final String s1 = (utcStr.substring(1, utcStr.length() - 1)).replace("Q", "");
					final StringTokenizer st1 = new StringTokenizer(s1, ",");
					final DateFormat df = new SimpleDateFormat("dd MMM yyyy hh:mm:ss mmm.");
					long UTCdateInMS;
					long UTCdateInNS;
					Date d;
					data = new Object[numTimes][3];
					for (int i = 0; i < numTimes; i++)
					{
						data[i][0] = "" + i;
						data[i][2] = st.nextToken();
						UTCdateInNS = Long.parseLong(st1.nextToken());
						UTCdateInMS = UTCdateInNS / 1000000;
						d = new Date(UTCdateInMS);
						data[i][1] = df.format(d) + (UTCdateInNS % 1000000);
					}
				}
				else
				{
					data = new Object[1][3];
					for (int c = 0; c < 3; c++)
						if (c == 0)
							data[0][c] = "";
						else
							data[0][c] = "No Data";
				}
			}
			catch (final Exception e)
			{
				// System.out.println(e);
				data = new Object[1][3];
				for (int c = 0; c < 3; c++)
					if (c == 0)
						data[0][c] = "";
					else
						data[0][c] = "Error or No Data";
			}
		}

		@Override
		public int getColumnCount()
		{ return columnNames.length; }

		@Override
		public int getRowCount()
		{ return data.length; }

		@Override
		public void setValueAt(Object value, int row, int col)
		{
			data[row][col] = value;
			fireTableCellUpdated(row, col);
		}

		@Override
		public String getColumnName(int col)
		{
			return columnNames[col];
		}

		@Override
		public Object getValueAt(int row, int col)
		{
			return data[row][col];
		}

		@Override
		public Class getColumnClass(int c)
		{
			return getValueAt(0, c).getClass();
		}
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy