package org.jabref.collab; import javax.swing.JComponent; import javax.swing.JScrollPane; import org.jabref.gui.BasePanel; import org.jabref.gui.undo.NamedCompound; import org.jabref.logic.l10n.Localization; import org.jabref.model.database.BibDatabase; import org.jabref.model.metadata.MetaData; /** * */ class MetaDataChange extends Change { private final InfoPane infoPane = new InfoPane(); private final JScrollPane sp = new JScrollPane(infoPane); private final MetaData originalMetaData; private final MetaData newMetaData; public MetaDataChange(MetaData originalMetaData, MetaData newMetaData) { super(Localization.lang("Metadata change")); this.originalMetaData = originalMetaData; this.newMetaData = newMetaData; infoPane.setText("<html>" + Localization.lang("Metadata change") + "</html>"); } @Override public JComponent description() { /* // TODO: Show detailed description of the changes StringBuilder sb = new StringBuilder( "<html>" + Localization.lang("Changes have been made to the following metadata elements") + ":<p><br>  "); sb.append(changes.stream().map(unit -> unit.key).collect(Collectors.joining("<br>  "))); sb.append("</html>"); infoPane.setText(sb.toString()); */ return sp; } @Override public boolean makeChange(BasePanel panel, BibDatabase secondary, NamedCompound undoEdit) { panel.getBibDatabaseContext().setMetaData(newMetaData); return true; } }