Booking confirmation and e-mail service added. Some bugs to be solved.
[RRRRHHHH_Code] / ruralHouses / src / gui / DeleteOfferGUI.java
1 package gui;
2
3 import java.awt.event.ActionEvent;
4 import java.awt.event.ActionListener;
5 import java.awt.event.ItemEvent;
6 import java.awt.event.ItemListener;
7 import java.util.Vector;
8
9 import javax.swing.JButton;
10 import javax.swing.JComboBox;
11 import javax.swing.JFrame;
12 import javax.swing.JLabel;
13 import javax.swing.JPanel;
14 import javax.swing.JRadioButton;
15 import javax.swing.border.EmptyBorder;
16
17 import businessLogic.OfferManager;
18 import domain.Offer;
19 import domain.Owner;
20 import domain.RuralHouse;
21
22 public class DeleteOfferGUI extends JFrame {
23
24         /**
25          * 
26          */
27         private static final long serialVersionUID = 1L;
28         private JPanel contentPane;
29         private Owner owner;
30         private JLabel feedback;
31         private JComboBox<RuralHouse> comboBox;
32         private JComboBox<Offer> comboBox_1;
33         private JButton btnDelete;
34
35         /**
36          * Create the frame.
37          */
38         public DeleteOfferGUI(Owner o) {
39                 this.owner = o;
40                 setBounds(100, 100, 450, 300);
41                 contentPane = new JPanel();
42                 contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
43                 setContentPane(contentPane);
44
45                 comboBox = new JComboBox<RuralHouse>(this.owner.getRuralHouses());
46                 comboBox.setBounds(101, 38, 314, 20);
47
48                 comboBox_1 = new JComboBox<Offer>();
49                 comboBox_1.setBounds(101, 76, 314, 20);
50                 Vector<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).offers;
51                 comboBox_1.removeAllItems();
52                 for (Offer of : vo) {
53                         comboBox_1.addItem(of);
54                         ;
55                 }
56
57                 JRadioButton rdbtnIAmSure = new JRadioButton("I am sure");
58                 rdbtnIAmSure.setBounds(101, 134, 108, 23);
59
60                 btnDelete = new JButton("DELETE");
61                 btnDelete.setBounds(92, 226, 117, 23);
62                 btnDelete.setEnabled(false);
63
64                 comboBox.addItemListener(new ItemListener() {
65
66                         @Override
67                         public void itemStateChanged(ItemEvent arg0) {
68                                 Vector<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).offers;
69                                 comboBox_1.removeAllItems();
70                                 for (Offer of : vo) {
71                                         comboBox_1.addItem(of);
72                                         ;
73                                 }
74
75                         }
76
77                 });
78
79                 rdbtnIAmSure.addItemListener(new ItemListener() {
80
81                         @Override
82                         public void itemStateChanged(ItemEvent e) {
83                                 int state = e.getStateChange();
84                                 if (state == ItemEvent.SELECTED) {
85                                         if (comboBox_1.getSelectedItem() != null)
86                                                 btnDelete.setEnabled(true);
87                                 } else if (state == ItemEvent.DESELECTED) {
88                                         btnDelete.setEnabled(false);
89                                 }
90                         }
91                 });
92
93                 JLabel lblHouse = new JLabel("House:");
94                 lblHouse.setBounds(25, 41, 68, 14);
95
96                 JLabel lblOffer = new JLabel("Offer:");
97                 lblOffer.setBounds(25, 79, 68, 14);
98                 contentPane.setLayout(null);
99                 contentPane.add(btnDelete);
100                 contentPane.add(rdbtnIAmSure);
101                 contentPane.add(lblHouse);
102                 contentPane.add(lblOffer);
103                 contentPane.add(comboBox);
104                 contentPane.add(comboBox_1);
105                 
106                 feedback = new JLabel("");
107                 feedback.setBounds(140, 178, 202, 23);
108                 contentPane.add(feedback);
109
110                 btnDelete.addActionListener(new ActionListener() {
111                         public void actionPerformed(ActionEvent arg0) {
112                                 actionListenerButton(arg0);
113
114                         }
115
116                 });
117         }
118
119         private void actionListenerButton(ActionEvent e) {
120
121                 Offer toDel = (Offer) comboBox_1.getSelectedItem();
122                 OfferManager oM = new OfferManager();
123                 try {
124                         oM.deleteOffer((RuralHouse) comboBox.getSelectedItem(), toDel);
125                         comboBox_1.removeItem(toDel);
126                         btnDelete.setEnabled(false);
127                         feedback.setText("Offer correctly deleted");
128                 } catch (Exception e1) {
129                         feedback.setText("Imposible to delete the offer");
130                         e1.printStackTrace();
131                 }
132                 
133         }
134 }