Top Description Fields Constructors Methods
org.jabref.gui.entryeditor

public Class EntryEditor

extends BorderPane
Class Inheritance
Imports
java.io.File, java.nio.file.Path, java.util.Collection, .Collections, .HashMap, .LinkedList, .List, .Map, .Objects, .Optional, .Set, .SortedSet, java.util.stream.Collectors, javafx.fxml.FXML, javafx.geometry.Side, javafx.scene.control.Button, .ContextMenu, .Label, .MenuItem, .Tab, .TabPane, javafx.scene.input.DataFormat, .KeyEvent, .TransferMode, javafx.scene.layout.BorderPane, org.jabref.gui.DialogService, .LibraryTab, .StateManager, org.jabref.gui.citationkeypattern.GenerateCitationKeySingleAction, org.jabref.gui.cleanup.CleanupSingleAction, org.jabref.gui.entryeditor.citationrelationtab.CitationRelationsTab, org.jabref.gui.entryeditor.fileannotationtab.FileAnnotationTab, .FulltextSearchResultsTab, org.jabref.gui.externalfiles.ExternalFilesEntryLinker, org.jabref.gui.help.HelpAction, org.jabref.gui.importer.GrobidOptInDialogHelper, org.jabref.gui.keyboard.KeyBinding, .KeyBindingRepository, org.jabref.gui.menus.ChangeEntryTypeMenu, org.jabref.gui.mergeentries.FetchAndMergeEntry, org.jabref.gui.theme.ThemeManager, org.jabref.gui.undo.CountingUndoManager, .RedoAction, .UndoAction, org.jabref.gui.util.TaskExecutor, .UiTaskExecutor, org.jabref.logic.bibtex.TypedBibEntry, org.jabref.logic.help.HelpFile, org.jabref.logic.importer.EntryBasedFetcher, .WebFetchers, org.jabref.logic.importer.fileformat.PdfMergeMetadataImporter, org.jabref.logic.journals.JournalAbbreviationRepository, org.jabref.logic.util.BuildInfo, org.jabref.model.database.BibDatabaseContext, org.jabref.model.entry.BibEntry, .BibEntryTypesManager, org.jabref.model.entry.field.Field, org.jabref.model.util.DirectoryMonitorManager, .FileUpdateMonitor, org.jabref.preferences.PreferencesService, com.airhacks.afterburner.views.ViewLoader, com.tobiasdiez.easybind.EasyBind, com.tobiasdiez.easybind.Subscription, jakarta.inject.Inject, org.slf4j.Logger, .LoggerFactory

GUI component that allows editing of the fields of a BibEntry (i.e. the one that shows up, when you double click on an entry in the table)

It hosts the tabs (required, general, optional) and the buttons to the left.

EntryEditor also registers itself to the event bus, receiving events whenever a field of the entry changes, enabling the text fields to update themselves if the change is made from somewhere else.

The editors for fields are created via org.jabref.gui.fieldeditors.FieldEditors.

Field Summary

Modifier and TypeField and Description
private final List<EntryEditorTab>
private BibEntryTypesManager
private BuildInfo
private BibEntry
private final BibDatabaseContext
private DialogService
private final DirectoryMonitorManager
private final EntryEditorPreferences
private Button
private final ExternalFilesEntryLinker
private FileUpdateMonitor
private JournalAbbreviationRepository
private KeyBindingRepository
private final LibraryTab
private static final Logger
private PreferencesService
private final Collection<OffersPreview>
private final RedoAction
private SourceTab
private StateManager
private TabPane
private TaskExecutor
private ThemeManager
private Button
private Label
private com.tobiasdiez.easybind.Subscription
private final UndoAction
private CountingUndoManager

Constructor Summary

AccessConstructor and Description
public
EntryEditor(LibraryTab libraryTab, UndoAction undoAction, RedoAction redoAction)

Method Summary

Modifier and TypeMethod and Description
private void
adaptVisibleTabs()

Adapt the visible tabs to the current entry type.

public void
private List<EntryEditorTab>
private void
private void
pack-priv void
pack-priv void
private Map<String, Set<Field>>

Returns:

Map of tab names and the fields to show in them.
getAdditionalUserConfiguredTabs
()

The preferences allow to configure tabs to show (e.g.,"General", "Abstract") These should be shown.

public BibEntry
private EntryEditorTab
public void
public void
public void
setCurrentlyEditedEntry(BibEntry currentlyEditedEntry)

public void
private void
private void
setupKeyBindings()

Set up key bindings specific for the entry editor.

