protected void addIdentifierActionPerformed(
      DomainSortableTable identifierTable, ResourcesComponents model) {
    ArchDescComponentIdentifiers newArchDescComponentIdentifier;
    DomainEditor dialog =
        new DomainEditor(
            ArchDescComponentIdentifiers.class,
            editorField.getParentEditor(),
            "Add Identifier",
            new ArchDescComponentIdentifiersFields());
    dialog.setNavigationButtonListeners((ActionListener) editorField.getParentEditor());
    dialog.setNewRecord(true);

    boolean done = false;
    int returnStatus;
    while (!done) {
      newArchDescComponentIdentifier = new ArchDescComponentIdentifiers(model);
      dialog.setModel(newArchDescComponentIdentifier, null);
      returnStatus = dialog.showDialog();

      if (returnStatus == JOptionPane.OK_OPTION) {
        model.addArchDescComponentIdentifier(newArchDescComponentIdentifier);
        identifierTable.updateCollection(model.getArchDescComponentIdentifiers());
        done = true;
      } else if (returnStatus == StandardEditor.OK_AND_ANOTHER_OPTION) {
        model.addArchDescComponentIdentifier(newArchDescComponentIdentifier);
        identifierTable.updateCollection(model.getArchDescComponentIdentifiers());
      } else {
        done = true;
      }
    }
  }
 private void dateTableMouseClicked(MouseEvent e) {
   if (e.getClickCount() == 2) {
     try {
       DomainEditor domainEditor =
           new DomainEditor(
               ArchDescriptionDates.class,
               editorField.getParentEditor(),
               "Dates",
               new ArchDescriptionDatesFields());
       domainEditor.setCallingTable(dateTable);
       domainEditor.setNavigationButtonListeners(domainEditor);
       editRelatedRecord(dateTable, ArchDescriptionDates.class, true, domainEditor);
     } catch (UnsupportedTableModelException e1) {
       new ErrorDialog("Error creating editor for Dates", e1).showDialog();
     }
   }
 }