GtkSearchBar
GtkSearchBar — Панель инструментов для интеграции поля ввода поиска
Функции
Свойства
| gboolean | search-mode-enabled | Чтение / Запись |
| gboolean | show-close-button | Чтение / Запись / Создание |
Типы и значения
| struct | GtkSearchBar |
| struct | GtkSearchBarClass |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── GtkSearchBar
Реализованные интерфейсы
GtkSearchBar реализует AtkImplementorIface и GtkBuildable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkSearchBar — это контейнер, предназначенный для встраивания поля ввода поиска (возможно, с дополнительными связанными виджетами, такими как выпадающие меню или кнопки). Панель поиска будет появляться при запуске поиска с помощью клавиатуры или переключении режима поиска в приложении.
Для запуска поиска с помощью нажатия клавиш необходимо передавать события из основного окна, содержащего панель поиска. См. пример кода gtk_search_bar_handle_event(). Общие сочетания клавиш, такие как Ctrl+F, должны обрабатываться как действие приложения или через пункты меню.
Вам также необходимо сообщить панели поиска, какое поле ввода используется в качестве поля поиска, используя gtk_search_bar_connect_entry(). Следующий пример демонстрирует, как создать более сложное поле поиска.
Функции
gtk_search_bar_new ()
GtkWidget *
gtk_search_bar_new (void); Создаёт GtkSearchBar. Вам необходимо указать виджет, который будет использоваться в качестве поля ввода текста, используя gtk_search_bar_connect_entry().
Возвращает
новый GtkSearchBar
С: 3.10
gtk_search_bar_connect_entry ()
void gtk_search_bar_connect_entry (GtkSearchBar *bar,GtkEntry *entry);
Подключает виджет GtkEntry, переданный в качестве поля ввода для этой панели поиска. Поле ввода должно быть потомком панели поиска. Это требуется только в том случае, если поле ввода не является непосредственным потомком панели поиска (как в нашем главном примере).
Параметры
bar | ||
entry | a GtkEntry |
С: 3.10
gtk_search_bar_get_search_mode ()
gboolean
gtk_search_bar_get_search_mode (GtkSearchBar *bar); Возвращает состояние режима поиска (включен или выключен).
Параметры
bar |
Возвращает
состояние режима поиска
С: 3.10
gtk_search_bar_set_search_mode ()
void gtk_search_bar_set_search_mode (GtkSearchBar *bar,gboolean search_mode);
Переключает режим поиска.
Параметры
bar | ||
search_mode | новое состояние режима поиска |
С: 3.10
gtk_search_bar_get_show_close_button ()
gboolean
gtk_search_bar_get_show_close_button (GtkSearchBar *bar); Возвращает состояние отображения кнопки закрытия.
Параметры
bar |
Возвращает
состояние отображения кнопки закрытия
С: 3.10
gtk_search_bar_set_show_close_button ()
void gtk_search_bar_set_show_close_button (GtkSearchBar *bar,gboolean visible);
Отображает или скрывает кнопку закрытия. Приложения, у которых уже есть кнопка переключения «поиска», не должны показывать кнопку закрытия в панели поиска, так как это дублирует функцию кнопки переключения.
Параметры
bar | ||
visible | отображать ли кнопку закрытия |
С: 3.10
gtk_search_bar_handle_event ()
gboolean gtk_search_bar_handle_event (GtkSearchBar *bar,GdkEvent *event);
Эта функция должна вызываться, когда окно верхнего уровня, содержащее панель поиска, получает событие нажатия клавиши.
Если событие нажатия клавиши обрабатывается панелью поиска, панель будет отображена, поле ввода заполнится введённым текстом и будет возвращено GDK_EVENT_STOP. Вызывающая сторона должна убедиться, что события больше не будут обрабатываться.
Если с панелью поиска не связано поле ввода, используя gtk_search_bar_connect_entry(), эта функция вернётся немедленно с предупреждением.
Отображение панели поиска при нажатии клавиш
static gboolean on_key_press_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { GtkSearchBar *bar = GTK_SEARCH_BAR (user_data); return gtk_search_bar_handle_event (bar, event); } g_signal_connect (window, "key-press-event", G_CALLBACK (on_key_press_event), search_bar);
Параметры
bar | ||
event | a GdkEvent containing key press events |
Возвращает
GDK_EVENT_STOP, если событие нажатия клавиши привело к вводу текста в поле поиска (и отображению панели поиска при необходимости), GDK_EVENT_PROPAGATE в противном случае.
С: 3.10
Типы и значения
struct GtkSearchBar
struct GtkSearchBar;
struct GtkSearchBarClass
struct GtkSearchBarClass {
GtkBinClass parent_class;
};
Члены
Подробные сведения о свойствах
Свойство “search-mode-enabled”
“search-mode-enabled” gboolean
Состояние режима поиска (включен или выключен, отображена ли панель поиска).
Флаги: чтение/запись
Значение по умолчанию: FALSE
Свойство “show-close-button”
“show-close-button” gboolean
Отображать ли кнопку закрытия в панели инструментов.
Флаги: чтение/запись/создание
Значение по умолчанию: FALSE
© 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/GtkSearchBar.html