From 85eaac93632b8b73506330da6bb49921ee625dc9 Mon Sep 17 00:00:00 2001 From: Elias Date: Sat, 1 Dec 2018 21:54:33 +0100 Subject: Readme: Add PyGtk embedding example --- README.rst | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/README.rst b/README.rst index 7bf212c..3c1f5bd 100644 --- a/README.rst +++ b/README.rst @@ -170,6 +170,44 @@ PyQT embedding win.show() sys.exit(app.exec_()) +PyGtk embedding +.............. + +.. code:: python + + #!/usr/bin/env python3 + import gi + + import mpv + + gi.require_version('Gtk', '3.0') + from gi.repository import Gtk + + + class MainClass(Gtk.Window): + + def __init__(self): + super(MainClass, self).__init__() + self.set_default_size(600, 400) + self.connect("destroy", self.on_destroy) + + widget = Gtk.Frame() + self.add(widget) + self.show_all() + + # Must be created >after< the widget is shown, else property 'window' will be None + self.mpv = mpv.MPV(wid=str(widget.get_property("window").get_xid())) + self.mpv.play("test.webm") + + def on_destroy(self, widget, data=None): + self.mpv.terminate() + Gtk.main_quit() + + + if __name__ == '__main__': + application = MainClass() + Gtk.main() + Coding Conventions ------------------ -- cgit