[cairo-commit] libglxc/src glxc.c,1.3,1.4 glxc_surface.c,1.2,1.3 glxc_trap.c,1.3,1.4

Peter Nilsson commit at pdx.freedesktop.org
Mon Nov 24 17:40:22 PST 2003


Committed by: peter

Update of /cvs/cairo/libglxc/src
In directory pdx:/tmp/cvs-serv28883/src

Modified Files:
	glxc.c glxc_surface.c glxc_trap.c 
Log Message:
Added clipping with glScissor

Index: glxc.c
===================================================================
RCS file: /cvs/cairo/libglxc/src/glxc.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** glxc.c	25 Nov 2003 01:13:03 -0000	1.3
--- glxc.c	25 Nov 2003 01:40:20 -0000	1.4
***************
*** 177,190 ****
                                &x_draw_offset, &y_draw_offset);
  
-     /* TODO: The intermediate surface is not minimized when transformations
-        are used. */
-     if (src->transform) {
-       ibounds.x1 = 0;
-       ibounds.x2 = dst->width;
-       ibounds.y1 = 0;
-       ibounds.y2 = dst->height;
-       x_draw_offset = y_draw_offset = 0;
-     }
-     
      intermediate =
        glxc_surface_create_intermediate_at_size (dst->display,
--- 177,180 ----
***************
*** 343,346 ****
--- 333,338 ----
    glxc_set_operator (op);
  
+   glScissor (x_dst, dst->height - (y_dst + height), width, height);
+    
    glBegin (GL_QUADS);
    glTexCoord2d (tx1, ty2);

Index: glxc_surface.c
===================================================================
RCS file: /cvs/cairo/libglxc/src/glxc_surface.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** glxc_surface.c	24 Nov 2003 11:06:13 -0000	1.2
--- glxc_surface.c	25 Nov 2003 01:40:20 -0000	1.3
***************
*** 676,679 ****
--- 676,681 ----
    glDepthMask (GL_FALSE);
    glPixelStorei (GL_PACK_ALIGNMENT, 1);
+   glEnable (GL_SCISSOR_TEST);
+   glScissor (0, 0, surface->width, surface->height);
  }
  

Index: glxc_trap.c
===================================================================
RCS file: /cvs/cairo/libglxc/src/glxc_trap.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** glxc_trap.c	25 Nov 2003 01:13:03 -0000	1.3
--- glxc_trap.c	25 Nov 2003 01:40:20 -0000	1.4
***************
*** 138,142 ****
    glxc_intermediate_bounds (dst, &bounds, &mask_bounds,
                              &x_draw_offset, &y_draw_offset);
! 
    if ((mask_bounds.x2 - mask_bounds.x1) <= 0 ||
        (mask_bounds.y2 - mask_bounds.y1) <= 0)
--- 138,142 ----
    glxc_intermediate_bounds (dst, &bounds, &mask_bounds,
                              &x_draw_offset, &y_draw_offset);
!   
    if ((mask_bounds.x2 - mask_bounds.x1) <= 0 ||
        (mask_bounds.y2 - mask_bounds.y1) <= 0)





More information about the cairo-commit mailing list