/**
  * Adds a user defined tool to the exercise as well as the view
  *
  * @param macro the user defined tool which should be added to the exercise as well as the view
  */
 void addAssignment(Macro macro) {
   if (!exercise.usesMacro(macro)) {
     Assignment a = exercise.addAssignment(macro);
     appendAssignmentRow(a);
   }
   userAddModes.setVisible(false);
 }