From 3a0027cefb3f501adbe6e9e960bcadd8bb89789e Mon Sep 17 00:00:00 2001 From: Yubo-Cao Date: Sat, 30 Aug 2025 20:16:57 -0400 Subject: [PATCH 1/4] fix: Update the UI for the automatic field editor --- .../AbstractAutomaticFieldEditorTabView.java | 6 +- .../AutomaticFieldEditorDialog.java | 2 +- .../AutomaticFieldEditorViewModel.java | 5 +- .../main/resources/org/jabref/gui/Base.css | 24 ++++++ .../CopyOrMoveFieldContentTab.fxml | 78 +++++++----------- .../editfieldcontent/EditFieldContentTab.fxml | 81 +++++-------------- .../renamefield/RenameFieldTab.fxml | 58 +++---------- 7 files changed, 90 insertions(+), 164 deletions(-) diff --git a/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AbstractAutomaticFieldEditorTabView.java b/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AbstractAutomaticFieldEditorTabView.java index 2954b013f68..0025da65b18 100644 --- a/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AbstractAutomaticFieldEditorTabView.java +++ b/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AbstractAutomaticFieldEditorTabView.java @@ -1,11 +1,11 @@ package org.jabref.gui.edit.automaticfiededitor; -import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.VBox; -public abstract class AbstractAutomaticFieldEditorTabView extends AnchorPane implements AutomaticFieldEditorTab { +public abstract class AbstractAutomaticFieldEditorTabView extends VBox implements AutomaticFieldEditorTab { @Override - public AnchorPane getContent() { + public VBox getContent() { return this; } } diff --git a/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.java b/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.java index d2d0893a488..7ae312f32b3 100644 --- a/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.java +++ b/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorDialog.java @@ -70,7 +70,7 @@ public AutomaticFieldEditorDialog(StateManager stateManager, UndoManager undoMan @FXML public void initialize() { - viewModel = new AutomaticFieldEditorViewModel(selectedEntries, database, undoManager, stateManager); + viewModel = new AutomaticFieldEditorViewModel(database, undoManager, stateManager); for (AutomaticFieldEditorTab tabModel : viewModel.getFieldEditorTabs()) { NotificationPaneAdapter notificationPane = new NotificationPaneAdapter(tabModel.getContent()); diff --git a/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorViewModel.java b/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorViewModel.java index 3f517a1dabd..9eaddbc91d1 100644 --- a/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorViewModel.java +++ b/jabgui/src/main/java/org/jabref/gui/edit/automaticfiededitor/AutomaticFieldEditorViewModel.java @@ -1,7 +1,5 @@ package org.jabref.gui.edit.automaticfiededitor; -import java.util.List; - import javax.swing.undo.UndoManager; import javafx.collections.FXCollections; @@ -14,7 +12,6 @@ import org.jabref.gui.edit.automaticfiededitor.renamefield.RenameFieldTabView; import org.jabref.gui.undo.NamedCompound; import org.jabref.model.database.BibDatabase; -import org.jabref.model.entry.BibEntry; public class AutomaticFieldEditorViewModel extends AbstractViewModel { public static final String NAMED_COMPOUND_EDITS = "EDIT_FIELDS"; @@ -23,7 +20,7 @@ public class AutomaticFieldEditorViewModel extends AbstractViewModel { private final UndoManager undoManager; - public AutomaticFieldEditorViewModel(List selectedEntries, BibDatabase database, UndoManager undoManager, StateManager stateManager) { + public AutomaticFieldEditorViewModel(BibDatabase database, UndoManager undoManager, StateManager stateManager) { this.undoManager = undoManager; fieldEditorTabs.addAll( new EditFieldContentTabView(database, stateManager), diff --git a/jabgui/src/main/resources/org/jabref/gui/Base.css b/jabgui/src/main/resources/org/jabref/gui/Base.css index b714948af1e..bab75bb2090 100644 --- a/jabgui/src/main/resources/org/jabref/gui/Base.css +++ b/jabgui/src/main/resources/org/jabref/gui/Base.css @@ -3157,3 +3157,27 @@ journalInfo .grid-cell-b { -fx-border-color: -jr-error; -fx-border-width: 1px; } + +/* Automatic Field Editor */ +.edit-field-content-pane { + -fx-padding: 0em 1em; + -fx-spacing: 1em; +} + +.edit-field-content-pane .text-field { + -fx-padding: 0.5625em 0.75em; +} + +.edit-field-content-pane .actions { + -fx-spacing: 0.75em; + -fx-alignment: BASELINE_LEFT; +} + +.edit-field-content-pane .grid-pane { + -fx-hgap: 0.75em; + -fx-vgap: 0.75em; +} + +.edit-field-content-pane .grid-pane .label { + -fx-min-width: 3.5em; +} diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml index 99f6909c51c..e1224762e4a 100644 --- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml +++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/copyormovecontent/CopyOrMoveFieldContentTab.fxml @@ -1,61 +1,39 @@ - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml index e6ff38d9996..ebd5968f9b4 100644 --- a/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml +++ b/jabgui/src/main/resources/org/jabref/gui/edit/automaticfiededitor/renamefield/RenameFieldTab.fxml @@ -1,55 +1,19 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + +