Re: Mouse events on a Cairo Context

2013-07-03 Thread Borja Mon Serrano
Hi, Thank you for your help, guys. Finally I tried with goocanvasmm and everything works fine, as I wanted. There are some simple examples in the libgoocanvasmm-2.0-doc package for Ubuntu, so I could deal with the problem :) The most similar example there is moving_shapes. Thank you!

Re: Mouse events on a Cairo Context

2013-07-01 Thread Borja Mon Serrano
Hi Colomban This is probably the simplest solution, it's meant for this kind of things. 4 - Handle the events yourself: listen to the button-press-event/button-release-event of your DrawingArea and do the math to know whether the click is on your circle or not. Maybe Cairo has this kind

Re: Mouse events on a Cairo Context

2013-07-01 Thread Stefan Salewski
On Mon, 2013-07-01 at 17:42 +0200, Borja Mon Serrano wrote: The problem with (4) is dragdrop. I think it could be very difficult to deal with it, so I'm going to try the third solution, with goocanvasmm. Do you know any example of use of goocanvasmm? Yes, dragdrop may be not very easy.

Re: Mouse events on a Cairo Context

2013-07-01 Thread Dov Grobgeld
There is another solution that I have used extensively, which is to draw the cairo commands twice. Once for the actual drawing, and once again in an offline image (called label image), with the following differences: 1. Use solid colors corresponding to labels of the different graphical

Mouse events on a Cairo Context

2013-06-30 Thread Borja Mon Serrano
Hi all, I'm developing an application with C++ and GTK3 but I'm stucked. I've created a visual application with glade which has three columns and one of them, the middle one, is a DrawingArea. In that DrawingArea I want to draw some circles at the point I want to after pressing a button and have

Re: Mouse events on a Cairo Context

2013-06-30 Thread Colomban Wendling
Le 30/06/2013 21:10, Borja Mon Serrano a écrit : Hi all, [...] 1 - I think the best way is to create a signal to the cairomm context, but I didn't see anything to do that. Maybe the way would be to create a cairo surface or something like that. I don't think Cairo has this kind of thing.