Repository navigation
Expand file tree
/
Copy pathMyJFrame.java
More file actions
153 lines (125 loc) · 4.39 KB
/
Copy pathMyJFrame.java
File metadata and controls
153 lines (125 loc) · 4.39 KB
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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
import java.awt.Container;
import java.awt.EventQueue;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.JToggleButton;
public class MyJFrame extends JFrame{
private static MyJFrame myJFrame = new MyJFrame(); // only MyJFrame object that will be created, using singleton design pattern
// all property manager panels, will change between them using controller
private PropertyManagerHomePage homePage = new PropertyManagerHomePage();
private SpecificPropertyView currentProperty;
private LoginPage loginPage = new LoginPage();
private SignupPage signupPage = new SignupPage();
private RentRequestsPage requestsPage = new RentRequestsPage();
private NewPropertyPage newPropertyPage = new NewPropertyPage();
private ManagePropertiesPage managePropertiesPage = new ManagePropertiesPage();
private SpecificManagerPropertyView SpecificManagerPropertyView;
private EditPage editPage = new EditPage();
// Singleton
private MyJFrame() {
homePage = new PropertyManagerHomePage();
setContentPane(homePage);
this.setSize(1024,700);
this.setVisible(true);
this.setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static MyJFrame getMyJFrame(){
return myJFrame;
}
// set the JFrame panel to login panel
public void setPanelToLogin() {
setContentPane(loginPage);
}
// set the JFrame panel to sign up panel
public void setPanelToSignup() {
setContentPane(signupPage);
}
public LoginPage getLoginPage() {
return loginPage;
}
public PropertyManagerHomePage getPropertyManagerHomePage() {
return homePage;
}
// set the JFrame panel to property details panel using the passed property object
public void setPanelToProperty(Property property) {
currentProperty = new SpecificPropertyView(property);
setContentPane(currentProperty);
}
// set the JFrame panel to home page using propertyList passed (used mainly for searching)
public void setPanelToHomeAndSearch(ArrayList<Property> propertyList) {
Collections.sort(propertyList, new propertyComparatorByActive()); // sort by active first
homePage.setNewProperties(propertyList);
setContentPane(homePage);
}
public JLabel getBackIconLabel() {
return currentProperty.getBackIconLabel();
}
public SpecificPropertyView getCurrentPropertyView() {
return currentProperty;
}
// reset panels when logout, and set JFrame panel to login
public void logOut() {
loginPage = new LoginPage();
homePage = new PropertyManagerHomePage();
signupPage = new SignupPage();
requestsPage = new RentRequestsPage();
newPropertyPage = new NewPropertyPage();
managePropertiesPage = new ManagePropertiesPage();
editPage = new EditPage();
setPanelToLogin();
}
public SignupPage getSignupPage() {
return signupPage;
}
/////////////////////////////////////////////////////////////////////////////////////////////
//abdo's part
public RentRequestsPage getRequestsPage() {
return requestsPage;
}
// set the JFrame panel to rent request panel
public void setPanelToRequestsPage() {
setContentPane(requestsPage);
}
public NewPropertyPage getNewPropertyPage() {
return newPropertyPage;
}
// set the JFrame panel to new property form panel
public void setPanelToNewPropertyPage() {
newPropertyPage = new NewPropertyPage();
setContentPane(newPropertyPage);
}
public ManagePropertiesPage getManagePropertiesPage() {
return managePropertiesPage;
}
// set the JFrame panel to manage properties panel
public void setPanelToManagePropertiesPage() {
setContentPane(managePropertiesPage);
}
public SpecificManagerPropertyView getSpecificManagerPropertyView() {
return SpecificManagerPropertyView;
}
// set the JFrame panel to property details panel using the passed property
public void setPanelToSpecificManagerPropertyView(Property p) {
SpecificManagerPropertyView = new SpecificManagerPropertyView(p);
setContentPane(SpecificManagerPropertyView);
}
public EditPage getEditPage() {
return editPage;
}
// set the JFrame panel to edit property panel
public void setPanelToEditPage() {
setContentPane(editPage);
}
}