Comment this code using javadoc: import java.io.File; import java.io.FileNotFoun
ID: 3696028 • Letter: C
Question
Comment this code using javadoc:
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.util.Scanner;
import javafx.application.Application;
import javafx.application.Platform;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.ListView;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.control.SeparatorMenuItem;
import javafx.scene.control.Tab;
import javafx.scene.control.TabPane;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
import bcs345.hwk.schedule.business.Appointment;
import bcs345.hwk.schedule.business.PersonAppointments;
public class PersonAppointmentsApplication extends Application {
protected PersonAppointments PersonAppointments = new PersonAppointments();
protected int apptCountNumber;
private TextField firstName;
private TextField lastName;
private TextField apptCount;
VBox vBox = new VBox();
private ObservableList appointments = FXCollections.observableArrayList();
@Override
public void start(Stage primaryStage) throws Exception {
primaryStage.setTitle("Person Appointments");
createMenu(primaryStage);
createTabs();
Scene scene = new Scene(vBox, 400, 350, Color.WHITE);
primaryStage.setScene(scene);
primaryStage.show();
}
private void createMenu(Stage primaryStage) {
MenuBar menuBar = new MenuBar();
vBox.getChildren().add(menuBar);
// --- Menu File
Menu fileMenu = new Menu("File");
MenuItem openItem = new MenuItem("Open...");
MenuItem saveAsItem = new MenuItem("Save As...");
MenuItem saveReportItem = new MenuItem("Save Report...");
MenuItem exitItem = new MenuItem("Exit");
fileMenu.getItems().addAll(openItem, new SeparatorMenuItem(), saveAsItem, saveReportItem,
new SeparatorMenuItem(), exitItem);
menuBar.getMenus().addAll(fileMenu);
openItem.setOnAction(new EventHandler() {
@Override
public void handle(ActionEvent Event) {
String currentDir = System.getProperty("user.dir") + File.separator;
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Open PersonAppointments File");
fileChooser.setInitialDirectory(new File(currentDir));
File selectedFile = fileChooser.showOpenDialog(primaryStage);
if (selectedFile != null) {
Scanner s;
try {
s = new Scanner(selectedFile);
PersonAppointments.Read(s);
s.close();
fillGuiComponents();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
});
saveAsItem.setOnAction(new EventHandler() {
@Override
public void handle(ActionEvent Event) {
String currentDir = System.getProperty("user.dir") + File.separator;
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Save As");
fileChooser.setInitialDirectory(new File(currentDir));
File selectedFile = fileChooser.showSaveDialog(primaryStage);
if (selectedFile != null) {
try {
PrintStream ps = new PrintStream(selectedFile);
fillPersonAppointments();
PersonAppointments.Write(ps);
ps.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
});
saveReportItem.setOnAction(new EventHandler() {
@Override
public void handle(ActionEvent Event) {
String currentDir = System.getProperty("user.dir") + File.separator;
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Save As");
fileChooser.setInitialDirectory(new File(currentDir));
File selectedFile = fileChooser.showSaveDialog(primaryStage);
if (selectedFile != null) {
try {
PrintStream ps = new PrintStream(selectedFile);
fillPersonAppointments();
PersonAppointments.Report(ps);
ps.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
});
exitItem.setOnAction(new EventHandler() {
@Override
public void handle(ActionEvent Event) {
Platform.exit();
}
});
}
private void createTabs() {
TabPane tabPane = new TabPane();
tabPane.getTabs().addAll(createPersonInfoTab(), createAppointmentsTab());
vBox.getChildren().add(tabPane);
}
private Tab createPersonInfoTab() {
Tab pInfoTab = new Tab("Person Info");
pInfoTab.setClosable(false);
GridPane grid = new GridPane();
grid.setPadding(new Insets(10, 10, 10, 10));
grid.setVgap(3);
grid.setHgap(3);
grid.add(new Label("First name"), 0, 0);
firstName = new TextField();
firstName.setPrefColumnCount(10);
grid.add(firstName, 1, 0);
grid.add(new Label("Last name"), 0, 1);
lastName = new TextField();
grid.add(lastName, 1, 1);
grid.add(new Label("Appt count"), 0, 2);
apptCount = new TextField();
apptCount.setEditable(false);
grid.add(apptCount, 1, 2);
pInfoTab.setContent(grid);
return pInfoTab;
}
private Tab createAppointmentsTab() {
Tab appTab = new Tab("Appointments");
appTab.setClosable(false);
ListView listView = new ListView();
listView.setPrefSize(400, 290);
listView.setItems(appointments);
appTab.setContent(listView);
return appTab;
}
private void fillGuiComponents() {
firstName.setText(PersonAppointments.getFirst());
lastName.setText(PersonAppointments.getLast());
fillList();
apptCount.setText(apptCountNumber > 0 ? String.valueOf(apptCountNumber) : "");
}
private void fillPersonAppointments() {
PersonAppointments.setFirst(firstName.getText());
PersonAppointments.setLast(lastName.getText());
}
private void fillList() {
apptCountNumber = 0;
while (true) {
try {
Appointment app = PersonAppointments.GetByIndex(apptCountNumber);
if (app != null) {
appointments.add(app);
apptCountNumber++;
} else {
break;
}
} catch (ArrayIndexOutOfBoundsException | NullPointerException e) {
break;
}
}
}
}
Explanation / Answer
Firstly install javadoc plugin and configure it with IDE .in case of eclipse ,select all code and press cntrl+shift+/.
else comment it using syntax
/**
*
*
*
*/
use this syntax ,place * infront of each line as shown below in example