7c1903d1e91632025e3996e5bca7fa5732affa52
[RRRRHHHH_Code] / ruralHouses client / 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.rmi.Naming;
8 import java.rmi.RemoteException;
9 import java.util.Vector;
10
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 common.HouseInterface;
20 import common.OfferInterface;
21 import configuration.___IntNames;
22 import domain.Offer;
23 import domain.Owner;
24 import domain.RuralHouse;
25
26 public class DeleteOfferGUI extends JFrame {
27
28         /**
29          * 
30          */
31         private static final long serialVersionUID = 1L;
32         private JPanel contentPane;
33         private JLabel feedback;
34         private JComboBox<RuralHouse> comboBox;
35         private JComboBox<Offer> comboBox_1;
36         private JButton btnDelete;
37         private Vector<RuralHouse> Hlist = null;
38         private HouseInterface hm = null;
39
40         /**
41          * Create the frame.
42          */
43         public DeleteOfferGUI(Owner o) {
44                 try {
45                         hm = (HouseInterface) Naming
46                                         .lookup(___IntNames.HouseManager);
47                 } catch (Exception e1) {
48                         System.out.println("Error accessing remote authentication: "
49                                         + e1.toString());
50                 }
51                 try {
52                         Hlist = hm.getHouses(o, null, null, 0, 0, 0, 0, 0);
53                 } catch (RemoteException e1) {
54                         e1.printStackTrace();
55                 }       
56                 setBounds(100, 100, 450, 300);
57                 contentPane = new JPanel();
58                 contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
59                 setContentPane(contentPane);
60
61                 comboBox = new JComboBox<RuralHouse>(this.Hlist);
62                 comboBox.setBounds(101, 38, 314, 20);
63
64                 comboBox_1 = new JComboBox<Offer>();
65                 comboBox_1.setBounds(101, 76, 314, 20);
66                 Vector<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).getAllOffers();
67                 comboBox_1.removeAllItems();
68                 for (Offer of : vo) {
69                         comboBox_1.addItem(of);
70                         ;
71                 }
72
73                 JRadioButton rdbtnIAmSure = new JRadioButton("I am sure");
74                 rdbtnIAmSure.setBounds(101, 134, 108, 23);
75
76                 btnDelete = new JButton("DELETE");
77                 btnDelete.setBounds(92, 226, 117, 23);
78                 btnDelete.setEnabled(false);
79
80                 comboBox.addItemListener(new ItemListener() {
81
82                         @Override
83                         public void itemStateChanged(ItemEvent arg0) {
84                                 Vector<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).getAllOffers();
85                                 comboBox_1.removeAllItems();
86                                 for (Offer of : vo) {
87                                         comboBox_1.addItem(of);
88                                         ;
89                                 }
90
91                         }
92
93                 });
94
95                 rdbtnIAmSure.addItemListener(new ItemListener() {
96
97                         @Override
98                         public void itemStateChanged(ItemEvent e) {
99                                 int state = e.getStateChange();
100                                 if (state == ItemEvent.SELECTED) {
101                                         if (comboBox_1.getSelectedItem() != null)
102                                                 btnDelete.setEnabled(true);
103                                 } else if (state == ItemEvent.DESELECTED) {
104                                         btnDelete.setEnabled(false);
105                                 }
106                         }
107                 });
108
109                 JLabel lblHouse = new JLabel("House:");
110                 lblHouse.setBounds(25, 41, 68, 14);
111
112                 JLabel lblOffer = new JLabel("Offer:");
113                 lblOffer.setBounds(25, 79, 68, 14);
114                 contentPane.setLayout(null);
115                 contentPane.add(btnDelete);
116                 contentPane.add(rdbtnIAmSure);
117                 contentPane.add(lblHouse);
118                 contentPane.add(lblOffer);
119                 contentPane.add(comboBox);
120                 contentPane.add(comboBox_1);
121                 
122                 feedback = new JLabel("");
123                 feedback.setBounds(140, 178, 202, 23);
124                 contentPane.add(feedback);
125
126                 btnDelete.addActionListener(new ActionListener() {
127                         public void actionPerformed(ActionEvent arg0) {
128                                 actionListenerButton(arg0);
129
130                         }
131
132                 });
133         }
134
135         private void actionListenerButton(ActionEvent e) {
136
137                 Offer toDel = (Offer) comboBox_1.getSelectedItem();
138                 OfferInterface oM = null;
139                 try {
140                         oM = (OfferInterface) Naming
141                                         .lookup(___IntNames.OfferManager);
142                 } catch (Exception e1) {
143                         System.out.println("Error accessing remote authentication: "
144                                         + e1.toString());
145                 }
146                 
147                 try {
148                         oM.deleteOffer((RuralHouse) comboBox.getSelectedItem(), toDel);
149                         comboBox_1.removeItem(toDel);
150                         btnDelete.setEnabled(false);
151                         feedback.setText("Offer correctly deleted");
152                 } catch (Exception e1) {
153                         feedback.setText("Imposible to delete the offer");
154                         e1.printStackTrace();
155                 }
156                 
157         }
158 }