package gui; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.util.Vector; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.border.EmptyBorder; import businessLogic.OfferManager; import domain.Offer; import domain.Owner; import domain.RuralHouse; public class DeleteOfferGUI extends JFrame { /** * */ private static final long serialVersionUID = 1L; private JPanel contentPane; private Owner owner; private JLabel feedback; private JComboBox comboBox; private JComboBox comboBox_1; private JButton btnDelete; /** * Create the frame. */ public DeleteOfferGUI(Owner o) { this.owner = o; setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); comboBox = new JComboBox(this.owner.getRuralHouses()); comboBox.setBounds(101, 38, 314, 20); comboBox_1 = new JComboBox(); comboBox_1.setBounds(101, 76, 314, 20); Vector vo = ((RuralHouse) comboBox.getSelectedItem()).offers; comboBox_1.removeAllItems(); for (Offer of : vo) { comboBox_1.addItem(of); ; } JRadioButton rdbtnIAmSure = new JRadioButton("I am sure"); rdbtnIAmSure.setBounds(101, 134, 108, 23); btnDelete = new JButton("DELETE"); btnDelete.setBounds(92, 226, 117, 23); btnDelete.setEnabled(false); comboBox.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent arg0) { Vector vo = ((RuralHouse) comboBox.getSelectedItem()).offers; comboBox_1.removeAllItems(); for (Offer of : vo) { comboBox_1.addItem(of); ; } } }); rdbtnIAmSure.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent e) { int state = e.getStateChange(); if (state == ItemEvent.SELECTED) { if (comboBox_1.getSelectedItem() != null) btnDelete.setEnabled(true); } else if (state == ItemEvent.DESELECTED) { btnDelete.setEnabled(false); } } }); JLabel lblHouse = new JLabel("House:"); lblHouse.setBounds(25, 41, 68, 14); JLabel lblOffer = new JLabel("Offer:"); lblOffer.setBounds(25, 79, 68, 14); contentPane.setLayout(null); contentPane.add(btnDelete); contentPane.add(rdbtnIAmSure); contentPane.add(lblHouse); contentPane.add(lblOffer); contentPane.add(comboBox); contentPane.add(comboBox_1); feedback = new JLabel(""); feedback.setBounds(140, 178, 202, 23); contentPane.add(feedback); btnDelete.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { actionListenerButton(arg0); } }); } private void actionListenerButton(ActionEvent e) { Offer toDel = (Offer) comboBox_1.getSelectedItem(); OfferManager oM = new OfferManager(); try { oM.deleteOffer((RuralHouse) comboBox.getSelectedItem(), toDel); comboBox_1.removeItem(toDel); btnDelete.setEnabled(false); feedback.setText("Offer correctly deleted"); } catch (Exception e1) { feedback.setText("Imposible to delete the offer"); e1.printStackTrace(); } } }