Verified Owner
Top Inners Fields Constructors Methods
org.jabref.gui.search

public Class GlobalSearchBar

extends HBox
Class Inheritance
Imports
java.lang.reflect.Field, java.time.Duration, java.util.List, .Objects, .Optional, javafx.beans.binding.Bindings, .BooleanBinding, javafx.beans.property.BooleanProperty, .SimpleBooleanProperty, javafx.collections.ListChangeListener, .SetChangeListener, javafx.css.PseudoClass, javafx.event.Event, javafx.geometry.Insets, .Pos, javafx.scene.Cursor, .Node, javafx.scene.control.Button, .ButtonBase, .ContentDisplay, .Label, .ListView, .Skin, .ToggleButton, .Tooltip, javafx.scene.control.cell.TextFieldListCell, javafx.scene.input.KeyEvent, .MouseButton, javafx.scene.layout.BorderPane, .HBox, .Priority, .StackPane, javafx.scene.text.Text, .TextFlow, org.jabref.architecture.AllowedToUseClassGetResource, org.jabref.gui.DialogService, .LibraryTab, .LibraryTabContainer, .StateManager, org.jabref.gui.autocompleter.AppendPersonNamesStrategy, .AutoCompletionTextInputBinding, .PersonNameStringConverter, .SuggestionProvider, org.jabref.gui.clipboard.ClipBoardManager, org.jabref.gui.icon.IconTheme, org.jabref.gui.keyboard.KeyBinding, .KeyBindingRepository, org.jabref.gui.preferences.GuiPreferences, org.jabref.gui.util.BindingsHelper, .ControlHelper, .TooltipTextUtil, .UiTaskExecutor, org.jabref.gui.walkthrough.declarative.WalkthroughNodeIds, org.jabref.logic.FilePreferences, org.jabref.logic.l10n.Localization, org.jabref.logic.preferences.AutoCompleteFirstNameMode, org.jabref.logic.search.SearchPreferences, org.jabref.logic.util.strings.StringUtil, org.jabref.model.entry.Author, org.jabref.model.search.SearchDisplayMode, .SearchFlags, org.jabref.model.search.query.SearchQuery, com.tobiasdiez.easybind.EasyBind, impl.org.controlsfx.skin.AutoCompletePopup, org.controlsfx.control.textfield.AutoCompletionBinding, .CustomTextField, org.reactfx.util.FxTimer, .Timer, org.slf4j.Logger, .LoggerFactory

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class

Field Summary

Modifier and TypeField and Description
private final ToggleButton
private final DialogService
private final FilePreferences
private final ToggleButton
private final ToggleButton
private final BooleanProperty
private GlobalSearchResultDialog
private static final PseudoClass
private final BooleanProperty
private final ToggleButton
private static final Logger
private final Button
private final GuiPreferences
private final ToggleButton
private static final int
private final CustomTextField
private final Tooltip
private final SearchPreferences
private final SearchType
private final StateManager
private final LibraryTabContainer

Constructor Summary

AccessConstructor and Description
public
GlobalSearchBar(LibraryTabContainer tabContainer, StateManager stateManager, GuiPreferences preferences, DialogService dialogService, SearchType searchType)

Method Summary

Modifier and TypeMethod and Description
private <T> AutoCompletePopup<T>
getPopup(AutoCompletionBinding<T> autoCompletionBinding)

The popup has private access in AutoCompletionBinding, so we use reflection to access it.

private void
private void
public void
public void
requestFocus()

Overrides javafx.scene.Node.requestFocus.

Focuses the search field if it is not focused.

public void
public void
public void
public void
Inherited from javafx.scene.layout.HBox:
alignmentPropertyclearConstraintscomputeMinHeightcomputeMinWidthcomputePrefHeightcomputePrefWidthfillHeightPropertygetAlignmentgetBaselineOffsetgetClassCssMetaDatagetContentBiasgetCssMetaDatagetHgrowgetMargingetSpacingisFillHeightlayoutChildrenrequestLayoutsetAlignmentsetFillHeightsetHgrowsetMarginsetSpacingspacingProperty

Field Detail

caseSensitiveButtonback to summary
private final ToggleButton caseSensitiveButton
dialogServiceback to summary
private final DialogService dialogService
filePreferencesback to summary
private final FilePreferences filePreferences
filterModeButtonback to summary
private final ToggleButton filterModeButton
fulltextButtonback to summary
private final ToggleButton fulltextButton
globalSearchActiveback to summary
private final BooleanProperty globalSearchActive
globalSearchResultDialogback to summary
private GlobalSearchResultDialog globalSearchResultDialog
illegalSearchback to summary
private final BooleanProperty illegalSearch
keepSearchStringback to summary
private final ToggleButton keepSearchString
LOGGERback to summary
private static final Logger LOGGER
openGlobalSearchButtonback to summary
private final Button openGlobalSearchButton
preferencesback to summary
private final GuiPreferences preferences
regexButtonback to summary
private final ToggleButton regexButton
SEARCH_DELAYback to summary
private static final int SEARCH_DELAY
searchFieldback to summary
private final CustomTextField searchField
searchFieldTooltipback to summary
private final Tooltip searchFieldTooltip
searchPreferencesback to summary
private final SearchPreferences searchPreferences
searchTypeback to summary
private final SearchType searchType
stateManagerback to summary
private final StateManager stateManager
tabContainerback to summary
private final LibraryTabContainer tabContainer

Constructor Detail

GlobalSearchBarback to summary
public GlobalSearchBar(LibraryTabContainer tabContainer, StateManager stateManager, GuiPreferences preferences, DialogService dialogService, SearchType searchType)

Method Detail

getPopupback to summary
private <T> AutoCompletePopup<T> getPopup(AutoCompletionBinding<T> autoCompletionBinding)

The popup has private access in AutoCompletionBinding, so we use reflection to access it.

Annotations
@SuppressWarnings:unchecked
initSearchModifierButtonback to summary
private void initSearchModifierButton(ButtonBase searchButton)
initSearchModifierButtonsback to summary
private void initSearchModifierButtons()
openGlobalSearchDialogback to summary
public void openGlobalSearchDialog()
requestFocusback to summary
public void requestFocus()

Overrides javafx.scene.Node.requestFocus.

Focuses the search field if it is not focused.

Annotations
@Override
setAutoCompleterback to summary
public void setAutoCompleter(SuggestionProvider<Author> searchCompleter)
setSearchBarHintback to summary
public void setSearchBarHint()
setSearchTermback to summary
public void setSearchTerm(SearchQuery searchQuery)
updateSearchQueryback to summary
public void updateSearchQuery()
org.jabref.gui.search back to summary

private Class GlobalSearchBar.SearchPopupSkin<T>

extends Object
implements Skin<AutoCompletePopup<T>>
Class Inheritance
All Implemented Interfaces
javafx.scene.control.Skin
Annotations
@org.jabref.architecture.AllowedToUseClassGetResource

Field Summary

Modifier and TypeField and Description
private final BorderPane
private final AutoCompletePopup<T>
private final ListView<T>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
dispose()

Implements javafx.scene.control.Skin.dispose.

Called when a previously installed skin is about to be removed from its associated control.

public Node
getNode()

Implements javafx.scene.control.Skin.getNode.

Gets the Node which represents this Skin.

public AutoCompletePopup<T>
getSkinnable()

Implements javafx.scene.control.Skin.getSkinnable.

Gets the Skinnable to which this Skin is assigned.

private void
onSuggestionChosen(T suggestion)

private void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

containerback to summary
private final BorderPane container
controlback to summary
private final AutoCompletePopup<T> control
suggestionListback to summary
private final ListView<T> suggestionList

Constructor Detail

SearchPopupSkinback to summary
public SearchPopupSkin(AutoCompletePopup<T> control)

Method Detail

disposeback to summary
public void dispose()

Implements javafx.scene.control.Skin.dispose.

Doc from javafx.scene.control.Skin.dispose.

Called when a previously installed skin is about to be removed from its associated control. This allows the skin to do clean up, like removing listeners and bindings, and undo any changes to the control's properties. After this method completes, getSkinnable() and getNode() should return null.

Calling dispose() more than once has no effect.

Annotations
@Override
getNodeback to summary
public Node getNode()

Implements javafx.scene.control.Skin.getNode.

Doc from javafx.scene.control.Skin.getNode.

Gets the Node which represents this Skin. This must never be null, except after a call to dispose(), and must never change except when changing to null.

Annotations
@Override
getSkinnableback to summary
public AutoCompletePopup<T> getSkinnable()

Implements javafx.scene.control.Skin.getSkinnable.

Doc from javafx.scene.control.Skin.getSkinnable.

Gets the Skinnable to which this Skin is assigned. A Skin must be created for one and only one Skinnable. This value will only ever go from a non-null to null value when the Skin is removed from the Skinnable, and only as a consequence of a call to dispose().

The caller who constructs a Skinnable must also construct a Skin and properly establish the relationship between the Control and its Skin.

Annotations
@Override
onSuggestionChosenback to summary
private void onSuggestionChosen(T suggestion)
registerEventListenerback to summary
private void registerEventListener()