From: Daniel P. <d.p...@mu...> - 2004-09-08 15:51:30
|
Hi people, I have just added the sweep-gtk2 module to the sweep project as its probably important to migrate to gtk2 as soon as possible. The more people we have hacking on it the better. cvs -z3 -d:ext:use...@cv...:/cvsroot/sweep co sweep-gtk2 There seems to be a couple of problems with the implementation: 1. You cannot see the sample view 2. The rulers are not drawn properly. 3. We seem to have a thread problem. (one of the threads takes up 100% CPU time.) any help on this is appreciated. (Note that I had to add -DSTANDALONE manually to the gcc command in the tdb directory to get it to compile) |
From: K. <rad...@ko...> - 2005-07-06 20:54:27
|
W li=C5=9Bcie z =C5=9Bro, 08-09-2004, godz. 17:54, Daniel Piccoli pisze:=20 > Hi people, >=20 Hi, > I have just added the sweep-gtk2 module to the sweep project as its > probably important to migrate to gtk2 as soon as possible. The more > people we have hacking on it the better. >=20 > cvs -z3 -d:ext:use...@cv...:/cvsroot/sweep co sweep-gtk2 >=20 OK... > There seems to be a couple of problems with the implementation: > 1. You cannot see the sample view Because GTK2 doesn't have ->draw method and sample_display_draw is never called. Simplest and stupid workaround is to apply this patch: --- sample-display.c 2005-07-06 22:40:18.885441210 +0200 +++ sample-display-rpk.c 2005-07-06 22:35:36.559261322 +0200 @@ -1711,11 +1711,21 @@ { fprintf(stderr,"\nNot gc."); } +/* gdk_draw_drawable(widget->window, s->fg_gc, s->backing_pixmap, a->x, a->y, a->x, a->y, a->width, a->height); gtk_widget_queue_draw(widget); +*/ + sample_display_draw(widget, a); + gdk_draw_pixmap(widget->window, + s->fg_gc, + s->backing_pixmap, + event->area.x, event->area.y, + event->area.x, event->area.y, + event->area.width, event->area.height); + #else gtk_widget_queue_draw_area (GTK_WIDGET(s), a->x, a->y, a->width, a->height); > 2. The rulers are not drawn properly. I'll try to investigate this problem... > 3. We seem to have a thread problem. (one of the threads takes up 100% > CPU time.) Right, when I tried to make sample view in the right way (clever resolution of problem #1) I've got a deadlock when one of ops_* threads and sample-display function locks sample_data. First of all, I propose to rewrite all threads to glib functions. >=20 > any help on this is appreciated. (Note that I had to add -DSTANDALONE > manually to the gcc command in the tdb directory to get it to compile) regards --=20 Rados=C5=82aw Korzeniewski <rad...@ko...> |