package gui;
-import java.awt.BorderLayout;
-import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
-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.border.EmptyBorder;
-import javax.swing.GroupLayout;
-import javax.swing.GroupLayout.Alignment;
-import javax.swing.JComboBox;
import javax.swing.JRadioButton;
-import javax.swing.JButton;
+import javax.swing.border.EmptyBorder;
-import businessLogic.HouseManager;
-import businessLogic.HouseManagerInterface;
import businessLogic.OfferManager;
import domain.Offer;
import domain.Owner;
import domain.RuralHouse;
-import javax.swing.JLabel;
-import javax.swing.LayoutStyle.ComponentPlacement;
-
public class DeleteOfferGUI extends JFrame {
/**
private static final long serialVersionUID = 1L;
private JPanel contentPane;
private Owner owner;
+ private JLabel feedback;
private JComboBox<RuralHouse> comboBox;
private JComboBox<Offer> comboBox_1;
private JButton btnDelete;
-
/**
* Create the frame.
*/
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
-
+
comboBox = new JComboBox<RuralHouse>(this.owner.getRuralHouses());
-
-
-
+ comboBox.setBounds(101, 38, 314, 20);
+
comboBox_1 = new JComboBox<Offer>();
+ comboBox_1.setBounds(101, 76, 314, 20);
+ Vector<Offer> 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<Offer> vo = ((RuralHouse)comboBox.getSelectedItem()).offers;
+ Vector<Offer> vo = ((RuralHouse) comboBox.getSelectedItem()).offers;
comboBox_1.removeAllItems();
- for (Offer of: vo){
- comboBox_1.addItem(of);;
+ 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){
- btnDelete.setEnabled(true);
- }
- else if (state == ItemEvent.DESELECTED){
+ 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:");
- GroupLayout gl_contentPane = new GroupLayout(contentPane);
- gl_contentPane.setHorizontalGroup(
- gl_contentPane.createParallelGroup(Alignment.LEADING)
- .addGroup(gl_contentPane.createSequentialGroup()
- .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
- .addGroup(gl_contentPane.createSequentialGroup()
- .addGap(85)
- .addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING)
- .addComponent(btnDelete)
- .addComponent(rdbtnIAmSure)))
- .addGroup(gl_contentPane.createSequentialGroup()
- .addGap(20)
- .addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING, false)
- .addComponent(lblHouse, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(lblOffer, GroupLayout.DEFAULT_SIZE, 68, Short.MAX_VALUE))
- .addGap(8)
- .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING, false)
- .addComponent(comboBox, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(comboBox_1, 0, 314, Short.MAX_VALUE))))
- .addContainerGap(946, Short.MAX_VALUE))
- );
- gl_contentPane.setVerticalGroup(
- gl_contentPane.createParallelGroup(Alignment.LEADING)
- .addGroup(gl_contentPane.createSequentialGroup()
- .addGap(33)
- .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
- .addComponent(comboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
- .addComponent(lblHouse))
- .addGap(18)
- .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
- .addComponent(comboBox_1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
- .addComponent(lblOffer))
- .addGap(43)
- .addComponent(rdbtnIAmSure)
- .addGap(47)
- .addComponent(btnDelete)
- .addContainerGap(493, Short.MAX_VALUE))
- );
- contentPane.setLayout(gl_contentPane);
+ 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();
+ private void actionListenerButton(ActionEvent e) {
+
+ Offer toDel = (Offer) comboBox_1.getSelectedItem();
OfferManager oM = new OfferManager();
try {
- oM.deleteOffer((RuralHouse)comboBox.getSelectedItem(),toDel);
+ 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();
}
- comboBox.removeItem(toDel);
+
}
}