Re: DBus signature for gtk objects

2007-11-28 Thread Tomeu Vizoso
On Tue, 2007-11-27 at 19:29 -0200, Rafael Barbolo Lopes wrote:
 Is it possible to exchange gtk objects (a gtk.gdk.Pixmap) thought DBus
 tubes?
 If it is, can someone help me to find a way to do this?
 I think it's necessary to create a BusObject, but I can't get it
 working using this quick tutorial: 
 http://dbus.freedesktop.org/doc/dbus-python/doc/tutorial.html#claiming-a-bus-name

You cannot just use a remote object as if it was a gtk.gdk.Pixmap, they
are just two very different pieces of code.

My guess is that for doing this, you would need to get the Pixmap from
the X server to the client side (Pixbuf), serialize it somehow, and pass
it as a dbus.ByteArray or as a path to a temp file in disk (if that's
possible in Rainbow). The other side would need to create a Pixbuf from
it and send it to the server as a Pixmap.

This process is not only convoluted, but will be also quite slow.

Perhaps there is some way in X for two processes to share pixmaps, but I
don't know about that.

Why you want to do that? If you explain it, perhaps we'll be able to
give better advice.

Regards,

Tomeu

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: DBus signature for gtk objects

2007-11-28 Thread Rafael Barbolo Lopes
I want that for sharing Oficina (paint) activity through the mesh.
When a user enters in a shared drawing, the owner would send his pixmap for
this new user.
Maybe serializing the pixmap wouldn't be a bad idea, cause it's passed once
per user who join the activity and wouldn't let the activity slow after
loaded.
If you have any other advice, please let me know.

Thanks

2007/11/28, Tomeu Vizoso [EMAIL PROTECTED]:

 On Tue, 2007-11-27 at 19:29 -0200, Rafael Barbolo Lopes wrote:
  Is it possible to exchange gtk objects (a gtk.gdk.Pixmap) thought DBus
  tubes?
  If it is, can someone help me to find a way to do this?
  I think it's necessary to create a BusObject, but I can't get it
  working using this quick tutorial:
 
 http://dbus.freedesktop.org/doc/dbus-python/doc/tutorial.html#claiming-a-bus-name

 You cannot just use a remote object as if it was a gtk.gdk.Pixmap, they
 are just two very different pieces of code.

 My guess is that for doing this, you would need to get the Pixmap from
 the X server to the client side (Pixbuf), serialize it somehow, and pass
 it as a dbus.ByteArray or as a path to a temp file in disk (if that's
 possible in Rainbow). The other side would need to create a Pixbuf from
 it and send it to the server as a Pixmap.

 This process is not only convoluted, but will be also quite slow.

 Perhaps there is some way in X for two processes to share pixmaps, but I
 don't know about that.

 Why you want to do that? If you explain it, perhaps we'll be able to
 give better advice.

 Regards,

 Tomeu




-- 
Rafael Barbolo Lopes
http://rafaelbarbolo.blogspot.com/
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: DBus signature for gtk objects

2007-11-28 Thread Henrique Ser
Hey,

Both slider-puzzle and jigsaw-puzzle do this when sharing a puzzle (or 
when using the Journal storage). It wasn't straightforward iirc, but 
feel free to dig in the code and ask if there is something cryptic there.

And it is slow, so be prepared...

-- cn

Rafael Barbolo Lopes wrote:
 I want that for sharing Oficina (paint) activity through the mesh.
 When a user enters in a shared drawing, the owner would send his 
 pixmap for this new user.
 Maybe serializing the pixmap wouldn't be a bad idea, cause it's passed 
 once per user who join the activity and wouldn't let the activity slow 
 after loaded.
 If you have any other advice, please let me know.

 Thanks

 2007/11/28, Tomeu Vizoso [EMAIL PROTECTED] 
 mailto:[EMAIL PROTECTED]:

 On Tue, 2007-11-27 at 19:29 -0200, Rafael Barbolo Lopes wrote:
  Is it possible to exchange gtk objects (a gtk.gdk.Pixmap)
 thought DBus
  tubes?
  If it is, can someone help me to find a way to do this?
  I think it's necessary to create a BusObject, but I can't get it
  working using this quick tutorial:
 
 
 http://dbus.freedesktop.org/doc/dbus-python/doc/tutorial.html#claiming-a-bus-name

 You cannot just use a remote object as if it was a gtk.gdk.Pixmap,
 they
 are just two very different pieces of code.

 My guess is that for doing this, you would need to get the Pixmap
 from
 the X server to the client side (Pixbuf), serialize it somehow,
 and pass
 it as a dbus.ByteArray or as a path to a temp file in disk (if that's
 possible in Rainbow). The other side would need to create a Pixbuf
 from
 it and send it to the server as a Pixmap.

 This process is not only convoluted, but will be also quite slow.

 Perhaps there is some way in X for two processes to share pixmaps,
 but I
 don't know about that.

 Why you want to do that? If you explain it, perhaps we'll be able to
 give better advice.

 Regards,

 Tomeu




 -- 
 Rafael Barbolo Lopes
 http://rafaelbarbolo.blogspot.com/
 

 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel