Re: problems understanding gtk3/gdk/cairo interaction

2012-04-12 Thread Roger Davis
Hi John and Simon, OK, experiment complete. Performance for me is very clearly not as good as Xlib-style XOR when drawing rubberband lines which span a screen-sized window (which is more or less typical for my apps, unfortunately), but on the other hand it's not unusable either, just

Re: problems understanding gtk3/gdk/cairo interaction

2012-04-12 Thread Simon Feltman
You should be able to just fill the delta regions between the cursor position changes right? Basically a backwards L shape if you're dragging upper-left to lower-right. You would need to do two rect copies (or two calls to gtk_widget_queue_draw_area for each part of the L) as opposed to one. If

Re: problems understanding gtk3/gdk/cairo interaction

2012-04-12 Thread Roger Davis
On Thu, 12 Apr 2012, Simon Feltman wrote: You should be able to just fill the delta regions between the cursor position changes right? Basically a backwards L shape if you're dragging upper-left to lower-right. You would need to do two rect copies (or two calls to gtk_widget_queue_draw_area

problems understanding gtk3/gdk/cairo interaction

2012-04-06 Thread Roger Davis
Hi all, I am having trouble understanding gtk3/gdk/cairo interaction and thus developing a usable model for some large drawing applications I am porting from X11. I am currently working mostly on CentOS 6 with self-installed gtk3 3.4.0, gdk-pixbuf-2.26.0 and cairo 1.12.0 packages. Obviously I

Re: problems understanding gtk3/gdk/cairo interaction

2012-04-06 Thread jcupitt
Hi Roger, You should do all drawing in the expose handler and nowhere else. Don't do any direct drawing in your data hander, instead update your model and queue an expose event. On 7 April 2012 02:16, Roger Davis r...@soest.hawaii.edu wrote: presumably this includes the GtkDrawingArea widget as

Re: problems understanding gtk3/gdk/cairo interaction

2012-04-06 Thread Roger Davis
Hi Simon, Thanks for your thoughts, I read them after responding to John. Sounds like my wild guesses about the differences between gtk2 and gtk3 here are not too horribly wrong. I will read the docs you pointed to and take a look at the Clutter stuff, after I get some time to do the required