LINUX.ORG.RU

Python + PyGObject: почему-то не загружает glade-файл

 , , ,


1

3

Пытаюсь написать гуевое приложение на Python3 и PyGObject (GTK3), не удается заюзать темплейты окон, нарисованные в Glade. Я использую класс приложения, отнаследованный от Gtk.Application, где загружаю .glade с помощью self.builder = Gtk.Builder.new_from_file("app.glade"), чтобы иметь хоть какой-то доступ к виджетам (не все окна в xml-ке являются шаблонами). Класс окна, к которому я хочу применить шаблон и добавить дополнительную логику, объявляется так:

@Gtk.Template(filename="app.glade")
class MyCustomWindow(Gtk.Window):
    __gtype_name__ = "custom_class_template"

Для окна custom_class_template флаг Composite выставлен в Glade. При запуске получаю абсолютно ненагугливаемое сообщение:

(viewer.py:12345): Gtk-ERROR **: 20:23:07.588: failed to add UI: app.glade:20:1 Not expecting to handle a template (class 'custom_class_template', parent 'GtkWindow')

Как это вообще исправить? У меня слишком тухлый GObject, который не поддерживает шаблоны? Можно ли в принципе нарисовать UI в Glade, а потом запилить класс без костылей, или эта возможность заблокирована?

★★★

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.