У меня есть файл описания Glade GUI с GtkTreeView в GtkHBox в окне; и есть обработчик сигнала row_activated. Теперь Glade автоматически установил для свойства «события» (унаследованного от GtkWidget) этого древовидного представления некоторое значение (GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK). И с этим есть две странные вещи:
Мне еще предстоит протестировать это с более новой версией GTK, но вопрос уже существует: какова именно цель этого свойства events? И почему Glade автоматически и без надобности устанавливает для него какое-то значение? Есть ли у этого какие-то побочные эффекты, о которых я не знаю?





Разве эта маска не указывает на события, которые вы хотите получить? В этом случае вы, вероятно, захотите получать уведомление о том, что пользователь щелкнул или дважды щелкнул элемент в GtkTreeView, и вы захотите зарегистрировать обратные вызовы для обработки этих событий.
me.yahoo.com/a/kUQ7zeQ: но даже если я установил для свойства пустую строку, как уже упоминалось, обработчик row_activated все равно вызывается, когда я дважды щелкаю строку (или нажимаю Enter или Пробел). Таким образом, древовидное представление по-прежнему получает события ...
Это ошибка в glade, она всегда устанавливает свойство события создаваемых виджетов. Он не имеет понятия о значении свойства по умолчанию, поэтому всегда устанавливает его.