Вы в значительной степени стучите ...
В Glade фальшивое окно, которое позволяет перетаскивать компоненты, обрабатывает события мыши / клавиатуры и выполняет внутренние вызовы для размещения элементов GUI на месте. Эти элементы затем присоединяются к обработчикам, таким как «при нажатии кнопки перейти к исходному элементу»
Это все довольно тривиально, когда вы думаете об этом.
Просмотр источника поляны может дать некоторое представление о том, как это делается.
IIRC, Глейд пишет XML, а затем передает его разработчику, используя libglade, а не ваши собственные создания элементов. Ваши события создают файлы XML, которые содержат элементы пользовательского интерфейса и внутренние обработчики конструктора.
Удачи