Package ch.bailu.gtk.gtk
Class SearchEntry
- All Implemented Interfaces:
PointerInterface
`GtkSearchEntry` is an entry widget that has been tailored for use
as a search entry.
The main API for interacting with a `GtkSearchEntry` as entry
is the `GtkEditable` interface.

It will show an inactive symbolic “find” icon when the search
entry is empty, and a symbolic “clear” icon when there is text.
Clicking on the “clear” icon will empty the search entry.
To make filtering appear more reactive, it is a good idea to
not react to every change in the entry text immediately, but
only after a short delay. To support this, `GtkSearchEntry`
emits the [signal@Gtk.SearchEntry::search-changed] signal which
can be used instead of the [signal@Gtk.Editable::changed] signal.
The [signal@Gtk.SearchEntry::previous-match],
[signal@Gtk.SearchEntry::next-match] and
[signal@Gtk.SearchEntry::stop-search] signals can be used to
implement moving between search results and ending the search.
Often, `GtkSearchEntry` will be fed events by means of being
placed inside a [class@Gtk.SearchBar]. If that is not the case,
you can use [method@Gtk.SearchEntry.set_key_capture_widget] to
let it capture key input from another widget.
`GtkSearchEntry` provides only minimal API and should be used with
the [iface@Gtk.Editable] API.
## CSS Nodes
```
entry.search
╰── text
```
`GtkSearchEntry` has a single CSS node with name entry that carries
a `.search` style class, and the text node is a child of that.
## Accessibility
`GtkSearchEntry` uses the %GTK_ACCESSIBLE_ROLE_SEARCH_BOX role.
as a search entry.
The main API for interacting with a `GtkSearchEntry` as entry
is the `GtkEditable` interface.

