GObject Override сигнал в GTK + - PullRequest
       70

GObject Override сигнал в GTK +

0 голосов
/ 31 октября 2018

Я подумал, что попробую обновить программу, найденную в Интернете ( Сигналы и события в PyGTK ), иллюстрирующую, как переопределить сигнал в подклассе. Вот моя версия:

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, GObject

class PyApp(Gtk.Window):
    def __init__(self):
        Gtk.Window.__init__(self)

        self.set_size_request(200, 150)
        self.set_position(Gtk.WindowPosition.CENTER)
        self.show_all()

        self.connect("destroy", Gtk.main_quit)

    @GObject.SignalOverride
    def configure_event(self, *args):
        pass

    def do_configure_event(self, event):
        title = "%s, %s" % (event.x, event.y)
        self.set_title(title)
        Gtk.Window.do_configure_event(self, event)

PyApp()
Gtk.main()

Я получаю

TypeError: событие аргумента: ожидался Gdk.EventConfigure, но получил gi.overrides.Gdk.Event

из строки с вызовом super's do_configure_event. Есть идеи, что я делаю не так? Я использую PyGObject 3.29.2.dev0 и Python 3.7.0.

...