8
|
1 package treecms.gui;
|
|
2
|
|
3 import java.awt.BorderLayout;
|
|
4 import java.awt.Container;
|
|
5 import java.awt.event.ActionEvent;
|
|
6 import java.awt.event.ActionListener;
|
|
7 import java.awt.event.WindowAdapter;
|
|
8 import java.awt.event.WindowEvent;
|
|
9 import java.nio.ByteBuffer;
|
|
10 import java.util.Map;
|
|
11 import javax.swing.JButton;
|
|
12 import javax.swing.JDialog;
|
|
13 import javax.swing.JFrame;
|
|
14 import javax.swing.JLabel;
|
|
15 import javax.swing.JScrollPane;
|
|
16
|
|
17 class AddChildDialog
|
|
18 {
|
|
19 private JDialog m_dialog;
|
|
20 private AttributeEditorTable m_table;
|
|
21 private JButton m_submit;
|
|
22 private Map<ByteBuffer,ByteBuffer> m_data;
|
|
23 private JFrame m_parent;
|
|
24
|
|
25 public AddChildDialog(JFrame _parent,boolean _modal)
|
|
26 {
|
|
27 m_dialog = new JDialog(_parent,_modal);
|
|
28 m_dialog.setSize(300,200);
|
|
29 m_dialog.setTitle("Add new child");
|
|
30 m_parent = _parent;
|
|
31 m_table = new AttributeEditorTable();
|
|
32 m_submit = new JButton("submit");
|
|
33 m_submit.addActionListener(new ActionListener(){
|
|
34 @Override
|
|
35 public void actionPerformed(ActionEvent _e)
|
|
36 {
|
|
37 m_data = m_table.getAttributeMap();
|
|
38 m_dialog.setVisible(false);
|
|
39 }
|
|
40 });
|
|
41 m_dialog.addWindowListener(new WindowAdapter(){
|
|
42 @Override
|
|
43 public void windowClosing(WindowEvent _e)
|
|
44 {
|
|
45 m_data = null;
|
|
46 }
|
|
47 });
|
|
48
|
|
49 Container cnt = m_dialog.getContentPane();
|
|
50 cnt.setLayout(new BorderLayout());
|
|
51 cnt.add(new JLabel("Attributes"),BorderLayout.NORTH);
|
|
52 cnt.add(new JScrollPane(m_table),BorderLayout.CENTER);
|
|
53 cnt.add(m_submit,BorderLayout.SOUTH);
|
|
54 }
|
|
55
|
|
56 public Map<ByteBuffer,ByteBuffer> setVisible(boolean _show)
|
|
57 {
|
|
58 m_dialog.setLocationRelativeTo(m_parent);
|
|
59 m_dialog.setVisible(_show);
|
|
60
|
|
61 return m_data;
|
|
62 }
|
|
63 }
|