It will show an inactive symbolic “find” icon when the search
entry is empty, and a symbolic “clear” icon when there is text.
Clicking on the “clear” icon will empty the search entry.
To make filtering appear more reactive, it is a good idea to
not react to every change in the entry text immediately, but
only after a short delay. To support this, `GtkSearchEntry`
emits the [signal@Gtk.SearchEntry::search-changed] signal which
can be used instead of the [signal@Gtk.Editable::changed] signal.
The [signal@Gtk.SearchEntry::previous-match],
[signal@Gtk.SearchEntry::next-match] and
[signal@Gtk.SearchEntry::stop-search] signals can be used to
implement moving between search results and ending the search.
Often, `GtkSearchEntry` will be fed events by means of being
placed inside a [class@Gtk.SearchBar]. If that is not the case,
you can use [method@Gtk.SearchEntry.set_key_capture_widget] to
let it capture key input from another widget.
`GtkSearchEntry` provides only minimal API and should be used with
the [iface@Gtk.Editable] API.
## CSS Nodes
```
entry.search
╰── text
```
`GtkSearchEntry` has a single CSS node with name entry that carries
a `.search` style class, and the text node is a child of that.
## Accessibility
`GtkSearchEntry` uses the %GTK_ACCESSIBLE_ROLE_SEARCH_BOX role.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic interfacestatic interfacestatic interfacestatic interfacestatic interfaceNested classes/interfaces inherited from class ch.bailu.gtk.gtk.Widget
Widget.OnDestroy, Widget.OnDestroyNotify, Widget.OnDirectionChanged, Widget.OnHide, Widget.OnKeynavFailed, Widget.OnMap, Widget.OnMnemonicActivate, Widget.OnMoveFocus, Widget.OnQueryTooltip, Widget.OnRealize, Widget.OnShow, Widget.OnStateFlagsChanged, Widget.OnTickCallback, Widget.OnUnmap, Widget.OnUnrealizeNested classes/interfaces inherited from class ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final StringFields inherited from class ch.bailu.gtk.gtk.Widget
SIGNAL_ON_DESTROY, SIGNAL_ON_DIRECTION_CHANGED, SIGNAL_ON_HIDE, SIGNAL_ON_KEYNAV_FAILED, SIGNAL_ON_MAP, SIGNAL_ON_MNEMONIC_ACTIVATE, SIGNAL_ON_MOVE_FOCUS, SIGNAL_ON_QUERY_TOOLTIP, SIGNAL_ON_REALIZE, SIGNAL_ON_SHOW, SIGNAL_ON_STATE_FLAGS_CHANGED, SIGNAL_ON_UNMAP, SIGNAL_ON_UNREALIZEFields inherited from class ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionImplements interfaceAccessible.Implements interfaceBuildable.Implements interfaceConstraintTarget.Implements interfaceEditable.static ClassHandlerstatic intGets the widget that @entry is capturing key events from.static longstatic TypeSystem.TypeSizeintGet the delay to be used between the last keypress and the
[signal@Gtk.SearchEntry::search-changed] signal being emitted.static longstatic TypeSystem.TypeSizeonActivate(SearchEntry.OnActivate signal) Connect to signal "activate".onNextMatch(SearchEntry.OnNextMatch signal) Connect to signal "next-match".Connect to signal "previous-match".Connect to signal "search-changed".Connect to signal "search-started".onStopSearch(SearchEntry.OnStopSearch signal) Connect to signal "stop-search".voidsetKeyCaptureWidget(Widget widget) Sets @widget as the widget that @entry will capture key
events from.voidsetSearchDelay(int delay) Set the delay to be used between the last keypress and the
[signal@Gtk.SearchEntry::search-changed] signal being emitted.Methods inherited from class ch.bailu.gtk.gtk.Widget
actionSetEnabled, actionSetEnabled, activate, activateAction, activateAction, activateActionVariant, activateActionVariant, activateDefault, addController, addCssClass, addCssClass, addMnemonicLabel, addTickCallback, allocate, childFocus, computeBounds, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, createPangoLayout, disposeTemplate, dragCheckThreshold, errorBell, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getCanFocus, getCanTarget, getChildVisible, getClipboard, getCssClasses, getCssName, getCursor, getDefaultDirection, getDirection, getDisplay, getFirstChild, getFocusable, getFocusChild, getFocusOnClick, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getName, getNative, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth, grabFocus, hasCssClass, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, observeChildren, observeControllers, onDestroy, onDirectionChanged, onHide, onKeynavFailed, onMap, onMnemonicActivate, onMoveFocus, onQueryTooltip, onRealize, onShow, onStateFlagsChanged, onUnmap, onUnrealize, pick, queueAllocate, queueDraw, queueResize, realize, removeController, removeCssClass, removeCssClass, removeMnemonicLabel, removeTickCallback, setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setCursorFromName, setDefaultDirection, setDirection, setFocusable, setFocusChild, setFocusOnClick, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setName, setOpacity, setOverflow, setParent, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipMarkup, setTooltipText, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible, shouldLayout, show, sizeAllocate, snapshotChild, triggerTooltipQuery, unmap, unparent, unrealize, unsetStateFlagsMethods inherited from class ch.bailu.gtk.gobject.Object
addToggleRef, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, disconnect, disconnect, dupData, dupData, dupQdata, forceFloating, freezeNotify, get, get, getData, getData, getProperty, getProperty, getQdata, interfaceFindProperty, interfaceInstallProperty, isFloating, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, replaceData, replaceData, replaceQdata, runDispose, set, set, setData, setData, setDataFull, setDataFull, setProperty, setProperty, setQdata, setQdataFull, stealData, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnrefMethods inherited from class ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacksMethods inherited from class ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNullMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Field Details
-
SIGNAL_ON_ACTIVATE
- See Also:
-
SIGNAL_ON_NEXT_MATCH
- See Also:
-
SIGNAL_ON_PREVIOUS_MATCH
- See Also:
-
SIGNAL_ON_SEARCH_CHANGED
- See Also:
-
SIGNAL_ON_SEARCH_STARTED
- See Also:
-
SIGNAL_ON_STOP_SEARCH
- See Also:
-
-
Constructor Details
-
SearchEntry
-
SearchEntry
public SearchEntry()Creates a `GtkSearchEntry`.
-
-
Method Details
-
getClassHandler
-
getKeyCaptureWidget
Gets the widget that @entry is capturing key events from.- Returns:
- The key capture widget.
-
getSearchDelay
public int getSearchDelay()Get the delay to be used between the last keypress and the
[signal@Gtk.SearchEntry::search-changed] signal being emitted.- Returns:
- a delay in milliseconds.
-
setKeyCaptureWidget
Sets @widget as the widget that @entry will capture key
events from.
Key events are consumed by the search entry to start or
continue a search.
If the entry is part of a `GtkSearchBar`, it is preferable
to call [method@Gtk.SearchBar.set_key_capture_widget] instead,
which will reveal the entry in addition to triggering the
search entry.
Note that despite the name of this function, the events
are only 'captured' in the bubble phase, which means that
editable child widgets of @widget will receive text input
before it gets captured. If that is not desired, you can
capture and forward the events yourself with
[method@Gtk.EventControllerKey.forward].- Parameters:
widget- a `GtkWidget`
-
setSearchDelay
public void setSearchDelay(int delay) Set the delay to be used between the last keypress and the
[signal@Gtk.SearchEntry::search-changed] signal being emitted.- Parameters:
delay- a delay in milliseconds
-
onActivate
Connect to signal "activate".
SeeSearchEntry.OnActivate.onActivate()for signal description.
FieldSIGNAL_ON_ACTIVATEcontains original signal name and can be used as resource reference.- Parameters:
signal- callback function (lambda).- Returns:
SignalHandler. Can be used to disconnect signal and to release callback function.
-
onNextMatch
Connect to signal "next-match".
SeeSearchEntry.OnNextMatch.onNextMatch()for signal description.
FieldSIGNAL_ON_NEXT_MATCHcontains original signal name and can be used as resource reference.- Parameters:
signal- callback function (lambda).- Returns:
SignalHandler. Can be used to disconnect signal and to release callback function.
-
onPreviousMatch
Connect to signal "previous-match".
SeeSearchEntry.OnPreviousMatch.onPreviousMatch()for signal description.
FieldSIGNAL_ON_PREVIOUS_MATCHcontains original signal name and can be used as resource reference.- Parameters:
signal- callback function (lambda).- Returns:
SignalHandler. Can be used to disconnect signal and to release callback function.
-
onSearchChanged
Connect to signal "search-changed".
SeeSearchEntry.OnSearchChanged.onSearchChanged()for signal description.
FieldSIGNAL_ON_SEARCH_CHANGEDcontains original signal name and can be used as resource reference.- Parameters:
signal- callback function (lambda).- Returns:
SignalHandler. Can be used to disconnect signal and to release callback function.
-
onSearchStarted
Connect to signal "search-started".
SeeSearchEntry.OnSearchStarted.onSearchStarted()for signal description.
FieldSIGNAL_ON_SEARCH_STARTEDcontains original signal name and can be used as resource reference.- Parameters:
signal- callback function (lambda).- Returns:
SignalHandler. Can be used to disconnect signal and to release callback function.
-
onStopSearch
Connect to signal "stop-search".
SeeSearchEntry.OnStopSearch.onStopSearch()for signal description.
FieldSIGNAL_ON_STOP_SEARCHcontains original signal name and can be used as resource reference.- Parameters:
signal- callback function (lambda).- Returns:
SignalHandler. Can be used to disconnect signal and to release callback function.
-
asAccessible
Implements interfaceAccessible. Call this to get access to interface functions.- Overrides:
asAccessiblein classWidget- Returns:
Accessible
-
asBuildable
Implements interfaceBuildable. Call this to get access to interface functions.- Overrides:
asBuildablein classWidget- Returns:
Buildable
-
asConstraintTarget
Implements interfaceConstraintTarget. Call this to get access to interface functions.- Overrides:
asConstraintTargetin classWidget- Returns:
ConstraintTarget
-
asEditable
Implements interfaceEditable. Call this to get access to interface functions.- Returns:
Editable
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-