@Override
	public void actionPerformed(ActionEvent e) {

		// New button clicked
		if (e.getSource() == newPersonButton) {
			submitButton.setVisible(true);
			newPersonButton.setVisible(false);
			deletePersonButton.setEnabled(false);
			editPersonButton.setEnabled(false);
			cancelButton.setVisible(true);
			if (submitButtonMode != 3)
				submitButtonMode = 1;
			comboBox.setEnabled(false);
			if (emptiedList) {
				idNumberLabel.setText("" + Person.getUniqueId());
			}
		}
		// Edit button clicked
		if (e.getSource() == editPersonButton) {
			submitButtonMode = 2;
			editPersonButton.setVisible(false);
			submitButton.setVisible(true);
			cancelEditButton.setVisible(true);
			newPersonButton.setEnabled(false);
			deletePersonButton.setEnabled(false);
			comboBox.setEnabled(false);
		}
		// Cancel button clicked
		if (e.getSource() == cancelButton) {
			submitButton.setVisible(false);
			newPersonButton.setVisible(true);
			cancelButton.setVisible(false);
			comboBox.setEnabled(true);
			if (!emptiedList) {
				deletePersonButton.setEnabled(true);
				editPersonButton.setEnabled(true);
			}
			emailLabel.setForeground(Color.black);
			nameLabel.setForeground(Color.black);
			contactNumberLabel.setForeground(Color.black);
			addressLabel.setForeground(Color.black);

		}
		// Cancel button clicked in edit mode
		if (e.getSource() == cancelEditButton) {
			submitButton.setVisible(false);
			cancelEditButton.setVisible(false);
			deletePersonButton.setEnabled(true);
			newPersonButton.setEnabled(true);
			editPersonButton.setEnabled(true);
			editPersonButton.setVisible(true);
			comboBox.setEnabled(true);
			emailLabel.setForeground(Color.black);
			nameLabel.setForeground(Color.black);
			contactNumberLabel.setForeground(Color.black);
			addressLabel.setForeground(Color.black);
		}
		// Refresh the view
		revalidate();
		repaint();
	}