Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.gamer;
- import javafx.application.Application;
- import javafx.scene.Scene;
- import javafx.scene.control.*;
- import javafx.scene.layout.GridPane;
- import javafx.scene.text.Text;
- import javafx.stage.Stage;
- public class Pizza extends Application {
- private CheckBox cbCheese = new CheckBox("Extra Cheese");
- private CheckBox cbPeperoni = new CheckBox("Peperoni");
- private CheckBox cbPeppers = new CheckBox("Peppers");
- private CheckBox cbOlives = new CheckBox("Olives");
- private CheckBox cbHam = new CheckBox("Ham");
- private CheckBox cbBacon = new CheckBox("Bacon");
- private CheckBox cbMushrooms = new CheckBox("Mushroom");
- private CheckBox cbPineapples = new CheckBox("Pineapple");
- private RadioButton rbSizeSmall = new RadioButton("Small");
- private RadioButton rbSizeMedium = new RadioButton("Medium");
- private RadioButton rbSizeLarge = new RadioButton("Large");
- private Button btCalculate = new Button("Place Order");
- private GridPane pane = new GridPane();
- private double total =0;
- private StringBuffer summary = new StringBuffer();
- @Override
- public void start(Stage primaryStage){
- // ObservableList<Integer> quantity = new ObservableList<Integer>();
- // for (int i=1; i<11; i++){
- // quantity.add(i);
- // }
- // ListView listView = new ListView(quantity);
- ToggleGroup group = new ToggleGroup();
- rbSizeSmall.setToggleGroup(group);
- rbSizeMedium.setToggleGroup(group);
- rbSizeLarge.setToggleGroup(group);
- pane.add(cbCheese,1,0);
- pane.add(cbBacon,1,1);
- pane.add(cbHam,1,2);
- pane.add(cbMushrooms,1,3);
- pane.add(cbOlives,1,4);
- pane.add(cbPeperoni,1,5);
- pane.add(cbPeppers,1,6);
- pane.add(cbPineapples,1,7);
- pane.add(btCalculate,1,8);
- btCalculate.setOnAction(event -> DisplayOrder());
- pane.add(rbSizeSmall,0,0);
- pane.add(rbSizeMedium,0,1);
- pane.add(rbSizeLarge,0,2);
- Scene scene = new Scene(pane);
- primaryStage.setScene(scene);
- primaryStage.setTitle("Pizza Order");
- primaryStage.show();
- }
- private double CalculateTotal(){
- int amountOfToppings = 0;
- double PRICEPERTOPPING = 1.49;
- if (rbSizeSmall.isSelected()){
- double PRICESMALL = 7.49;
- total+= PRICESMALL;
- summary.append("Small pizza with: ");
- } else if (rbSizeMedium.isSelected()){
- double PRICEMEDIUM = 8.99;
- total+= PRICEMEDIUM;
- summary.append("Medium pizza with: ");
- } else if (rbSizeLarge.isSelected()){
- double PRICELARGE = 10.49;
- total+= PRICELARGE;
- summary.append("Large pizza with: ");
- }
- if (cbCheese.isSelected()){
- amountOfToppings++;
- summary.append("Cheese ");
- }
- if (cbBacon.isSelected()){
- amountOfToppings++;
- summary.append("Bacon ");
- }
- if (cbHam.isSelected()){
- amountOfToppings++;
- summary.append("Ham ");
- }
- if (cbMushrooms.isSelected()){
- amountOfToppings++;
- summary.append("Mushrooms ");
- }
- if (cbOlives.isSelected()){
- amountOfToppings++;
- summary.append("Olives ");
- }
- if (cbPeperoni.isSelected()){
- amountOfToppings++;
- summary.append("Peperoni ");
- }
- if (cbPeppers.isSelected()){
- amountOfToppings++;
- summary.append("Peppers ");
- }
- if (cbPineapples.isSelected()){
- amountOfToppings++;
- summary.append("Pineapples ");
- }
- total +=amountOfToppings* PRICEPERTOPPING;
- // total*=numberOfPizzas;
- return total;
- }
- private void DisplayOrder(){
- pane.getChildren().clear();
- pane.add(new Label("Price: "),0,0);
- double subtotal = CalculateTotal();
- pane.add(new Text("$"+subtotal+" +$2.00 Delivery charge"),1,0);
- pane.add(new Label("Order details: "),0,1);
- pane.add(new Text(summary.toString()),1,1);
- pane.add(new Label("Subtotal: "),0,2);
- pane.add(new Text("$"+(subtotal+2.00)),1,2);
- Button btClearOrder = new Button("Clear order");
- btClearOrder.setOnAction(event -> ClearOrder());
- pane.add(btClearOrder,0,3);
- }
- private void ClearOrder(){
- summary.replace(0,summary.length(),"");
- total=0;
- pane.getChildren().clear();
- pane.add(cbCheese,1,0);
- pane.add(cbBacon,1,1);
- pane.add(cbHam,1,2);
- pane.add(cbMushrooms,1,3);
- pane.add(cbOlives,1,4);
- pane.add(cbPeperoni,1,5);
- pane.add(cbPeppers,1,6);
- pane.add(cbPineapples,1,7);
- pane.add(btCalculate,1,8);
- pane.add(rbSizeSmall,0,0);
- pane.add(rbSizeMedium,0,1);
- pane.add(rbSizeLarge,0,2);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement