Quoting Olivier Bornet <[EMAIL PROTECTED]>:

> Hello,
>
> It seems the PG_GROP_SETCLIP is not working (at least for
> PG_WIDGET_CANVAS). (After a very quick look in the pgserver source, I
> suspect it is not implemented).

Right, it wasn't implemented. I just committed new code to implement it in
pgserver.

>
> Also, using PG_GROP_RECT and PG_GROP_LINE results of a 1 pixel
> difference.

The coordinates for most gropnodes are specified as an (x,y) coordinate for the
top-left coordinate and the width and height. Since the line primitive is drawn
between any two points, using the same width and height method wouldn't handle
negative values correctly. As a result, instead of (x,y,width,height) the line
uses (x1,y1,x2-x1,y2-y1). This is a little awkward when using pgWriteCmd but it
is hidden when using the PGFX layer.

>
> See the attached example where the black X is for testing the clip,
> and
> the red + for showing the 1 pixel difference.

With the clipping fixed, all lines are correctly clipped within the rectangle.

>
> Thanks in advance.

No problem. I'm glad you reminded me, I had forgotten I didn't implement
PG_GROP_SETCLIP :)

>
>               Olivier
> --
> Olivier Bornet                      SMARTDATA SA
> [EMAIL PROTECTED]         Centre du Parc
> http://www.smartdata.ch             av. des Pr�s-Beudin 20
> Phone +41-27-723'55'03              1920 Martigny
> Fax   +41-27-723'55'19              Phone +41-27-723'55'18
>

--
Only you can prevent creeping featurism!

_______________________________________________
Pgui-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/pgui-devel

Reply via email to