Spec-Zone.ru › GTK 3.20

GtkCellEditable

GtkCellEditable — Интерфейс для виджетов, которые могут использоваться для редактирования ячеек

Функции

void gtk_cell_editable_start_editing ()
void gtk_cell_editable_editing_done ()
void gtk_cell_editable_remove_widget ()

Свойства

gboolean editing-canceled Чтение / Запись

Сигналы

void editing-done Выполнить последним
void remove-widget Выполнить последним

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

GtkCellEditable
struct GtkCellEditableIface

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

    GInterface
    ╰── GtkCellEditable

Предварительные условия

GtkCellEditable требует GtkWidget.

Известные реализации

GtkCellEditable реализован в GtkAppChooserButton, GtkComboBox, GtkComboBoxText, GtkEntry, GtkSearchEntry и GtkSpinButton.

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

#include <gtk/gtk.h>

Описание

Интерфейс GtkCellEditable должен быть реализован для виджетов, чтобы их можно было использовать при редактировании содержимого ячейки GtkTreeView.

Функции

gtk_cell_editable_start_editing ()

void
gtk_cell_editable_start_editing (GtkCellEditable *cell_editable,
                                 GdkEvent *event);

Начинает редактирование в cell_editable. event — GdkEvent, который инициировал процесс редактирования. Может быть NULL, если редактирование началось программно.

Параметры

cell_editable

A GtkCellEditable

event

Объект GdkEvent, или NULL.

[allow-none]

gtk_cell_editable_editing_done ()

void
gtk_cell_editable_editing_done (GtkCellEditable *cell_editable);

Вызывает сигнал “editing-done”.

Параметры

cell_editable

A GtkCellEditable

gtk_cell_editable_remove_widget ()

void
gtk_cell_editable_remove_widget (GtkCellEditable *cell_editable);

Вызывает сигнал “remove-widget”.

Параметры

cell_editable

A GtkCellEditable

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

GtkCellEditable

typedef struct _GtkCellEditable GtkCellEditable;

struct GtkCellEditableIface

struct GtkCellEditableIface {
  /* signals */
  void (* editing_done)  (GtkCellEditable *cell_editable);
  void (* remove_widget) (GtkCellEditable *cell_editable);

  /* virtual table */
  void (* start_editing) (GtkCellEditable *cell_editable,
			  GdkEvent        *event);
};

Члены

editing_done ()

Сигнал указывает на обновление значения ячейки.

remove_widget ()

Сигнал означает, что редактирование ячейки завершено, и виджет может быть уничтожен.

start_editing ()

Начинает редактирование ячейки.

Подробности о свойствах

Свойство “editing-canceled”

  “editing-canceled”         gboolean

Указывает, было ли отменено редактирование ячейки.

Флаги: Чтение / Запись

Значение по умолчанию: FALSE

С: 2.20

Подробности сигналов

Сигнал “editing-done”

void
user_function (GtkCellEditable *cell_editable,
               gpointer         user_data)

Этот сигнал сообщает рендереру ячейки об обновлении его значения из cell_editable.

Реализации GtkCellEditable отвечают за отправку этого сигнала по завершении редактирования, например, GtkEntry отправляет его при нажатии пользователем Enter.

gtk_cell_editable_editing_done() — удобный метод для отправки сигнала “editing-done”.

Параметры

cell_editable

объект, на котором был отправлен сигнал

user_data

данные пользователя, заданные при подключении обработчика сигнала.

Флаги: Run Last

Сигнал “remove-widget”

void
user_function (GtkCellEditable *cell_editable,
               gpointer         user_data)

Этот сигнал предназначен для обозначения завершения редактирования ячейки и возможности уничтожения виджета.

Реализации GtkCellEditable отвечают за отправку этого сигнала по завершении редактирования. Он должен отправляться после сигнала “editing-done”, чтобы дать рендереру ячейки возможность обновить значение ячейки перед удалением виджета.

gtk_cell_editable_remove_widget() — удобный метод для отправки сигнала “remove-widget”.

Параметры

cell_editable

объект, на котором был отправлен сигнал

user_data

данные пользователя, заданные при подключении обработчика сигнала.

Флаги: Run Last

См. также

GtkEntry, GtkCellRenderer

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.20/GtkCellEditable.html

Spec-Zone.ru

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