| public class DivModPresenterObs extends Applet implements Observer{
private DivModCalculator modelObject;
private DivModListener listener;
private Label title;
private TextField dividend, divisor;
private Label quotient,rest;
public DivModPresenterObs(){
modelObject = new DivModCalculator (this);
listener = new DivModListener (modelObject, this);
title = new Label ("Div Mod Calculator");
dividend = new TextField ("0",5);
divisor = new TextField ("0",5);
quotient = new Label ("Kvotient:");
rest = new Label ("Rest:") ;
}
public int getDividend(){
String strResult = dividend.getText();
return Integer.parseInt(strResult);
}
public int getDivisor(){
String strResult = divisor.getText();
return Integer.parseInt(strResult);
}
public void init() {
dividend.addActionListener (listener);
divisor.addActionListener (listener);
setLayout(new GridLayout(6,1));
add(title);
add(divisor); add(dividend);
add(quotient); add(rest);
resize (200,200);
}
public void update(Observable o, Object arg){
// This view needs updating. Let us find out what happened in the model.
IntPair divModObject = modelObject.getResult();
quotient.setText("Kvotient: " + Integer.toString(divModObject.firstInt,10));
rest.setText("Rest: " + Integer.toString(divModObject.secondInt,10));
}
} // end DivModPresenterObs |