Batch uploading
This commit is contained in:
@@ -2,8 +2,19 @@ package org.lumijiez;
|
|||||||
|
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
|
|
||||||
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
|
|
||||||
public class Main {
|
public class Main {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
java.awt.EventQueue.invokeLater(() -> new StudentManagementGUI().setVisible(true));
|
|
||||||
|
try {
|
||||||
|
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
|
||||||
|
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
|
||||||
|
System.err.println("Windows LAF not found!");
|
||||||
|
}
|
||||||
|
|
||||||
|
EventQueue.invokeLater(() -> new StudentManagementGUI().setVisible(true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,8 @@ import org.lumijiez.gui.forms.group.DeleteGroupForm;
|
|||||||
import org.lumijiez.gui.forms.group.EditGroupForm;
|
import org.lumijiez.gui.forms.group.EditGroupForm;
|
||||||
import org.lumijiez.gui.forms.group.ShowGroupForm;
|
import org.lumijiez.gui.forms.group.ShowGroupForm;
|
||||||
import org.lumijiez.gui.forms.student.*;
|
import org.lumijiez.gui.forms.student.*;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
|
import org.lumijiez.gui.util.FilePicker;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -30,74 +32,52 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
private static Supervisor sv;
|
private static Supervisor sv;
|
||||||
private final JMenuBar menuBar = new JMenuBar();
|
private final JMenuBar menuBar = new JMenuBar();
|
||||||
private final JMenu fileMenu = new JMenu();
|
private final JMenu fileMenu = new JMenu();
|
||||||
private final JMenuItem loadBatchOption = new JMenuItem();
|
|
||||||
private final JMenuItem saveAsOption = new JMenuItem();
|
|
||||||
private final JMenuItem saveAndExitOption = new JMenuItem();
|
|
||||||
private final JMenuItem settingsOption = new JMenuItem();
|
|
||||||
private final JMenu studentMenu = new JMenu();
|
private final JMenu studentMenu = new JMenu();
|
||||||
private final JMenuItem showAllStudentsOption = new JMenuItem();
|
|
||||||
private final JMenuItem showParticularStudentOption = new JMenuItem();
|
|
||||||
private final JMenuItem showStudentGrade = new JMenuItem();
|
|
||||||
private final JMenuItem graduateStudent = new JMenuItem();
|
|
||||||
private final JMenuItem showGraduates = new JMenuItem();
|
|
||||||
private final JMenuItem showEnrolled = new JMenuItem();
|
|
||||||
private final JPopupMenu.Separator studentSeparator = new JPopupMenu.Separator();
|
|
||||||
private final JMenuItem gradeStudentOption = new JMenuItem();
|
|
||||||
private final JMenuItem addStudentOption = new JMenuItem();
|
|
||||||
private final JMenuItem editStudentOption = new JMenuItem();
|
|
||||||
private final JMenuItem deleteStudentOption = new JMenuItem();
|
|
||||||
private final JMenu groupMenu = new JMenu();
|
private final JMenu groupMenu = new JMenu();
|
||||||
private final JMenuItem showAllGroupsOption = new JMenuItem();
|
|
||||||
private final JMenuItem showParticularGroupOption = new JMenuItem();
|
|
||||||
private final JPopupMenu.Separator groupSeparator = new JPopupMenu.Separator();
|
|
||||||
private final JMenuItem addGroupOption = new JMenuItem();
|
|
||||||
private final JMenuItem editGroupOption = new JMenuItem();
|
|
||||||
private final JMenuItem deleteGroupOption = new JMenuItem();
|
|
||||||
private final JMenu facultyMenu = new JMenu();
|
private final JMenu facultyMenu = new JMenu();
|
||||||
private final JMenuItem showAllFacultiesOption = new JMenuItem();
|
|
||||||
private final JMenuItem showParticularFacultyOption = new JMenuItem();
|
|
||||||
private final JPopupMenu.Separator facultySeparator = new JPopupMenu.Separator();
|
|
||||||
private final JMenuItem addFacultyOption = new JMenuItem();
|
|
||||||
private final JMenuItem editFacultyOption = new JMenuItem();
|
|
||||||
private final JMenuItem removeFacultyOption = new JMenuItem();
|
|
||||||
private final JScrollPane mainScrollPane = new javax.swing.JScrollPane();
|
private final JScrollPane mainScrollPane = new javax.swing.JScrollPane();
|
||||||
private static final JTextArea mainTextLabel = new javax.swing.JTextArea();
|
private static final JTextArea mainTextLabel = new javax.swing.JTextArea();
|
||||||
|
|
||||||
public StudentManagementGUI() {
|
public StudentManagementGUI() {
|
||||||
this.sv = DataDeserializer.deserialize();
|
sv = DataDeserializer.deserialize();
|
||||||
this.setSize(new Dimension(1280, 720));
|
this.setSize(new Dimension(1280, 720));
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
private void initComponents() {
|
private void initComponents() {
|
||||||
|
|
||||||
|
JMenuItem loadBatchOption = new JMenuItem("Load as Batch", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem saveAsOption = new JMenuItem("Save As", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem saveAndExitOption = new JMenuItem("Save and Exit", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem settingsOption = new JMenuItem("Settings", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showAllStudentsOption = new JMenuItem("Show All Students", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showParticularStudentOption = new JMenuItem("Show a Student", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showStudentGrade = new JMenuItem("Show Student Grades", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem graduateStudent = new JMenuItem("Graduate Student", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showGraduates = new JMenuItem("Show Graduates", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showEnrolled = new JMenuItem("Show enrolled", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem gradeStudentOption = new JMenuItem("Grade a Student", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem addStudentOption = new JMenuItem("Add a Student", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem editStudentOption = new JMenuItem("Edit a Student", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem deleteStudentOption = new JMenuItem("Delete a Student", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showAllGroupsOption = new JMenuItem("Show all Groups", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showParticularGroupOption = new JMenuItem("Show a Group", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem addGroupOption = new JMenuItem("Add a Group", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem editGroupOption = new JMenuItem("Edit a Group", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem deleteGroupOption = new JMenuItem("Delete a Group", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showAllFacultiesOption = new JMenuItem("Show all Faculties", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem showParticularFacultyOption = new JMenuItem("Show a Faculty", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem addFacultyOption = new JMenuItem("Add a Faculty", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem editFacultyOption = new JMenuItem("Edit a Faculty", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
JMenuItem removeFacultyOption = new JMenuItem("Remove Faculty", UIManager.getIcon("FileView.directoryIcon"));
|
||||||
|
|
||||||
|
JPopupMenu.Separator studentSeparator = new JPopupMenu.Separator();
|
||||||
|
JPopupMenu.Separator groupSeparator = new JPopupMenu.Separator();
|
||||||
|
JPopupMenu.Separator facultySeparator = new JPopupMenu.Separator();
|
||||||
|
|
||||||
fileMenu.setText("File");
|
fileMenu.setText("File");
|
||||||
loadBatchOption.setText("Load Batch File");
|
|
||||||
saveAsOption.setText("Save As File");
|
|
||||||
saveAndExitOption.setText("Save And Exit");
|
|
||||||
settingsOption.setText("Settings");
|
|
||||||
studentMenu.setText("Student Options");
|
studentMenu.setText("Student Options");
|
||||||
showAllStudentsOption.setText("Show All Students");
|
|
||||||
showParticularStudentOption.setText("Show Student");
|
|
||||||
showStudentGrade.setText("Show Student Grades");
|
|
||||||
gradeStudentOption.setText("Grade Student");
|
|
||||||
addStudentOption.setText("Add Student");
|
|
||||||
editStudentOption.setText("Edit Student");
|
|
||||||
deleteStudentOption.setText("Delete Student");
|
|
||||||
groupMenu.setText("Group Options");
|
groupMenu.setText("Group Options");
|
||||||
showAllGroupsOption.setText("Show All Groups");
|
|
||||||
showParticularGroupOption.setText("Show Group");
|
|
||||||
addGroupOption.setText("Add Group");
|
|
||||||
editGroupOption.setText("Edit Group");
|
|
||||||
deleteGroupOption.setText("Delete Group");
|
|
||||||
facultyMenu.setText("Faculty Options");
|
facultyMenu.setText("Faculty Options");
|
||||||
showAllFacultiesOption.setText("Show Faculties");
|
|
||||||
showParticularFacultyOption.setText("Show A Faculty");
|
|
||||||
addFacultyOption.setText("Add Faculty");
|
|
||||||
removeFacultyOption.setText("Remove Faculty");
|
|
||||||
editFacultyOption.setText("Edit Faculty");
|
|
||||||
graduateStudent.setText("Graduate student");
|
|
||||||
showGraduates.setText("Show Graduates");
|
|
||||||
showEnrolled.setText("Show Enrolled");
|
|
||||||
|
|
||||||
mainTextLabel.setEditable(false);
|
mainTextLabel.setEditable(false);
|
||||||
mainTextLabel.setFont(new java.awt.Font("Segoe UI", 0, 14));
|
mainTextLabel.setFont(new java.awt.Font("Segoe UI", 0, 14));
|
||||||
@@ -191,7 +171,7 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
|
|
||||||
setJMenuBar(menuBar);
|
setJMenuBar(menuBar);
|
||||||
|
|
||||||
StudentManagementGUI.displayStudents();
|
DisplayerManager.displayStudents();
|
||||||
|
|
||||||
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
|
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
|
||||||
getContentPane().setLayout(layout);
|
getContentPane().setLayout(layout);
|
||||||
@@ -208,68 +188,45 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
|
|
||||||
private void showGraduatesOptionActionPerformed(ActionEvent actionEvent) {
|
private void showGraduatesOptionActionPerformed(ActionEvent actionEvent) {
|
||||||
if (checkStudent() && checkGroup() && checkFaculty()) {
|
if (checkStudent() && checkGroup() && checkFaculty()) {
|
||||||
StringBuilder text = new StringBuilder();
|
DisplayerManager.displayGraduates();
|
||||||
text.append("=================== Students =====================\n");
|
|
||||||
for (Student st : sv.getFm().getGm().getSm().getStudents()) {
|
|
||||||
if (st.isGraduated()) {
|
|
||||||
text.append("Name: ").append(st.getFullname()).append("\nGroup: ").append(st.getGroup().getName())
|
|
||||||
.append("\nGraduated: ").append("Yes");
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showEnrolledOptionActionPerformed(ActionEvent actionEvent) {
|
private void showEnrolledOptionActionPerformed(ActionEvent actionEvent) {
|
||||||
if (checkStudent() && checkGroup() && checkFaculty()) {
|
if (checkStudent() && checkGroup() && checkFaculty()) {
|
||||||
StringBuilder text = new StringBuilder();
|
DisplayerManager.displayEnrolled();
|
||||||
text.append("=================== Students =====================\n");
|
|
||||||
for (Student st : sv.getFm().getGm().getSm().getStudents()) {
|
|
||||||
if (!st.isGraduated()) {
|
|
||||||
text.append("Name: ").append(st.getFullname()).append("\nGroup: ").append(st.getGroup().getName())
|
|
||||||
.append("\nGraduated: ").append("No");
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void graduateStudentOptionActionPerformed(ActionEvent actionEvent) {
|
private void graduateStudentOptionActionPerformed(ActionEvent actionEvent) {
|
||||||
if (checkStudent() && checkGroup() && checkFaculty()) {
|
if (checkStudent() && checkGroup() && checkFaculty()) {
|
||||||
GraduateStudentForm form = new GraduateStudentForm(sv, mainTextLabel);
|
GraduateStudentForm form = new GraduateStudentForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showAllStudentsOptionActionPerformed(ActionEvent actionEvent) {
|
private void showAllStudentsOptionActionPerformed(ActionEvent actionEvent) {
|
||||||
if (checkStudent() && checkGroup() && checkFaculty()) {
|
if (checkStudent() && checkGroup() && checkFaculty()) {
|
||||||
StringBuilder text = new StringBuilder();
|
DisplayerManager.displayStudents();
|
||||||
text.append("=================== Students =====================\n");
|
|
||||||
for (Student st : sv.getFm().getGm().getSm().getStudents()) {
|
|
||||||
text.append("Name: ").append(st.getFullname()).append("\nGroup: ").append(st.getGroup().getName());
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showAllGroupsOptionActionPerformed(ActionEvent actionEvent) {
|
private void showAllGroupsOptionActionPerformed(ActionEvent actionEvent) {
|
||||||
if (checkGroup() && checkFaculty()) {
|
if (checkGroup() && checkFaculty()) {
|
||||||
displayGroups();
|
DisplayerManager.displayGroups();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void deleteGroupOptionActionPerformed(ActionEvent actionEvent) {
|
private void deleteGroupOptionActionPerformed(ActionEvent actionEvent) {
|
||||||
if (checkGroup() && checkFaculty()) {
|
if (checkGroup() && checkFaculty()) {
|
||||||
DeleteGroupForm form = new DeleteGroupForm(sv, mainTextLabel);
|
DeleteGroupForm form = new DeleteGroupForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadBatchOptionActionPerformed(ActionEvent evt) {
|
private void loadBatchOptionActionPerformed(ActionEvent evt) {
|
||||||
|
FilePicker picker = new FilePicker(sv);
|
||||||
|
picker.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void saveAndExitOptionActionPerformed(ActionEvent evt) {
|
private void saveAndExitOptionActionPerformed(ActionEvent evt) {
|
||||||
@@ -287,15 +244,7 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
|
|
||||||
private void showAllFacultiesOptionActionPerformed(ActionEvent evt) {
|
private void showAllFacultiesOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkFaculty()) {
|
if (checkFaculty()) {
|
||||||
StringBuilder text = new StringBuilder();
|
DisplayerManager.displayFaculties();
|
||||||
text.append("==================== Faculties ======================\n");
|
|
||||||
for (Faculty fac : sv.getFm().getFaculties()) {
|
|
||||||
text.append("Name: ").append(fac.getName()).append("\nSpecialty: ").append(fac.getField().getName())
|
|
||||||
.append("\nAbbreviation: ").append(fac.getAbbreviation())
|
|
||||||
.append("\nNumber of groups: ").append(fac.getGroups().size());
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -311,7 +260,7 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void addFacultyOptionActionPerformed(ActionEvent evt) {
|
private void addFacultyOptionActionPerformed(ActionEvent evt) {
|
||||||
AddFacultyForm form = new AddFacultyForm(sv, mainTextLabel);
|
AddFacultyForm form = new AddFacultyForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -331,14 +280,14 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
|
|
||||||
private void editStudentOptionActionPerformed(ActionEvent evt) {
|
private void editStudentOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkStudent() && checkGroup() && checkFaculty()) {
|
if (checkStudent() && checkGroup() && checkFaculty()) {
|
||||||
EditStudentForm form = new EditStudentForm(sv, mainTextLabel);
|
EditStudentForm form = new EditStudentForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void deleteStudentOptionActionPerformed(ActionEvent evt) {
|
private void deleteStudentOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkStudent() && checkGroup() && checkFaculty()) {
|
if (checkStudent() && checkGroup() && checkFaculty()) {
|
||||||
DeleteStudentForm form = new DeleteStudentForm(sv, mainTextLabel);
|
DeleteStudentForm form = new DeleteStudentForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -359,14 +308,14 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
|
|
||||||
private void addGroupOptionActionPerformed(ActionEvent evt) {
|
private void addGroupOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkFaculty()) {
|
if (checkFaculty()) {
|
||||||
AddGroupForm form = new AddGroupForm(sv, mainTextLabel);
|
AddGroupForm form = new AddGroupForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void editGroupOptionActionPerformed(ActionEvent evt) {
|
private void editGroupOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkGroup() && checkFaculty()) {
|
if (checkGroup() && checkFaculty()) {
|
||||||
EditGroupForm form = new EditGroupForm(sv, mainTextLabel);
|
EditGroupForm form = new EditGroupForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -380,14 +329,14 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
|
|
||||||
private void editFacultyOptionActionPerformed(ActionEvent evt) {
|
private void editFacultyOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkFaculty()) {
|
if (checkFaculty()) {
|
||||||
EditFacultyForm form = new EditFacultyForm(sv, mainTextLabel);
|
EditFacultyForm form = new EditFacultyForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void removeFacultyOptionActionPerformed(ActionEvent evt) {
|
private void removeFacultyOptionActionPerformed(ActionEvent evt) {
|
||||||
if (checkFaculty()) {
|
if (checkFaculty()) {
|
||||||
RemoveFacultyForm form = new RemoveFacultyForm(sv, mainTextLabel);
|
RemoveFacultyForm form = new RemoveFacultyForm(sv);
|
||||||
form.setVisible(true);
|
form.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -416,37 +365,11 @@ public class StudentManagementGUI extends JFrame {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void displayStudents() {
|
public static JTextArea getMainLabel() {
|
||||||
StringBuilder text = new StringBuilder();
|
return mainTextLabel;
|
||||||
text.append("==================== Students ======================\n");
|
|
||||||
for (Student student : sv.getFm().getGm().getSm().getStudents()) {
|
|
||||||
text.append("Name: ").append(student.getFullname()).append("\nGroup: ").append(student.getGroup().getName())
|
|
||||||
.append("\nEmail:: ").append(student.getEmail()).append("\nGraduated: ").append((student.isGraduated() ? "Yes" : "No"));
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void displayGroups() {
|
public static Supervisor getSv() {
|
||||||
StringBuilder text = new StringBuilder();
|
return sv;
|
||||||
text.append("==================== Groups ======================\n");
|
|
||||||
for (Group group : sv.getFm().getGm().getGroups()) {
|
|
||||||
text.append("Name: ").append(group.getName()).append("\nFaculty: ").append(group.getFaculty().getName())
|
|
||||||
.append("\nNumber of students: ").append(group.getStudents().size());
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void displayFaculties() {
|
|
||||||
StringBuilder text = new StringBuilder();
|
|
||||||
text.append("==================== Faculties ======================\n");
|
|
||||||
for (Faculty fac : sv.getFm().getFaculties()) {
|
|
||||||
text.append("Name: ").append(fac.getName()).append("\nSpecialty: ").append(fac.getField().getName())
|
|
||||||
.append("\nAbbreviation: ").append(fac.getAbbreviation())
|
|
||||||
.append("\nNumber of groups: ").append(fac.getGroups().size());
|
|
||||||
text.append("\n===============================================\n");
|
|
||||||
}
|
|
||||||
mainTextLabel.setText(text.toString());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,8 +4,10 @@ import org.lumijiez.base.Faculty;
|
|||||||
import org.lumijiez.enums.StudyField;
|
import org.lumijiez.enums.StudyField;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
@@ -13,7 +15,6 @@ import javax.swing.*;
|
|||||||
|
|
||||||
public class AddFacultyForm extends JFrame {
|
public class AddFacultyForm extends JFrame {
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
private final JComboBox<String> specialtyCombo = new JComboBox<>();
|
private final JComboBox<String> specialtyCombo = new JComboBox<>();
|
||||||
private final JTextField nameField = new JTextField();
|
private final JTextField nameField = new JTextField();
|
||||||
@@ -24,9 +25,8 @@ public class AddFacultyForm extends JFrame {
|
|||||||
private final JLabel abbreviationLabel = new JLabel();
|
private final JLabel abbreviationLabel = new JLabel();
|
||||||
private final JLabel specialtyLabel = new JLabel();
|
private final JLabel specialtyLabel = new JLabel();
|
||||||
|
|
||||||
public AddFacultyForm(Supervisor sv, JTextArea mainTextLabel) {
|
public AddFacultyForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -34,7 +34,7 @@ public class AddFacultyForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18));
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18));
|
||||||
|
|
||||||
titleLabel.setText("Add a new faculty");
|
titleLabel.setText("Add a new faculty");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
@@ -118,7 +118,7 @@ public class AddFacultyForm extends JFrame {
|
|||||||
if (!name.isEmpty()) {
|
if (!name.isEmpty()) {
|
||||||
Faculty newFaculty = new Faculty(name, abbreviation, specialty);
|
Faculty newFaculty = new Faculty(name, abbreviation, specialty);
|
||||||
sv.addFaculty(newFaculty);
|
sv.addFaculty(newFaculty);
|
||||||
StudentManagementGUI.displayFaculties();
|
DisplayerManager.displayFaculties();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import org.lumijiez.base.Faculty;
|
|||||||
import org.lumijiez.enums.StudyField;
|
import org.lumijiez.enums.StudyField;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
@@ -17,8 +18,6 @@ import java.awt.event.ActionEvent;
|
|||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class EditFacultyForm extends JFrame {
|
public class EditFacultyForm extends JFrame {
|
||||||
private final Supervisor sv;
|
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JTextField abbreviationField = new JTextField();
|
private final JTextField abbreviationField = new JTextField();
|
||||||
private final JLabel abbreviationLabel = new JLabel();
|
private final JLabel abbreviationLabel = new JLabel();
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
@@ -31,9 +30,7 @@ public class EditFacultyForm extends JFrame {
|
|||||||
private final JComboBox<Faculty> facultyCombo;
|
private final JComboBox<Faculty> facultyCombo;
|
||||||
private final JComboBox<StudyField> specialtyCombo;
|
private final JComboBox<StudyField> specialtyCombo;
|
||||||
|
|
||||||
public EditFacultyForm(Supervisor sv, JTextArea mainTextLabel) {
|
public EditFacultyForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
||||||
specialtyCombo = new JComboBox<>(StudyField.getAllEnums().toArray(new StudyField[0]));
|
specialtyCombo = new JComboBox<>(StudyField.getAllEnums().toArray(new StudyField[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
@@ -43,7 +40,7 @@ public class EditFacultyForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
titleLabel.setText("Edit a faculty");
|
titleLabel.setText("Edit a faculty");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
cancelButton.setText("Cancel");
|
cancelButton.setText("Cancel");
|
||||||
@@ -147,7 +144,7 @@ public class EditFacultyForm extends JFrame {
|
|||||||
((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem())).setName(nameField.getText());
|
((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem())).setName(nameField.getText());
|
||||||
((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem())).setAbbreviation(abbreviationField.getText());
|
((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem())).setAbbreviation(abbreviationField.getText());
|
||||||
((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem())).setField(((StudyField) Objects.requireNonNull(specialtyCombo.getSelectedItem())));
|
((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem())).setField(((StudyField) Objects.requireNonNull(specialtyCombo.getSelectedItem())));
|
||||||
StudentManagementGUI.displayFaculties();
|
DisplayerManager.displayFaculties();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,25 +7,25 @@ package org.lumijiez.gui.forms.faculty;
|
|||||||
import org.lumijiez.base.Faculty;
|
import org.lumijiez.base.Faculty;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
public class RemoveFacultyForm extends JFrame {
|
public class RemoveFacultyForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Faculty> facultyCombo;
|
private final JComboBox<Faculty> facultyCombo;
|
||||||
private final JLabel facultyLabel = new JLabel();
|
private final JLabel facultyLabel = new JLabel();
|
||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public RemoveFacultyForm(Supervisor sv, JTextArea mainTextLabel) {
|
public RemoveFacultyForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
@@ -34,7 +34,7 @@ public class RemoveFacultyForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Remove a faculty");
|
titleLabel.setText("Remove a faculty");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
@@ -88,7 +88,7 @@ public class RemoveFacultyForm extends JFrame {
|
|||||||
|
|
||||||
private void submitButtonActionPerformed(ActionEvent evt) {
|
private void submitButtonActionPerformed(ActionEvent evt) {
|
||||||
sv.deleteFaculty(((Faculty)facultyCombo.getSelectedItem()));
|
sv.deleteFaculty(((Faculty)facultyCombo.getSelectedItem()));
|
||||||
StudentManagementGUI.displayFaculties();
|
DisplayerManager.displayFaculties();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11,11 +11,11 @@ import org.lumijiez.managers.Supervisor;
|
|||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
public class ShowFacultyForm extends JFrame {
|
public class ShowFacultyForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
|
||||||
private final JTextArea mainTextLabel;
|
private final JTextArea mainTextLabel;
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Faculty> facultyCombo;
|
private final JComboBox<Faculty> facultyCombo;
|
||||||
@@ -24,7 +24,6 @@ public class ShowFacultyForm extends JFrame {
|
|||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public ShowFacultyForm(Supervisor sv, JTextArea mainTextLabel) {
|
public ShowFacultyForm(Supervisor sv, JTextArea mainTextLabel) {
|
||||||
this.sv = sv;
|
|
||||||
this.mainTextLabel = mainTextLabel;
|
this.mainTextLabel = mainTextLabel;
|
||||||
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
@@ -34,7 +33,7 @@ public class ShowFacultyForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Show a faculty");
|
titleLabel.setText("Show a faculty");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
@@ -101,8 +100,7 @@ public class ShowFacultyForm extends JFrame {
|
|||||||
builder.append("==========\n");
|
builder.append("==========\n");
|
||||||
builder.append("Groups: ").append("\n");
|
builder.append("Groups: ").append("\n");
|
||||||
for (Group gr : fac.getGroups())
|
for (Group gr : fac.getGroups())
|
||||||
builder.append(gr.getName()).append("\n");
|
builder.append(gr.getName()).append("\n").append("==========\n");
|
||||||
builder.append("==========\n");
|
|
||||||
builder.append("===================================================");
|
builder.append("===================================================");
|
||||||
mainTextLabel.setText(builder.toString());
|
mainTextLabel.setText(builder.toString());
|
||||||
this.dispose();
|
this.dispose();
|
||||||
|
|||||||
@@ -8,17 +8,18 @@ import org.lumijiez.base.Faculty;
|
|||||||
import org.lumijiez.base.Group;
|
import org.lumijiez.base.Group;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class AddGroupForm extends JFrame {
|
public class AddGroupForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
private final JTextField nameField = new JTextField();
|
private final JTextField nameField = new JTextField();
|
||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
@@ -27,9 +28,8 @@ public class AddGroupForm extends JFrame {
|
|||||||
private final JComboBox<Faculty> facultyCombo;
|
private final JComboBox<Faculty> facultyCombo;
|
||||||
private final JLabel facultyLabel = new JLabel();
|
private final JLabel facultyLabel = new JLabel();
|
||||||
|
|
||||||
public AddGroupForm(Supervisor sv, JTextArea mainTextLabel) {
|
public AddGroupForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
@@ -37,7 +37,7 @@ public class AddGroupForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Add a new group");
|
titleLabel.setText("Add a new group");
|
||||||
nameField.setText("Name...");
|
nameField.setText("Name...");
|
||||||
@@ -103,7 +103,7 @@ public class AddGroupForm extends JFrame {
|
|||||||
Group gr = new Group(nameField.getText());
|
Group gr = new Group(nameField.getText());
|
||||||
Faculty fac = ((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem()));
|
Faculty fac = ((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem()));
|
||||||
sv.addGroup(gr, fac);
|
sv.addGroup(gr, fac);
|
||||||
StudentManagementGUI.displayGroups();
|
DisplayerManager.displayGroups();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,24 +7,24 @@ package org.lumijiez.gui.forms.group;
|
|||||||
import org.lumijiez.base.Group;
|
import org.lumijiez.base.Group;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
public class DeleteGroupForm extends JFrame {
|
public class DeleteGroupForm extends JFrame {
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Group> groupCombo;
|
private final JComboBox<Group> groupCombo;
|
||||||
private final JLabel groupLabel = new JLabel();
|
private final JLabel groupLabel = new JLabel();
|
||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public DeleteGroupForm(Supervisor sv, JTextArea mainTextLabel) {
|
public DeleteGroupForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
this.groupCombo = new JComboBox<>(sv.getFm().getGm().getGroups().toArray(new Group[0]));
|
this.groupCombo = new JComboBox<>(sv.getFm().getGm().getGroups().toArray(new Group[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
@@ -33,7 +33,7 @@ public class DeleteGroupForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Delete a group");
|
titleLabel.setText("Delete a group");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
@@ -88,7 +88,7 @@ public class DeleteGroupForm extends JFrame {
|
|||||||
|
|
||||||
private void submitButtonActionPerformed(ActionEvent evt) {
|
private void submitButtonActionPerformed(ActionEvent evt) {
|
||||||
sv.deleteGroup(((Group)groupCombo.getSelectedItem()));
|
sv.deleteGroup(((Group)groupCombo.getSelectedItem()));
|
||||||
StudentManagementGUI.displayGroups();
|
DisplayerManager.displayGroups();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -8,17 +8,18 @@ import org.lumijiez.base.Faculty;
|
|||||||
import org.lumijiez.base.Group;
|
import org.lumijiez.base.Group;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class EditGroupForm extends JFrame {
|
public class EditGroupForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Faculty> facultyCombo;
|
private final JComboBox<Faculty> facultyCombo;
|
||||||
private final JLabel facultyLabel = new JLabel();
|
private final JLabel facultyLabel = new JLabel();
|
||||||
@@ -28,9 +29,8 @@ public class EditGroupForm extends JFrame {
|
|||||||
private final JLabel nameLabel = new JLabel();
|
private final JLabel nameLabel = new JLabel();
|
||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
public EditGroupForm(Supervisor sv, JTextArea mainTextLabel) {
|
public EditGroupForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
this.facultyCombo = new JComboBox<>(sv.getFm().getFaculties().toArray(new Faculty[0]));
|
||||||
this.groupCombo = new JComboBox<>(sv.getFm().getGm().getGroups().toArray(new Group[0]));
|
this.groupCombo = new JComboBox<>(sv.getFm().getGm().getGroups().toArray(new Group[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
@@ -40,7 +40,7 @@ public class EditGroupForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Edit a group");
|
titleLabel.setText("Edit a group");
|
||||||
nameField.setText("Name...");
|
nameField.setText("Name...");
|
||||||
@@ -56,7 +56,7 @@ public class EditGroupForm extends JFrame {
|
|||||||
submitButton.addActionListener(this::submitButtonActionPerformed);
|
submitButton.addActionListener(this::submitButtonActionPerformed);
|
||||||
cancelButton.addActionListener(this::cancelButtonActionPerformed);
|
cancelButton.addActionListener(this::cancelButtonActionPerformed);
|
||||||
|
|
||||||
ComboBoxRenderers.setFacultyRenderer(facultyCombo);;
|
ComboBoxRenderers.setFacultyRenderer(facultyCombo);
|
||||||
ComboBoxRenderers.setGroupRenderer(groupCombo);
|
ComboBoxRenderers.setGroupRenderer(groupCombo);
|
||||||
|
|
||||||
GroupLayout layout = new GroupLayout(getContentPane());
|
GroupLayout layout = new GroupLayout(getContentPane());
|
||||||
@@ -118,7 +118,7 @@ public class EditGroupForm extends JFrame {
|
|||||||
Faculty fac = ((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem()));
|
Faculty fac = ((Faculty) Objects.requireNonNull(facultyCombo.getSelectedItem()));
|
||||||
Group gr = (Group) Objects.requireNonNull(groupCombo.getSelectedItem());
|
Group gr = (Group) Objects.requireNonNull(groupCombo.getSelectedItem());
|
||||||
sv.editGroup(gr, nameField.getText(), fac);
|
sv.editGroup(gr, nameField.getText(), fac);
|
||||||
StudentManagementGUI.displayGroups();
|
DisplayerManager.displayGroups();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.lumijiez.gui.forms.group;
|
package org.lumijiez.gui.forms.group;
|
||||||
|
|
||||||
|
import org.lumijiez.base.Faculty;
|
||||||
import org.lumijiez.base.Group;
|
import org.lumijiez.base.Group;
|
||||||
import org.lumijiez.base.Student;
|
import org.lumijiez.base.Student;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
@@ -11,13 +12,13 @@ import org.lumijiez.managers.Supervisor;
|
|||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
|
|
||||||
public class ShowGroupForm extends JFrame {
|
public class ShowGroupForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
|
||||||
private final JTextArea mainTextLabel;
|
private final JTextArea mainTextLabel;
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Group> groupCombo;
|
private final JComboBox<Group> groupCombo;
|
||||||
@@ -25,7 +26,6 @@ public class ShowGroupForm extends JFrame {
|
|||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
public ShowGroupForm(Supervisor sv, JTextArea mainTextLabel) {
|
public ShowGroupForm(Supervisor sv, JTextArea mainTextLabel) {
|
||||||
this.sv = sv;
|
|
||||||
this.mainTextLabel = mainTextLabel;
|
this.mainTextLabel = mainTextLabel;
|
||||||
this.groupCombo = new JComboBox<>(sv.getFm().getGm().getGroups().toArray(new Group[0]));
|
this.groupCombo = new JComboBox<>(sv.getFm().getGm().getGroups().toArray(new Group[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
@@ -35,7 +35,7 @@ public class ShowGroupForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
titleLabel.setText("Show a group");
|
titleLabel.setText("Show a group");
|
||||||
groupLabel.setText("Group:");
|
groupLabel.setText("Group:");
|
||||||
cancelButton.setText("Cancel");
|
cancelButton.setText("Cancel");
|
||||||
|
|||||||
@@ -8,10 +8,12 @@ import org.lumijiez.base.Faculty;
|
|||||||
import org.lumijiez.base.Group;
|
import org.lumijiez.base.Group;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@@ -82,7 +84,7 @@ public class AddStudentForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Add a new student");
|
titleLabel.setText("Add a new student");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
@@ -257,7 +259,7 @@ public class AddStudentForm extends JFrame {
|
|||||||
|
|
||||||
if (!name.isEmpty() && !surname.isEmpty() && !email.isEmpty()) {
|
if (!name.isEmpty() && !surname.isEmpty() && !email.isEmpty()) {
|
||||||
sv.addStudent(name, surname, email, group, faculty, birthDate, enrolDate);
|
sv.addStudent(name, surname, email, group, faculty, birthDate, enrolDate);
|
||||||
StudentManagementGUI.displayStudents();
|
DisplayerManager.displayStudents();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ package org.lumijiez.gui.forms.student;
|
|||||||
import org.lumijiez.base.Student;
|
import org.lumijiez.base.Student;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
@@ -16,16 +17,14 @@ import java.util.Objects;
|
|||||||
|
|
||||||
public class DeleteStudentForm extends JFrame {
|
public class DeleteStudentForm extends JFrame {
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Student> studentCombo;
|
private final JComboBox<Student> studentCombo;
|
||||||
private final JLabel studentLabel = new JLabel();
|
private final JLabel studentLabel = new JLabel();
|
||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public DeleteStudentForm(Supervisor sv, JTextArea mainTextLabel) {
|
public DeleteStudentForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
@@ -90,9 +89,7 @@ public class DeleteStudentForm extends JFrame {
|
|||||||
private void submitButtonActionPerformed(ActionEvent evt) {
|
private void submitButtonActionPerformed(ActionEvent evt) {
|
||||||
Student student = ((Student) Objects.requireNonNull(studentCombo.getSelectedItem()));
|
Student student = ((Student) Objects.requireNonNull(studentCombo.getSelectedItem()));
|
||||||
sv.deleteStudent(student);
|
sv.deleteStudent(student);
|
||||||
|
DisplayerManager.displayStudents();
|
||||||
StudentManagementGUI.displayStudents();
|
|
||||||
|
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,10 +9,12 @@ import org.lumijiez.base.Group;
|
|||||||
import org.lumijiez.base.Student;
|
import org.lumijiez.base.Student;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
@@ -21,7 +23,6 @@ public class EditStudentForm extends JFrame {
|
|||||||
Integer[] months = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
|
Integer[] months = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
|
||||||
Integer[] years = new Integer[100];
|
Integer[] years = new Integer[100];
|
||||||
private final Supervisor sv;
|
private final Supervisor sv;
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JTextField emailField = new JTextField();
|
private final JTextField emailField = new JTextField();
|
||||||
private final JLabel emailLabel = new JLabel();
|
private final JLabel emailLabel = new JLabel();
|
||||||
@@ -50,9 +51,8 @@ public class EditStudentForm extends JFrame {
|
|||||||
private final JLabel enrolMonthLabel = new javax.swing.JLabel();
|
private final JLabel enrolMonthLabel = new javax.swing.JLabel();
|
||||||
private final JLabel enrolYearLabel = new javax.swing.JLabel();
|
private final JLabel enrolYearLabel = new javax.swing.JLabel();
|
||||||
|
|
||||||
public EditStudentForm(Supervisor sv, JTextArea mainTextLabel) {
|
public EditStudentForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
this.sv = sv;
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
birthDayField = new JComboBox<>(days);
|
birthDayField = new JComboBox<>(days);
|
||||||
birthMonthField = new JComboBox<>(months);
|
birthMonthField = new JComboBox<>(months);
|
||||||
birthYearField = new JComboBox<>(years);
|
birthYearField = new JComboBox<>(years);
|
||||||
@@ -69,10 +69,10 @@ public class EditStudentForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Edit a student");
|
titleLabel.setText("Edit a student");
|
||||||
nameField.setText(((Student)studentCombo.getSelectedItem()).getName());
|
nameField.setText(((Student) Objects.requireNonNull(studentCombo.getSelectedItem())).getName());
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
cancelButton.setText("Cancel");
|
cancelButton.setText("Cancel");
|
||||||
studentLabel.setText("Student:");
|
studentLabel.setText("Student:");
|
||||||
@@ -102,7 +102,7 @@ public class EditStudentForm extends JFrame {
|
|||||||
cancelButton.addActionListener(this::cancelButtonActionPerformed);
|
cancelButton.addActionListener(this::cancelButtonActionPerformed);
|
||||||
studentCombo.addActionListener(this::studentComboActionPerformed);
|
studentCombo.addActionListener(this::studentComboActionPerformed);
|
||||||
|
|
||||||
ComboBoxRenderers.setFacultyRenderer(facultyCombo);;
|
ComboBoxRenderers.setFacultyRenderer(facultyCombo);
|
||||||
ComboBoxRenderers.setGroupRenderer(groupCombo);
|
ComboBoxRenderers.setGroupRenderer(groupCombo);
|
||||||
ComboBoxRenderers.setStudentRenderer(studentCombo);
|
ComboBoxRenderers.setStudentRenderer(studentCombo);
|
||||||
|
|
||||||
@@ -288,7 +288,7 @@ public class EditStudentForm extends JFrame {
|
|||||||
sv.editStudent(student, name, surname, email, group, faculty /*, birthDate, enrolDate*/);
|
sv.editStudent(student, name, surname, email, group, faculty /*, birthDate, enrolDate*/);
|
||||||
}
|
}
|
||||||
|
|
||||||
StudentManagementGUI.displayStudents();
|
DisplayerManager.displayStudents();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import org.lumijiez.managers.Supervisor;
|
|||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
@@ -42,7 +43,7 @@ public class GradeStudentForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18));
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18));
|
||||||
|
|
||||||
titleLabel.setText("Grade a student");
|
titleLabel.setText("Grade a student");
|
||||||
studentLabel.setText("Student:");
|
studentLabel.setText("Student:");
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ package org.lumijiez.gui.forms.student;
|
|||||||
import org.lumijiez.base.Student;
|
import org.lumijiez.base.Student;
|
||||||
import org.lumijiez.gui.StudentManagementGUI;
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
import org.lumijiez.gui.util.ComponentDecorator;
|
import org.lumijiez.gui.util.ComponentDecorator;
|
||||||
|
import org.lumijiez.gui.util.DisplayerManager;
|
||||||
import org.lumijiez.managers.Supervisor;
|
import org.lumijiez.managers.Supervisor;
|
||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
@@ -16,17 +17,13 @@ import java.awt.event.ActionEvent;
|
|||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class GraduateStudentForm extends JFrame {
|
public class GraduateStudentForm extends JFrame {
|
||||||
private final Supervisor sv;
|
|
||||||
private final JTextArea mainTextLabel;
|
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Student> studentCombo;
|
private final JComboBox<Student> studentCombo;
|
||||||
private final JLabel studentLabel = new JLabel();
|
private final JLabel studentLabel = new JLabel();
|
||||||
private final JButton submitButton = new JButton();
|
private final JButton submitButton = new JButton();
|
||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public GraduateStudentForm(Supervisor sv, JTextArea mainTextLabel) {
|
public GraduateStudentForm(Supervisor sv) {
|
||||||
this.sv = sv;
|
|
||||||
this.mainTextLabel = mainTextLabel;
|
|
||||||
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
}
|
}
|
||||||
@@ -35,14 +32,17 @@ public class GraduateStudentForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
titleLabel.setText("Graduate a Student");
|
|
||||||
|
|
||||||
ComboBoxRenderers.setStudentRenderer(studentCombo);
|
ComboBoxRenderers.setStudentRenderer(studentCombo);
|
||||||
|
|
||||||
studentLabel.setText("Student:");
|
studentLabel.setText("Student:");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
cancelButton.setText("Cancel");
|
cancelButton.setText("Cancel");
|
||||||
|
titleLabel.setText("Graduate a Student");
|
||||||
|
|
||||||
|
cancelButton.addActionListener(this::cancelButtonActionPerformed);
|
||||||
|
submitButton.addActionListener(this::submitButtonActionPerformed);
|
||||||
|
|
||||||
submitButton.setBackground(new Color(204, 255, 204));
|
submitButton.setBackground(new Color(204, 255, 204));
|
||||||
cancelButton.setBackground(new Color(255, 204, 204));
|
cancelButton.setBackground(new Color(255, 204, 204));
|
||||||
@@ -91,7 +91,7 @@ public class GraduateStudentForm extends JFrame {
|
|||||||
private void submitButtonActionPerformed(ActionEvent evt) {
|
private void submitButtonActionPerformed(ActionEvent evt) {
|
||||||
Student student = ((Student) Objects.requireNonNull(studentCombo.getSelectedItem()));
|
Student student = ((Student) Objects.requireNonNull(studentCombo.getSelectedItem()));
|
||||||
student.setGraduated(true);
|
student.setGraduated(true);
|
||||||
StudentManagementGUI.displayStudents();
|
DisplayerManager.displayStudents();
|
||||||
this.dispose();
|
this.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,12 +10,11 @@ import org.lumijiez.managers.Supervisor;
|
|||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class ShowStudentForm extends JFrame {
|
public class ShowStudentForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
|
||||||
private final JTextArea mainTextLabel;
|
private final JTextArea mainTextLabel;
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Student> studentCombo;
|
private final JComboBox<Student> studentCombo;
|
||||||
@@ -24,7 +23,6 @@ public class ShowStudentForm extends JFrame {
|
|||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public ShowStudentForm(Supervisor sv, JTextArea mainTextLabel) {
|
public ShowStudentForm(Supervisor sv, JTextArea mainTextLabel) {
|
||||||
this.sv = sv;
|
|
||||||
this.mainTextLabel = mainTextLabel;
|
this.mainTextLabel = mainTextLabel;
|
||||||
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
@@ -34,7 +32,7 @@ public class ShowStudentForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Show Student");
|
titleLabel.setText("Show Student");
|
||||||
submitButton.setText("Submit");
|
submitButton.setText("Submit");
|
||||||
|
|||||||
@@ -11,12 +11,12 @@ import org.lumijiez.managers.Supervisor;
|
|||||||
import org.lumijiez.gui.util.ComboBoxRenderers;
|
import org.lumijiez.gui.util.ComboBoxRenderers;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
public class ShowStudentGradesForm extends JFrame {
|
public class ShowStudentGradesForm extends JFrame {
|
||||||
|
|
||||||
private final Supervisor sv;
|
|
||||||
private final JTextArea mainTextLabel;
|
private final JTextArea mainTextLabel;
|
||||||
private final JButton cancelButton = new JButton();
|
private final JButton cancelButton = new JButton();
|
||||||
private final JComboBox<Student> studentCombo;
|
private final JComboBox<Student> studentCombo;
|
||||||
@@ -25,7 +25,6 @@ public class ShowStudentGradesForm extends JFrame {
|
|||||||
private final JLabel titleLabel = new JLabel();
|
private final JLabel titleLabel = new JLabel();
|
||||||
|
|
||||||
public ShowStudentGradesForm(Supervisor sv, JTextArea mainTextLabel) {
|
public ShowStudentGradesForm(Supervisor sv, JTextArea mainTextLabel) {
|
||||||
this.sv = sv;
|
|
||||||
this.mainTextLabel = mainTextLabel;
|
this.mainTextLabel = mainTextLabel;
|
||||||
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
this.studentCombo = new JComboBox<>(sv.getFm().getGm().getSm().getStudents().toArray(new Student[0]));
|
||||||
initComponents();
|
initComponents();
|
||||||
@@ -35,7 +34,7 @@ public class ShowStudentGradesForm extends JFrame {
|
|||||||
|
|
||||||
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
titleLabel.setFont(new java.awt.Font("sansserif", 0, 18)); // NOI18N
|
titleLabel.setFont(new java.awt.Font("sansserif", Font.PLAIN, 18)); // NOI18N
|
||||||
|
|
||||||
titleLabel.setText("Show Grades");
|
titleLabel.setText("Show Grades");
|
||||||
studentLabel.setText("Student:");
|
studentLabel.setText("Student:");
|
||||||
|
|||||||
@@ -0,0 +1,68 @@
|
|||||||
|
package org.lumijiez.gui.util;
|
||||||
|
|
||||||
|
import org.lumijiez.base.Faculty;
|
||||||
|
import org.lumijiez.base.Group;
|
||||||
|
import org.lumijiez.base.Student;
|
||||||
|
import org.lumijiez.gui.StudentManagementGUI;
|
||||||
|
|
||||||
|
public class DisplayerManager {
|
||||||
|
public static void displayStudents() {
|
||||||
|
StringBuilder text = new StringBuilder();
|
||||||
|
text.append("==================== Students ======================\n");
|
||||||
|
for (Student student : StudentManagementGUI.getSv().getFm().getGm().getSm().getStudents()) {
|
||||||
|
text.append("Name: ").append(student.getFullname()).append("\nGroup: ").append(student.getGroup().getName())
|
||||||
|
.append("\nEmail:: ").append(student.getEmail()).append("\nGraduated: ").append((student.isGraduated() ? "Yes" : "No"));
|
||||||
|
text.append("\n===============================================\n");
|
||||||
|
}
|
||||||
|
StudentManagementGUI.getMainLabel().setText(text.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void displayGroups() {
|
||||||
|
StringBuilder text = new StringBuilder();
|
||||||
|
text.append("==================== Groups ======================\n");
|
||||||
|
for (Group group : StudentManagementGUI.getSv().getFm().getGm().getGroups()) {
|
||||||
|
text.append("Name: ").append(group.getName()).append("\nFaculty: ").append(group.getFaculty().getName())
|
||||||
|
.append("\nNumber of students: ").append(group.getStudents().size());
|
||||||
|
text.append("\n===============================================\n");
|
||||||
|
}
|
||||||
|
StudentManagementGUI.getMainLabel().setText(text.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void displayFaculties() {
|
||||||
|
StringBuilder text = new StringBuilder();
|
||||||
|
text.append("==================== Faculties ======================\n");
|
||||||
|
for (Faculty fac : StudentManagementGUI.getSv().getFm().getFaculties()) {
|
||||||
|
text.append("Name: ").append(fac.getName()).append("\nSpecialty: ").append(fac.getField().getName())
|
||||||
|
.append("\nAbbreviation: ").append(fac.getAbbreviation())
|
||||||
|
.append("\nNumber of groups: ").append(fac.getGroups().size());
|
||||||
|
text.append("\n===============================================\n");
|
||||||
|
}
|
||||||
|
StudentManagementGUI.getMainLabel().setText(text.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void displayGraduates() {
|
||||||
|
StringBuilder text = new StringBuilder();
|
||||||
|
text.append("=================== Students =====================\n");
|
||||||
|
for (Student st : StudentManagementGUI.getSv().getFm().getGm().getSm().getStudents()) {
|
||||||
|
if (st.isGraduated()) {
|
||||||
|
text.append("Name: ").append(st.getFullname()).append("\nGroup: ").append(st.getGroup().getName())
|
||||||
|
.append("\nGraduated: ").append("Yes");
|
||||||
|
text.append("\n===============================================\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
StudentManagementGUI.getMainLabel().setText(text.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void displayEnrolled() {
|
||||||
|
StringBuilder text = new StringBuilder();
|
||||||
|
text.append("=================== Students =====================\n");
|
||||||
|
for (Student st : StudentManagementGUI.getSv().getFm().getGm().getSm().getStudents()) {
|
||||||
|
if (!st.isGraduated()) {
|
||||||
|
text.append("Name: ").append(st.getFullname()).append("\nGroup: ").append(st.getGroup().getName())
|
||||||
|
.append("\nGraduated: ").append("No");
|
||||||
|
text.append("\n===============================================\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
StudentManagementGUI.getMainLabel().setText(text.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
207
Lab2/src/main/java/org/lumijiez/gui/util/FilePicker.java
Normal file
207
Lab2/src/main/java/org/lumijiez/gui/util/FilePicker.java
Normal file
@@ -0,0 +1,207 @@
|
|||||||
|
package org.lumijiez.gui.util;
|
||||||
|
|
||||||
|
import org.lumijiez.base.Faculty;
|
||||||
|
import org.lumijiez.base.Group;
|
||||||
|
import org.lumijiez.enums.StudyField;
|
||||||
|
import org.lumijiez.managers.Supervisor;
|
||||||
|
|
||||||
|
import javax.swing.*;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.io.BufferedReader;
|
||||||
|
import java.io.FileReader;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.text.ParseException;
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
public class FilePicker extends JFrame {
|
||||||
|
private JButton browseButton;
|
||||||
|
private JButton cancelButton;
|
||||||
|
private JScrollPane exampleLabel;
|
||||||
|
private JLabel formatLabel;
|
||||||
|
private JLabel jLabel1;
|
||||||
|
private JTextArea jTextArea2;
|
||||||
|
private JTextPane filePane;
|
||||||
|
private JButton submitButton;
|
||||||
|
private JButton submitButton1;
|
||||||
|
private JLabel titleLabel;
|
||||||
|
private final Supervisor sv;
|
||||||
|
|
||||||
|
public FilePicker(Supervisor sv) {
|
||||||
|
this.sv = sv;
|
||||||
|
initComponents();
|
||||||
|
};
|
||||||
|
|
||||||
|
private void initComponents() {
|
||||||
|
|
||||||
|
submitButton = new JButton();
|
||||||
|
jLabel1 = new JLabel();
|
||||||
|
titleLabel = new JLabel();
|
||||||
|
browseButton = new JButton();
|
||||||
|
formatLabel = new JLabel();
|
||||||
|
exampleLabel = new JScrollPane();
|
||||||
|
jTextArea2 = new JTextArea();
|
||||||
|
cancelButton = new JButton();
|
||||||
|
submitButton1 = new JButton();
|
||||||
|
filePane = new JTextPane();
|
||||||
|
|
||||||
|
titleLabel.setFont(new java.awt.Font("Segoe UI", 0, 24)); // NOI18N
|
||||||
|
|
||||||
|
submitButton.addActionListener(this::submitButtonActionPerformed);
|
||||||
|
cancelButton.addActionListener(this::cancelButtonActionPerformed);
|
||||||
|
browseButton.addActionListener(this::browseButtonActionPerformed);
|
||||||
|
|
||||||
|
ComponentDecorator.submitButton(submitButton);
|
||||||
|
ComponentDecorator.cancelButton(cancelButton);
|
||||||
|
|
||||||
|
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
titleLabel.setText("Pick a file to load a batch");
|
||||||
|
submitButton.setText("Submit");
|
||||||
|
browseButton.setText("Browse");
|
||||||
|
formatLabel.setText("File format example:");
|
||||||
|
cancelButton.setText("Cancel");
|
||||||
|
|
||||||
|
|
||||||
|
jTextArea2.setColumns(15);
|
||||||
|
jTextArea2.setRows(5);
|
||||||
|
jTextArea2.setText("name: John\nsurname: Doe\nemail: john.doe@example.com\ngroup: FAF-223\nfaculty: FCIM\nbirthdate: 1998-05-15\nenroldate: 2017-09-01\nspecialty: Mechanical Engineering");
|
||||||
|
exampleLabel.setViewportView(jTextArea2);
|
||||||
|
|
||||||
|
GroupLayout layout = new GroupLayout(getContentPane());
|
||||||
|
getContentPane().setLayout(layout);
|
||||||
|
layout.setHorizontalGroup(
|
||||||
|
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
|
||||||
|
.addGroup(layout.createSequentialGroup()
|
||||||
|
.addGap(25, 25, 25)
|
||||||
|
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
|
||||||
|
.addGroup(layout.createSequentialGroup()
|
||||||
|
.addComponent(filePane, GroupLayout.PREFERRED_SIZE, 215, GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addGap(18, 18, 18)
|
||||||
|
.addComponent(browseButton))
|
||||||
|
.addGroup(layout.createSequentialGroup()
|
||||||
|
.addGap(104, 104, 104)
|
||||||
|
.addComponent(cancelButton)
|
||||||
|
.addGap(18, 18, 18)
|
||||||
|
.addComponent(submitButton))
|
||||||
|
.addComponent(formatLabel)
|
||||||
|
.addComponent(exampleLabel, GroupLayout.PREFERRED_SIZE, 307, GroupLayout.PREFERRED_SIZE))
|
||||||
|
.addContainerGap(33, Short.MAX_VALUE))
|
||||||
|
.addGroup(layout.createSequentialGroup()
|
||||||
|
.addGap(41, 41, 41)
|
||||||
|
.addComponent(titleLabel)
|
||||||
|
.addGap(0, 0, Short.MAX_VALUE)));
|
||||||
|
layout.setVerticalGroup(
|
||||||
|
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
|
||||||
|
.addGroup(layout.createSequentialGroup()
|
||||||
|
.addGap(15, 15, 15)
|
||||||
|
.addComponent(titleLabel)
|
||||||
|
.addGap(7, 7, 7)
|
||||||
|
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
|
||||||
|
.addComponent(filePane, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addComponent(browseButton))
|
||||||
|
.addGap(18, 18, 18)
|
||||||
|
.addComponent(formatLabel)
|
||||||
|
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(exampleLabel, GroupLayout.PREFERRED_SIZE, 208, GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 23, Short.MAX_VALUE)
|
||||||
|
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
|
||||||
|
.addComponent(cancelButton)
|
||||||
|
.addComponent(submitButton))
|
||||||
|
.addGap(23, 23, 23)));
|
||||||
|
pack();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void cancelButtonActionPerformed(ActionEvent evt) {
|
||||||
|
this.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void browseButtonActionPerformed(ActionEvent evt) {
|
||||||
|
JFileChooser fileChooser = new JFileChooser();
|
||||||
|
int returnVal = fileChooser.showOpenDialog(this);
|
||||||
|
if (returnVal == JFileChooser.APPROVE_OPTION) {
|
||||||
|
java.io.File file = fileChooser.getSelectedFile();
|
||||||
|
filePane.setText(file.getAbsolutePath());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void submitButtonActionPerformed(ActionEvent evt) {
|
||||||
|
try (BufferedReader reader = new BufferedReader(new FileReader(filePane.getText()))) {
|
||||||
|
String line = "1";
|
||||||
|
String name = null;
|
||||||
|
String surname = null;
|
||||||
|
String email = null;
|
||||||
|
Date birth = null;
|
||||||
|
Date enrol = null;
|
||||||
|
String groupName = null;
|
||||||
|
String facultyName = null;
|
||||||
|
StudyField specialty = null;
|
||||||
|
|
||||||
|
|
||||||
|
while (true) {
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
if (line.isEmpty()) line = reader.readLine();
|
||||||
|
name = line.substring("name: ".length());
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
surname = line.substring("surname: ".length());
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
email = line.substring("email: ".length());
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
groupName = line.substring("group: ".length());
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
facultyName = line.substring("faculty: ".length());
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
|
birth = dateFormat.parse(line.substring("birthdate: ".length()));
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
enrol = dateFormat.parse(line.substring("enroldate: ".length()));
|
||||||
|
|
||||||
|
line = reader.readLine();
|
||||||
|
if (line == null) break;
|
||||||
|
String spec = line.substring("specialty: ".length());
|
||||||
|
|
||||||
|
|
||||||
|
if (StudyField.getEnum(spec) == null) {
|
||||||
|
specialty = StudyField.DEFAULT_UNASSIGNED;
|
||||||
|
} else {
|
||||||
|
specialty = StudyField.getEnum(spec);
|
||||||
|
}
|
||||||
|
|
||||||
|
Faculty faculty;
|
||||||
|
Group group;
|
||||||
|
if (sv.getFacultyByName(facultyName) == null) {
|
||||||
|
assert specialty != null;
|
||||||
|
faculty = new Faculty(facultyName, specialty.getAbbreviation(), specialty);
|
||||||
|
sv.addFaculty(faculty);
|
||||||
|
} else {
|
||||||
|
faculty = sv.getFacultyByName(facultyName);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sv.getGroupByName(groupName) == null) {
|
||||||
|
group = new Group(groupName);
|
||||||
|
sv.addGroup(group, sv.getFacultyByName(facultyName));
|
||||||
|
} else {
|
||||||
|
group = sv.getGroupByName(groupName);
|
||||||
|
}
|
||||||
|
|
||||||
|
sv.addStudent(name, surname, email, group, faculty, birth, enrol);
|
||||||
|
}
|
||||||
|
} catch (IOException | ParseException ex) {
|
||||||
|
throw new RuntimeException(ex);
|
||||||
|
}
|
||||||
|
this.dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -4,6 +4,7 @@ import org.lumijiez.base.Faculty;
|
|||||||
import org.lumijiez.base.Grade;
|
import org.lumijiez.base.Grade;
|
||||||
import org.lumijiez.base.Group;
|
import org.lumijiez.base.Group;
|
||||||
import org.lumijiez.base.Student;
|
import org.lumijiez.base.Student;
|
||||||
|
import org.lumijiez.enums.StudyField;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@@ -77,7 +78,24 @@ public class Supervisor implements Serializable {
|
|||||||
getFm().getGm().getSm().deleteStudent(st);
|
getFm().getGm().getSm().deleteStudent(st);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Faculty getFacultyByName(String facultyName) {
|
||||||
|
for (Faculty faculty : getFm().getFaculties()) {
|
||||||
|
if (faculty.getName().equals(facultyName))
|
||||||
|
return faculty;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Group getGroupByName(String groupName) {
|
||||||
|
for (Group group : getFm().getGm().getGroups()) {
|
||||||
|
if (group.getName().equals(groupName))
|
||||||
|
return group;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
public FacultyManager getFm() {
|
public FacultyManager getFm() {
|
||||||
return fm;
|
return fm;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user