final Button point = new ButtonDigit(controller, ".");
g.setWidget(3, 2, point);
// put the operators in the grid
final Button divide = new ButtonOperator(controller,
new OperatorDivide());
g.setWidget(0, 3, divide);
final Button multiply = new ButtonOperator(controller,
new OperatorMultiply());
g.setWidget(1, 3, multiply);
final Button subtract = new ButtonOperator(controller,
new OperatorSubtract());
g.setWidget(2, 3, subtract);
final Button add = new ButtonOperator(controller, new OperatorAdd());
g.setWidget(3, 3, add);
final Button sqrt = new ButtonOperator(controller, new OperatorSqrt());
g.setWidget(0, 4, sqrt);
final Button power = new ButtonOperator(controller, new OperatorPower());
g.setWidget(1, 4, power);
final Button invert = new ButtonOperator(controller,
new OperatorInvert());
g.setWidget(3, 1, invert);
// add special button for clear (handled directly by controller)
final Button clear = new Button(CalculatorConstants.CLEAR);