Spec-Zone.ru › GTK 3.22

GtkSearchEntry

GtkSearchEntry — Поле ввода для поиска, отображающее значок поиска

Функции

GtkWidget * gtk_search_entry_new ()
gboolean gtk_search_entry_handle_event ()

Сигналы

void next-match Действие
void previous-match Действие
void search-changed Выполняется последним
void stop-search Действие

Типы и значения

struct GtkSearchEntry

Иерархия объектов

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkEntry
                ╰── GtkSearchEntry

Реализованные интерфейсы

GtkSearchEntry реализует AtkImplementorIface, GtkBuildable, GtkEditable и GtkCellEditable.

Файлы заголовков

#include <gtk/gtk.h>

Описание

GtkSearchEntry — подкласс GtkEntry, предназначенный для использования в качестве поля ввода для поиска.

Он отображает неактивный значок «найти» при пустом поле ввода и значок «очистить» при наличии текста. Нажатие на значок «очистить» очистит поле ввода.

Обратите внимание, что значок поиска/очистки отображается с помощью дополнительного значка, и, таким образом, не работает, если вы используете позицию дополнительного значка для какой-либо другой цели.

Чтобы сделать фильтрацию более отзывчивой, не стоит реагировать на каждое изменение текста в поле ввода немедленно, а только после небольшой задержки. Для поддержки этого, GtkSearchEntry испускает сигнал «search-changed», который можно использовать вместо сигнала «changed».

Сигналы «previous-match», «next-match» и «stop-search» можно использовать для реализации перемещения между результатами поиска и завершения поиска.

Часто 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.22/GtkSearchEntry.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API