public void actionPerformed(ActionEvent ae) {
						String sName = jTfName.getText();
						if (sName.length() <= 0) {
							JOptionPane.showMessageDialog(null, "Name should have at least one character");
							return;
						}
						int nCard = new Integer(jTfCard.getText()).intValue();
						if (nCard <= 1) {
							JOptionPane.showMessageDialog(null, "Cardinality should be larger than 1");
							return;
						}
						try {
							if (m_X < Integer.MAX_VALUE) {
								m_BayesNet.addNode(sName, nCard, m_X, m_Y);
							} else {
								m_BayesNet.addNode(sName, nCard);
							}
						    m_jStatusBar.setText(m_BayesNet.lastActionMsg());
							a_undo.setEnabled(true);
							a_redo.setEnabled(false);
							//GraphNode n = new GraphNode("id" + m_nodes.size(), sName);
							//n.probs = m_BayesNet.getDistribution(sName);
							//n.outcomes = m_BayesNet.getValues(sName);
							//n.x = 100 + m_nodes.size() * 10;
							//n.y = 100 + m_nodes.size() * 10;
							//m_nodes.addElement(n);
						} catch (Exception e) {
							e.printStackTrace();
						}
						repaint();
						dlg.setVisible(false);
					}