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