views:

313

answers:

3

I'm desiging a pygtk GUI and want to embed an external application into it.

Does anyone have any idea how this can be done?

+2  A: 

It depends on what application you are trying to embed into yours, but if the other app is a GTK app (or one that supports the XEMBED protocol), you should be able to do this with gtk.Plug and gtk.Socket. The PyGTK tutorial has a section explaining how to do this:

http://www.pygtk.org/pygtk2tutorial/sec-PlugsAndSockets.html

Steven Wei
I did look at that, but I just dont see how that would help me embed an external application.The window ID reported by xwinfo is something like 0x12343 but the plug wants a window ID in a LONG format... I dont know how to fit these 2 pieces together
M0E-lnx
+1  A: 

This one might help. Read the article 19.15. How do I embed something using Plugs and Sockets? (http://faq.pygtk.org/index.py?req=all#19.15) and find out how to embed arbitrary X Window application into (Py)GTK Socket.

anthony
A: 

You don't use an external program to get the gtk.Plug/gtk.Socket ID, they have their respective functions for that. See this tutorial for examples: link.

DoR