/**
  * Save the model file and inform all listeners. This method is called when the offering duration
  * is changed by some means
  */
 protected void saveModelAndInform() {
   try {
     model.saveModelFile();
   } catch (IOException e) {
     JOptionPane.showMessageDialog(null, "Error saving model file: " + e);
   }
   for (CourseModelListener lnr : listeners) lnr.modelUpdated();
 }