GtkSearchEntry
GtkSearchEntry — Поле ввода для поиска, отображающее иконку поиска
Функции
| GtkWidget * | gtk_search_entry_new () |
| gboolean | gtk_search_entry_handle_event () |
Сигналы
| void | следующий-совпадение | Действие |
| void | предыдущий-совпадение | Действие |
| void | изменение-поиска | Выполнить последним |
| void | остановка-поиска | Действие |
Типы и значения
| struct | GtkSearchEntry |
Реализованные интерфейсы
GtkSearchEntry реализует AtkImplementorIface, GtkBuildable, GtkEditable и GtkCellEditable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkSearchEntry — подкласс GtkEntry, предназначенный для использования в качестве поля ввода для поиска.
При пустом поле ввода отображается иконка поиска, а при наличии текста — иконка очистки. Щелчок по иконке очистки очищает поле.
Обратите внимание, что иконка поиска/очистки отображается с помощью дополнительной иконки, поэтому она не будет работать, если дополнительная позиция иконки используется для какой-либо другой цели.
Для повышения отзывчивости фильтрации рекомендуется не реагировать на каждое изменение текста в поле ввода сразу, а только после небольшого задержки. Для поддержки этого, GtkSearchEntry генерирует сигнал “изменение-поиска”, который может быть использован вместо сигнала “изменений”.
Сигналы “предыдущий-совпадение”, “следующий-совпадение” и “остановка-поиска” могут быть использованы для реализации перемещения между результатами поиска и завершения поиска.
Часто GtkSearchEntry используется внутри GtkSearchBar. В противном случае, вы можете использовать gtk_search_entry_handle_event() для передачи событий.
Функции
gtk_search_entry_new ()
GtkWidget *
gtk_search_entry_new (void); Создаёт GtkSearchEntry с иконкой поиска при пустом поле и иконкой очистки при наличии текста.
Возвращает
новый GtkSearchEntry
С: 3.6
gtk_search_entry_handle_event ()
gboolean gtk_search_entry_handle_event (GtkSearchEntry *entry,GdkEvent *event);
Эта функция должна вызываться, когда верхнее окно, содержащее поле ввода поиска, получает событие клавиши. Если поле ввода является частью GtkSearchBar, предпочтительнее вызвать gtk_search_bar_handle_event(), которое отобразит поле ввода дополнительно к передаче события этой функции.
Если событие клавиши обрабатывается полем ввода и начинается или продолжается поиск, будет возвращено GDK_EVENT_STOP. Призывающий должен гарантировать, что поле ввода отображается в этом случае и не распространять событие дальше.
Параметры
entry | поле ввода GtkSearchEntry | |
event | событие клавиши |
Возвращает
GDK_EVENT_STOP, если нажатие клавиши привело к началу или продолжению поиска, GDK_EVENT_PROPAGATE в противном случае.
С: 3.16
Типы и значения
struct GtkSearchEntry
struct GtkSearchEntry;
Подробности сигналов
Сигнал “next-match”
void user_function (GtkSearchEntry *entry, gpointer user_data)
Сигнал ::next-match — это сигнал привязки клавиш, который генерируется при попытке пользователя перейти к следующей совпадающей строке в текущем поиске.
Приложения должны подключиться к нему, чтобы реализовать переключение между совпадениями.
По умолчанию для этого сигнала установлена привязка Ctrl-g.
Параметры
entry | поле ввода, в котором был сгенерирован сигнал | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Действие
С версии: 3.16
Сигнал “previous-match”
void user_function (GtkSearchEntry *entry, gpointer user_data)
Сигнал ::previous-match — это сигнал привязки клавиш, который генерируется при попытке пользователя перейти к предыдущему совпадению в текущем поиске.
Приложения должны подключиться к нему, чтобы реализовать переключение между совпадениями.
По умолчанию для этого сигнала установлена привязка Ctrl-Shift-g.
Параметры
entry | поле ввода, в котором был сгенерирован сигнал | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Действие
С версии: 3.16
Сигнал “search-changed”
void user_function (GtkSearchEntry *entry, gpointer user_data)
Сигнал “search-changed” генерируется с небольшой задержкой в 150 миллисекунд после последнего изменения текста в поле ввода.
Параметры
entry | поле ввода, в котором был сгенерирован сигнал | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Выполнить последний
С версии: 3.10
Сигнал “stop-search”
void user_function (GtkSearchEntry *entry, gpointer user_data)
Сигнал ::stop-search — это сигнал привязки клавиш, который генерируется, когда пользователь прекращает поиск с помощью клавиатуры.
Приложения должны подключиться к нему, чтобы реализовать скрытие поля ввода поиска в этом случае.
По умолчанию для этого сигнала установлена привязка Escape.
Параметры
entry | поле ввода, в котором был сгенерирован сигнал | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Действие
С версии: 3.16
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkSearchEntry.html