package icy.swimmingPool; import icy.main.Icy; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Insets; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.SwingConstants; import javax.swing.border.EtchedBorder; public class SwimmingPoolObjectPanel extends JPanel { private SwimmingObject result; private JButton deleteButton; /** * Create the panel. * @param result */ public SwimmingPoolObjectPanel(SwimmingObject result) { setBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null)); this.result = result; GridBagLayout gridBagLayout = new GridBagLayout(); gridBagLayout.columnWidths = new int[]{200, 0, 100, 0}; gridBagLayout.rowHeights = new int[]{23, 0}; gridBagLayout.columnWeights = new double[]{0.0, 1.0, 0.0, Double.MIN_VALUE}; gridBagLayout.rowWeights = new double[]{1.0, Double.MIN_VALUE}; setLayout(gridBagLayout); JLabel dateLabel = new JLabel("New label"); dateLabel.setHorizontalAlignment(SwingConstants.LEFT); GridBagConstraints gbc_dateLabel = new GridBagConstraints(); gbc_dateLabel.fill = GridBagConstraints.BOTH; gbc_dateLabel.insets = new Insets(0, 0, 0, 5); gbc_dateLabel.gridx = 0; gbc_dateLabel.gridy = 0; add(dateLabel, gbc_dateLabel); JLabel nameLabel = new JLabel("New label"); nameLabel.setHorizontalAlignment(SwingConstants.LEFT); GridBagConstraints gbc_descriptionLabel = new GridBagConstraints(); gbc_descriptionLabel.insets = new Insets(0, 0, 0, 5); gbc_descriptionLabel.fill = GridBagConstraints.BOTH; gbc_descriptionLabel.gridx = 1; gbc_descriptionLabel.gridy = 0; add(nameLabel, gbc_descriptionLabel); deleteButton = new JButton("Delete"); GridBagConstraints gbc_btnNewButton = new GridBagConstraints(); gbc_btnNewButton.fill = GridBagConstraints.BOTH; gbc_btnNewButton.gridx = 2; gbc_btnNewButton.gridy = 0; add(deleteButton, gbc_btnNewButton); dateLabel.setText( " " + result.getCreationDate().toString() ); nameLabel.setText( result.getName() ); deleteButton.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { Icy.getMainInterface().getSwimmingPool().remove( SwimmingPoolObjectPanel.this.result ); } }); } }