gtk-bar-990524-0.patch
patch for Gtk 1.2.3

This patch allows to specify an operation code (like in XShapeCombineMask)
when applying shapes to containers.

A new enum type is provided in gdk/gdktypes.h

       typedef enum {
               GDK_SHAPE_SET,                  /* ShapeSet */
               GDK_SHAPE_UNION,                /* ShapeUnion */
               GDK_SHAPE_INTERSECT,    /* ShapeIntersect */
               GDK_SHAPE_SUBTRACT,             /* ShapeSubtract */
               GDK_SHAPE_INVERT                /* ShapeInvert */
       } GdkShapeOp;

A new function is included in gdk/gdkwindow.c

       void gdk_window_shape_combine_mask_with_op(
               GdkWindow       *window,
               GdkBitmap       *mask,
               gint            x,
               gint            y,
               GdkShapeOp      shape_op)

And another new function in gtk/gtkwidget.c

       void gtk_widget_shape_combine_mask_with_op(
               GtkWidget       *widget,
               GdkBitmap       *shape_mask,
               gint            offset_x,
               gint            offset_y,
               GdkShapeOp      shape_op)

Whith these functions, we can , i.e to put two pixmaps in a fixed widget and then apply the union
of their masks to the fixed widget.