--- /dev/null
+package gui;
+
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.rmi.Naming;
+import java.rmi.RemoteException;
+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 common.HouseInterface;
+import common.OfferInterface;
+
+import configuration.___IntNames;
+import domain.Offer;
+import domain.Owner;
+import domain.RuralHouse;
+
+public class DeleteOfferGUI extends JFrame {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+ private JPanel contentPane;
+ private JLabel feedback;
+ private JComboBox<RuralHouse> comboBox;
+ private JComboBox<Offer> comboBox_1;
+ private JButton btnDelete;
+ private Vector<RuralHouse> Hlist = null;
+ private HouseInterface hm = null;
+
+ /**
+ * Create the frame.
+ */
+ public DeleteOfferGUI(Owner o) {
+ try {
+ hm = (HouseInterface) Naming
+ .lookup(___IntNames.HouseManager);
+ } catch (Exception e1) {
+ System.out.println("Error accessing remote authentication: "
+ + e1.toString());
+ }
+ try {
+ Hlist = hm.getHouses(o, null, null, 0, 0, 0, 0, 0);
+ } catch (RemoteException e1) {
+ e1.printStackTrace();
+ }
+ setBounds(100, 100, 450, 300);
+ contentPane = new JPanel();
+ contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+ setContentPane(contentPane);
+
+ comboBox = new JComboBox<RuralHouse>(this.Hlist);
+ comboBox.setBounds(101, 38, 314, 20);
+
+ comboBox_1 = new JComboBox<Offer>();
+ comboBox_1.setBounds(101, 76, 314, 20);
+ Vector<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).getAllOffers();
+ 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<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).getAllOffers();
+ 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();
+ OfferInterface oM = null;
+ try {
+ oM = (OfferInterface) Naming
+ .lookup(___IntNames.OfferManager);
+ } catch (Exception e1) {
+ System.out.println("Error accessing remote authentication: "
+ + e1.toString());
+ }
+
+ 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();
+ }
+
+ }
+}