Skip to content
Snippets Groups Projects
Commit 407105c8 authored by Eilert Tunheim's avatar Eilert Tunheim
Browse files

Synced checkboxes with menubar boxes

parent ddeb74e2
No related branches found
No related tags found
No related merge requests found
......@@ -22,6 +22,7 @@ import java.time.format.DateTimeFormatter;
import java.util.*;
import static com.application.GUI.LineChartFunctionality.getDataPointsXAxis;
import static com.application.Main.*;
public class LineChartFunctionality {
......@@ -73,25 +74,40 @@ public class LineChartFunctionality {
getLineChart().getData().clear();
if(printRegressionConfidenceInterval){
if(isPrintRegressionConfidenceInterval()){
updateLineChart(getRegressionSeriesConfidenceInterval());
getMenuViewRegressionShadow().setSelected(true);
getRegressionConfidenceIntervalBox().setSelected(true);
} else {
updateLineChart(new XYChart.Series<>());
getMenuViewRegressionShadow().setSelected(false);
getRegressionConfidenceIntervalBox().setSelected(false);
}
if(printRegression){
if(isPrintRegression()){
updateLineChart(getRegressionSeries());
getMenuViewRegression().setSelected(true);
getRegressionBox().setSelected(true);
} else {
updateLineChart(new XYChart.Series<>());
getMenuViewRegression().setSelected(false);
getRegressionBox().setSelected(false);
}
if(printLiveData){
if(isPrintLiveData()){
updateLineChart(getLiveDataSeries());
getMenuViewLiveData().setSelected(true);
getLiveDataBox().setSelected(true);
} else {
updateLineChart(new XYChart.Series<>());
getMenuViewLiveData().setSelected(false);
getLiveDataBox().setSelected(false);
}
if(printPreviousData){
if(isPrintPreviousData()){
getPreviousBox().setSelected(true);
getMenuViewPreviousData().setSelected(true);
// If there are more than 5 series, adds 3 new empty series to keep the color scheme
//int index = getLineChart().getData().size();
......@@ -99,18 +115,17 @@ public class LineChartFunctionality {
int index = getLineChart().getData().size();
//System.out.println(getPreviousData().size());
if (index % 8 == 0 ){
System.out.println(getLineChart().getData().size());
for (int j = 0; j < 3; j++) {
updateLineChart(new XYChart.Series<>());
//index++;
System.out.println("@@@@@@@");
}
}
System.out.println("Linechart size: "+getLineChart().getData().size());
updateLineChart(getPreviousData().get(i));
//index++;
}
} else {
getPreviousBox().setSelected(false);
getMenuViewPreviousData().setSelected(false);
}
}
......
......@@ -51,6 +51,16 @@ public class Main extends Application {
private static TextField moistureGoalText;
private static TextField timeLeftText;
private static CheckMenuItem menuViewLiveData;
private static CheckMenuItem menuViewRegression;
private static CheckMenuItem menuViewRegressionShadow;
private static CheckMenuItem menuViewPreviousData;
private static CheckBox liveDataBox;
private static CheckBox regressionBox;
private static CheckBox regressionConfidenceIntervalBox;
private static CheckBox previousBox;
/**
* Starts the application
*
......@@ -155,18 +165,61 @@ public class Main extends Application {
// Defining the individual menus
Menu menuFile = new Menu("File");
Menu menuEdit = new Menu("Edit");
Menu menuView = new Menu("View");
Menu menuHelp = new Menu("Help");
MenuItem menuFileExit = new MenuItem("Exit");
menuFileExit.setOnAction(event -> exitApplication());
setMenuViewLiveData(new CheckMenuItem ("Live Data"));
setMenuViewRegression(new CheckMenuItem ("Regression"));
setMenuViewRegressionShadow(new CheckMenuItem ("Regression Shadow"));
setMenuViewPreviousData(new CheckMenuItem ("Previous Data"));
getMenuViewLiveData().setOnAction(event -> {
if(getMenuViewLiveData().isSelected()){
LineChartFunctionality.setPrintLiveData(true);
LineChartFunctionality.printGraphs();
} else {
LineChartFunctionality.setPrintLiveData(false);
LineChartFunctionality.printGraphs();
}
});
getMenuViewRegression().setOnAction(event -> {
if(getMenuViewRegression().isSelected()){
LineChartFunctionality.setPrintRegression(true);
LineChartFunctionality.printGraphs();
} else {
LineChartFunctionality.setPrintRegression(false);
LineChartFunctionality.printGraphs();
}
});
getMenuViewRegressionShadow().setOnAction(event -> {
if(getMenuViewRegressionShadow().isSelected()){
LineChartFunctionality.setPrintRegressionConfidenceInterval(true);
LineChartFunctionality.printGraphs();
} else {
LineChartFunctionality.setPrintRegressionConfidenceInterval(false);
LineChartFunctionality.printGraphs();
}
});
getMenuViewPreviousData().setOnAction(event -> {
if(getMenuViewPreviousData().isSelected()){
LineChartFunctionality.setPrintPreviousData(true);
LineChartFunctionality.printGraphs();
} else {
LineChartFunctionality.setPrintPreviousData(false);
LineChartFunctionality.printGraphs();
}
});
menuFileExit.setOnAction(event -> exitApplication());
menuFile.getItems().addAll(menuFileExit);
menuView.getItems().addAll(getMenuViewLiveData(), getMenuViewRegression(), getMenuViewRegressionShadow(), getMenuViewPreviousData());
// Adding the menus to the menubar
menuBar.getMenus().addAll(menuFile, menuEdit, menuHelp);
menuBar.getMenus().addAll(menuFile, menuView, menuHelp);
// Returns the menubar
return menuBar;
......@@ -326,10 +379,10 @@ public class Main extends Application {
HBox hBox = new HBox();
Label liveDataText = new Label("View Live Data");
CheckBox liveDataBox = new CheckBox();
liveDataBox.setSelected(true);
liveDataBox.setOnAction(event -> {
if(liveDataBox.isSelected()){
setLiveDataBox(new CheckBox());
getLiveDataBox().setSelected(true);
getLiveDataBox().setOnAction(event -> {
if(getLiveDataBox().isSelected()){
LineChartFunctionality.setPrintLiveData(true);
LineChartFunctionality.printGraphs();
......@@ -340,10 +393,10 @@ public class Main extends Application {
});
Label regressionText = new Label("View Regression");
CheckBox regressionBox = new CheckBox();
regressionBox.setSelected(true);
regressionBox.setOnAction(event -> {
if(regressionBox.isSelected()){
setRegressionBox(new CheckBox());
getRegressionBox().setSelected(true);
getRegressionBox().setOnAction(event -> {
if(getRegressionBox().isSelected()){
LineChartFunctionality.setPrintRegression(true);
LineChartFunctionality.printGraphs();
......@@ -354,10 +407,10 @@ public class Main extends Application {
});
Label regressionConfidenceIntervalText = new Label("View Regression Shadow");
CheckBox regressionConfidenceIntervalBox = new CheckBox();
regressionConfidenceIntervalBox.setSelected(false);
regressionConfidenceIntervalBox.setOnAction(event -> {
if(regressionConfidenceIntervalBox.isSelected()){
setRegressionConfidenceIntervalBox(new CheckBox());
getRegressionConfidenceIntervalBox().setSelected(false);
getRegressionConfidenceIntervalBox().setOnAction(event -> {
if(getRegressionConfidenceIntervalBox().isSelected()){
LineChartFunctionality.setPrintRegressionConfidenceInterval(true);
LineChartFunctionality.printGraphs();
} else {
......@@ -367,10 +420,10 @@ public class Main extends Application {
});
Label previousText = new Label("View Previous Data");
CheckBox previousBox = new CheckBox();
previousBox.setSelected(true);
previousBox.setOnAction(event -> {
if(previousBox.isSelected()){
setPreviousBox(new CheckBox());
getPreviousBox().setSelected(true);
getPreviousBox().setOnAction(event -> {
if(getPreviousBox().isSelected()){
LineChartFunctionality.setPrintPreviousData(true);
LineChartFunctionality.printGraphs();
} else {
......@@ -413,6 +466,70 @@ public class Main extends Application {
public LineChartFunctionality getLineChartFunctionality() {
return lineChartFunctionality;
}
public static CheckMenuItem getMenuViewLiveData() {
return menuViewLiveData;
}
public static void setMenuViewLiveData(CheckMenuItem menuViewLiveData) {
Main.menuViewLiveData = menuViewLiveData;
}
public static CheckMenuItem getMenuViewRegression() {
return menuViewRegression;
}
public void setMenuViewRegression(CheckMenuItem menuViewRegression) {
Main.menuViewRegression = menuViewRegression;
}
public static CheckMenuItem getMenuViewRegressionShadow() {
return menuViewRegressionShadow;
}
public void setMenuViewRegressionShadow(CheckMenuItem menuViewRegressionShadow) {
this.menuViewRegressionShadow = menuViewRegressionShadow;
}
public static CheckMenuItem getMenuViewPreviousData() {
return menuViewPreviousData;
}
public void setMenuViewPreviousData(CheckMenuItem menuViewPreviousData) {
Main.menuViewPreviousData = menuViewPreviousData;
}
public static CheckBox getLiveDataBox() {
return liveDataBox;
}
public void setLiveDataBox(CheckBox liveDataBox) {
Main.liveDataBox = liveDataBox;
}
public static CheckBox getRegressionBox() {
return regressionBox;
}
public void setRegressionBox(CheckBox regressionBox) {
Main.regressionBox = regressionBox;
}
public static CheckBox getRegressionConfidenceIntervalBox() {
return regressionConfidenceIntervalBox;
}
public void setRegressionConfidenceIntervalBox(CheckBox regressionConfidenceIntervalBox) {
Main.regressionConfidenceIntervalBox = regressionConfidenceIntervalBox;
}
public static CheckBox getPreviousBox() {
return previousBox;
}
public void setPreviousBox(CheckBox previousBox) {
Main.previousBox = previousBox;
}
}
No preview for this file type
No preview for this file type
No preview for this file type
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment