Re: "non-detructive" line drawing?



>Can any one please tell me if there is a way to change
>the line-drawing mode for the DrawingArea widget so that
>it uses such an exclusive-or operation? Or is there another

create a new GdkGC used for drawing, copy from the one used by the
drawing area, set the function to GDK_XOR, somewhat like this:

      xor_gc = gdk_gc_new (area->window);
      gdk_gc_copy (xor_gc, area->style->white_gc);
      gdk_gc_set_function (xor_gc, GDK_XOR);

now use xor_gc for draw_line operations, and presto, you're all set.

>Or is there another way to erase polyline segments? Note that I want
>to avoid having to re-draw the pixmap everytime an erase operation
>occurs, as this would be too time-consuming.

i'm not quite sure what you mean here. with XOR, you always have to
draw twice to erase. its inherent in how XOR operates.

--p




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]