private void
Inherited from javafx.scene.layout.BorderPane:
bottomPropertycenterPropertyclearConstraintscomputeMinHeightcomputeMinWidthcomputePrefHeightcomputePrefWidthgetAlignmentgetBottomgetCentergetContentBiasgetLeftgetMargingetRightgetToplayoutChildrenleftPropertyrightPropertysetAlignmentsetBottomsetCentersetLeftsetMarginsetRightsetToptopProperty

Field Detail

allPossibleTabsback to summary
private final List<EntryEditorTab> allPossibleTabs
bibEntryTypesManagerback to summary
private BibEntryTypesManager bibEntryTypesManager
Annotations
@Inject
buildInfoback to summary
private BuildInfo buildInfo
Annotations
@Inject
currentlyEditedEntryback to summary
private BibEntry currentlyEditedEntry
databaseContextback to summary
private final BibDatabaseContext databaseContext
dialogServiceback to summary
private DialogService dialogService
Annotations
@Inject
directoryMonitorManagerback to summary
private final DirectoryMonitorManager directoryMonitorManager
entryEditorPreferencesback to summary
private final EntryEditorPreferences entryEditorPreferences
fetcherButtonback to summary
private Button fetcherButton
Annotations
@FXML
fileLinkerback to summary
private final ExternalFilesEntryLinker fileLinker
fileMonitorback to summary
private FileUpdateMonitor fileMonitor
Annotations
@Inject
journalAbbreviationRepositoryback to summary
private JournalAbbreviationRepository journalAbbreviationRepository
Annotations
@Inject
keyBindingRepositoryback to summary
private KeyBindingRepository keyBindingRepository
Annotations
@Inject
libraryTabback to summary
private final LibraryTab libraryTab
LOGGERback to summary
private static final Logger LOGGER
preferencesServiceback to summary
private PreferencesService preferencesService
Annotations
@Inject
previewTabsback to summary
private final Collection<OffersPreview> previewTabs
redoActionback to summary
private final RedoAction redoAction
sourceTabback to summary
private SourceTab sourceTab
stateManagerback to summary
private StateManager stateManager
Annotations
@Inject
tabbedback to summary
private TabPane tabbed
Annotations
@FXML
taskExecutorback to summary
private TaskExecutor taskExecutor
Annotations
@Inject
themeManagerback to summary
private ThemeManager themeManager
Annotations
@Inject
typeChangeButtonback to summary
private Button typeChangeButton
Annotations
@FXML
typeLabelback to summary
private Label typeLabel
Annotations
@FXML
typeSubscriptionback to summary
private com.tobiasdiez.easybind.Subscription typeSubscription
undoActionback to summary
private final UndoAction undoAction
undoManagerback to summary
private CountingUndoManager undoManager
Annotations
@Inject

Constructor Detail

EntryEditorback to summary
public EntryEditor(LibraryTab libraryTab, UndoAction undoAction, RedoAction redoAction)

Method Detail

adaptVisibleTabsback to summary
private void adaptVisibleTabs()

Adapt the visible tabs to the current entry type.

closeback to summary
public void close()
Annotations
@FXML
createTabsback to summary
private List<EntryEditorTab> createTabs()
deleteEntryback to summary
private void deleteEntry()
Annotations
@FXML
fetchAndMergeback to summary
private void fetchAndMerge(EntryBasedFetcher fetcher)
generateCiteKeyButtonback to summary
pack-priv void generateCiteKeyButton()
Annotations
@FXML
generateCleanupButtonback to summary
pack-priv void generateCleanupButton()
Annotations
@FXML
getAdditionalUserConfiguredTabsback to summary
private Map<String, Set<Field>> getAdditionalUserConfiguredTabs()

The preferences allow to configure tabs to show (e.g.,"General", "Abstract") These should be shown. Already hard-coded ones (above and below this code block) should be removed. This method does this calculation.

Returns:Map<String, Set<Field>>

Map of tab names and the fields to show in them.

getCurrentlyEditedEntryback to summary
public BibEntry getCurrentlyEditedEntry()
getSelectedTabback to summary
private EntryEditorTab getSelectedTab()
nextPreviewStyleback to summary
public void nextPreviewStyle()
previousPreviewStyleback to summary
public void previousPreviewStyle()
setCurrentlyEditedEntryback to summary
public void setCurrentlyEditedEntry(BibEntry currentlyEditedEntry)
setFocusToFieldback to summary
public void setFocusToField(Field field)
setupDragAndDropback to summary
private void setupDragAndDrop(LibraryTab libraryTab)
setupKeyBindingsback to summary
private void setupKeyBindings()

Set up key bindings specific for the entry editor.

setupToolBarback to summary
private void setupToolBar()