/** * An interface action has been performed. Find out what it was and handle it. * * @param event The event that has occured. */ public void actionPerformed(ActionEvent event) { String command = event.getActionCommand(); if (command.equals("0") || command.equals("1") || command.equals("2") || command.equals("3") || command.equals("4") || command.equals("5") || command.equals("6") || command.equals("7") || command.equals("8") || command.equals("9")) { int number = Integer.parseInt(command); calc.numberPressed(number); } else if (command.equals("A") || command.equals("B") || command.equals("C") || command.equals("D") || command.equals("E") || command.equals("F")) { int number = getNumberFromHexString(command); calc.numberPressed(number); } else if (command.equals("+")) { calc.plus(); } else if (command.equals("-")) { calc.minus(); } else if (command.equals("=")) { calc.equals(); } else if (command.equals("C")) { calc.clear(); } else if (command.equals("?")) { showInfo(); } // Exercise 1 multi else if (command.equals("*")) { calc.multiplication(); } // Exercise 1 division else if (command.equals("/")) { calc.division(); } else if (command.equals("Cl")) { // had to change this, so it works in hexadecimal mode calc.clear(); } else if (command.equals("Hexadecimal mode")) { calc.flipHexSwitch(); // flip the switch } // else unknown command. redisplay(); }