/**
  * Implemented as specified by the {@link Importer} interface.
  *
  * @see Importer#setImportedFile(ImportableFile, Object, int)
  */
 public void setImportedFile(ImportableFile f, Object result, int index) {
   if (model.getState() == DISCARDED) return;
   ImporterUIElement element = view.getUIElement(index);
   if (element != null) {
     element.setImportedFile(f, result);
     if (element.isDone()) {
       model.importCompleted(element.getID());
       view.onImportEnded(element);
       if (markToclose) {
         view.setVisible(false);
         fireStateChange();
         return;
       }
       element = view.getElementToStartImportFor();
       if (element != null) {
         importData(element);
       }
     }
     fireStateChange();
   }
   if (!hasOnGoingImport() && chooser.reloadHierarchies()) {
     // reload the hierarchies.
     Class rootType = ProjectData.class;
     if (chooser != null && chooser.getType() == Importer.SCREEN_TYPE) rootType = ScreenData.class;
     model.fireContainerLoading(rootType, true, false, -1);
     fireStateChange();
   }
 }