Git Repository Public Repository

RRRRHHHH_Code

URLs

Copy to Clipboard
 
66f0c834c28b40aeac91b173d6def82e24c3b02b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
package gui;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import domain.*;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;

import java.awt.Font;

import javax.swing.JTextField;
import javax.swing.JScrollPane;

import java.awt.Rectangle;

import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.Date;
import java.util.Enumeration;
import java.util.LinkedList;
import java.util.Vector;

import javax.swing.Box;

import businessLogic.AdminManager;
import businessLogic.HouseManager;
import businessLogic.HouseManagerInterface;

public class listOfRemovalRequestsGUI extends JFrame {

	private JPanel contentPane;
	private JTable table;
	private DefaultTableModel tableModel;
	private AdminManager am = new AdminManager();
	private Vector<RuralHouse> houses;
 	/**
	 * Create the frame.
	 */
	public listOfRemovalRequestsGUI() {
		try {
			this.houses= am.getDeletionRequests();
			init();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private void init() throws Exception {
		setBounds(100, 100, 600, 450);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);

		JLabel lblNewLabel = new JLabel();
		lblNewLabel.setFont(new Font("Tahoma", Font.PLAIN, 27));
		lblNewLabel.setBounds(23, 41, 536, 33);
		contentPane.add(lblNewLabel);
		if (houses.isEmpty())
			lblNewLabel.setText("There are not houses matching your search");
		else
			lblNewLabel.setText("List of houses that match your search:");
		JScrollPane scrollPane = new JScrollPane();
		scrollPane.setBounds(new Rectangle(45, 305, 320, 116));
		scrollPane.setBounds(23, 113, 536, 271);
		contentPane.add(scrollPane);

		table = new JTable() {
	        private static final long serialVersionUID = 1L;

	        public boolean isCellEditable(int row, int column) {                
	                return false;               
	        };
	    };
		scrollPane.setViewportView(table);
		tableModel = new DefaultTableModel(null, new String[] {
				"House Name", "Bedrooms", "Kitchens", "Baths", "Parkings",
				"Livings" });
		
		//Maybe there is a better way to avoid interaction.
		//table.setEnabled(false);
		table.setModel(tableModel);
		Enumeration<RuralHouse> en = houses.elements();
		RuralHouse rh;
		JButton btnNewButton = new JButton("Confirm Deletion");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if (table.getRowCount()!=0) {
					HouseManagerInterface hm = new HouseManager();
					RuralHouse rh = houses.get(table.getSelectedRow());
					//TODO when the house is not added show a warning to the user. Method below returns a boolean stating that.
					hm.removeHouse(rh, rh.getOwner());
					houses.remove(rh);
					am.removeHouseDeletionRequests(rh);
				}
			}
		});
		btnNewButton.setBounds(301, 394, 169, 25);
		contentPane.add(btnNewButton);
		while (en.hasMoreElements()) {
			rh = en.nextElement();
			Vector<Object> row = new Vector<Object>();
			row.add(rh.getHouseName());
			row.add(rh.getFeatures().getnRooms());
			row.add(rh.getFeatures().getnKitchens());
			row.add(rh.getFeatures().getnBaths());
			row.add(rh.getFeatures().getnParkings());
			row.add(rh.getFeatures().getnLivings());
			tableModel.addRow(row);
		}

	}
}

Commits for RRRRHHHH_CoderuralHouses/src/gui/listOfRemovalRequestsGUI.java

Diff revisions: vs.
Revision Author Commited Message
66f0c8 ... Eneko Pinzolas Murua Sun 12 Apr, 2015 18:11:42 +0000

Model modified so that owners now request for a new house insetion or a house removal. Furthermore, all Administrator GUI and bussines logic create. However, Login GUI and BussinesLogic are to be modified so that they integrate Admin identification.