package application;

import java.net.URL;
import java.util.ResourceBundle;

import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;



public class SampleController  implements Initializable {

    @FXML
    private Button addbtn;

    @FXML
    private Button divisionbtn;

    @FXML
    private TextField fieldx1;

    @FXML
    private TextField fieldx2;

    @FXML
    private TextField fieldy1;

    @FXML
    private TextField fieldy2;

    @FXML
    private Label lblx1;

    @FXML
    private Label lblx2;

    @FXML
    private Label lbly1;

    @FXML
    private Label lbly2;

    @FXML
    private Button multiplybtn;

    @FXML
    private Label result;

    @FXML
    private Button subtractbtn;

    @FXML
    private VBox vbox1, vbox2, vbox3;
    
	Rational r1 = new Rational();
	Rational r2 = new Rational();
	Rational temp = new Rational();

    @FXML
    public void addMethod(ActionEvent event) {
    	r1.setX(Integer.parseInt(fieldx1.getText()));
    	r1.setY(Integer.parseInt(fieldy1.getText()));
    	r2.setX(Integer.parseInt(fieldx2.getText()));
    	r2.setY(Integer.parseInt(fieldy2.getText()));  
    	//temp = temp.add(r1, r2);
    //	result.setText(event.getSource().toString());
    	if(event.getSource().equals(addbtn)) {
    		temp = temp.add(r1, r2);
    		result.setText("Add rsesult : " + temp.getX() + "/" + temp.getY());
    		
    	}
      //   result.setText("Add rsesult : " + temp.getX() + "/" + temp.getY());
    }
    @FXML
    public void multiplyMethod(ActionEvent event) {
    	r1.setX(Integer.parseInt(fieldx1.getText()));
    	r1.setY(Integer.parseInt(fieldy1.getText()));
    	r2.setX(Integer.parseInt(fieldx2.getText()));
    	r2.setY(Integer.parseInt(fieldy2.getText()));  
    	temp = temp.multiply(r1, r2);
        result.setText("Multiply rsesult : " + temp.getX() + "/" + temp.getY());
    }
    @FXML
    public void subtractMethod(ActionEvent event) {
    	r1.setX(Integer.parseInt(fieldx1.getText()));
    	r1.setY(Integer.parseInt(fieldy1.getText()));
    	r2.setX(Integer.parseInt(fieldx2.getText()));
    	r2.setY(Integer.parseInt(fieldy2.getText()));  
    	temp = temp.multiply(r1, r2);
        result.setText("Subtract rsesult : " + temp.getX() + "/" + temp.getY());
    }
    @FXML
    public void divisionMethod(ActionEvent event) {
    	
    	r1.setX(Integer.parseInt(fieldx1.getText()));
    	r1.setY(Integer.parseInt(fieldy1.getText()));
    	r2.setX(Integer.parseInt(fieldx2.getText()));
    	r2.setY(Integer.parseInt(fieldy2.getText()));  
    	temp = temp.multiply(r1, r2);
        result.setText("Division rsesult : " + temp.getX() + "/" + temp.getY());
    }
	@Override
	public void initialize(URL arg0, ResourceBundle arg1) {
		String styles =
		        "-fx-background-color: white;" +
		        "-fx-border-color: blue;" +
		        "-fx-border-width : 2px";
		result.setStyle(styles);
		vbox2.getStylesheets().add(getClass().getResource("vboxstyle.css").toExternalForm());
		vbox3.getStylesheets().add(getClass().getResource("vboxstyle.css").toExternalForm());
	}

}
