3.4.2 Функции выхода

Функция выхода -- это обработчик, который будет вызываться при вызове "gtk_main_quit()". Другими словами, обработчик выполняется сразу перед тем как "gtk_main()" вернет управление. Обработчик должен иметь тип GtkFunction, определенный следующим образом: typedef gint (*GtkFunction) (gpointer data);

Функции выхода добавляются с помощью "gtk_quit_add()" (список функций 3..13. При добавлении функции выхода, вы должны указать уровень главного цеикла, возвращаемый "gtk_main_level()". Второй и третий аргументы указывают обработчик и его данные.

Значение, возвращаемое обработчиком указывает, нужно ли вызвать обработчик еще раз. До тех пор, пока обработчик возвращает TRUE, он будет повторно вызываться. Как только он возвратит FALSE, обработчик отключается. Когда все функции выхода возвратили FALSE, "gtk_main()" может возвратить управление.

"gtk_quit_add()" возвращает идентификатор, который может использоваться для удаления функции выхода с помощью "gtk_quit_remove()". Вы можете удалить функцию выхода путем передачи данных обработчика функции "gtk_quit_remove_by_data()".

Список функций 3..13: Функции выхода
"#include "<gtk/gtkmain.h>
guint gtk_quit_add(guint main_level, GtkFunction function, gpointer data) void gtk_quit_remove(guint quit_handler_id) void gtk_quit_remove_by_data(gpointer data)


Linux Land
2000-09-15