summaryrefslogtreecommitdiff
path: root/proto/renderproto
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2010-04-24 19:57:11 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2010-04-24 19:57:11 +0000
commit0567618effe25784b0d8d73bf4715cd68bd24acd (patch)
tree23c7d226b95c74b1826595313616c34fb7261eef /proto/renderproto
parentaa653f50c304ab29f148b4498c43412d5ccc634c (diff)
Update to renderproto 0.11
Diffstat (limited to 'proto/renderproto')
-rw-r--r--proto/renderproto/ChangeLog348
-rw-r--r--proto/renderproto/Makefile.am15
-rw-r--r--proto/renderproto/autogen.sh12
-rw-r--r--proto/renderproto/configure.ac6
-rw-r--r--proto/renderproto/render.h23
-rw-r--r--proto/renderproto/renderproto.txt170
6 files changed, 448 insertions, 126 deletions
diff --git a/proto/renderproto/ChangeLog b/proto/renderproto/ChangeLog
index c722b519a..1cbb52188 100644
--- a/proto/renderproto/ChangeLog
+++ b/proto/renderproto/ChangeLog
@@ -1,4 +1,346 @@
-2005-12-14 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit d889aa6c766e2691e1a6a8189c730661023e4de4
+Author: Fredrik Höglund <fredrik@kde.org>
+Date: Wed Jul 15 00:16:32 2009 +0200
- * configure.ac:
- Update package version number for final X11R7 release candidate.
+ Bump version to 0.11.
+
+commit 533e22db3088bb75e58b6d977ec82a13c4680b54
+Author: Fredrik Höglund <fredrik@kde.org>
+Date: Wed Jul 15 00:16:08 2009 +0200
+
+ Add support for the PDF blend mode operators.
+
+commit 2c5e931d5e5b5af88bcf8aaed8b10d799fd47b1e
+Author: Søren Sandmann Pedersen <sandmann@redhat.com>
+Date: Fri Jul 10 21:34:12 2009 -0400
+
+ Clarify behavior of IncludeInferior and GraphicsExposures.
+
+commit c4315b2a4704c88924e7a6bc444b5331caa64022
+Author: Søren Sandmann Pedersen <sandmann@redhat.com>
+Date: Fri May 1 19:39:47 2009 -0400
+
+ Clarify semantics of clipping
+
+ Source clips are applied on top of the transformed and repeated
+ window, because that way you can clip out an interesting shape of for
+ example a repeated gradient, and because this makes the implementation
+ simple and efficient.
+
+ GraphicsExposures are never generated.
+
+ The hierarchy clip is ignored for source and mask pictures. This is
+ because GraphicsExposures are not generated anyway, and because
+ implementing it correctly in the presense of filters and
+ transformations would be either inefficient or very complex.
+
+ Also make it explicit that the dither argument is not used.
+
+commit 2428785895f352f15fb412a630289e44bb2e7cc3
+Author: Søren Sandmann Pedersen <sandmann@redhat.com>
+Date: Fri May 1 17:39:47 2009 -0400
+
+ Delete reference to unimplemented ColorTriangles and ColorTrapezoids
+ requests.
+
+commit 64f589368eb0c3070656de283b29b7b0b8ccc10b
+Author: Søren Sandmann Pedersen <sandmann@redhat.com>
+Date: Fri May 1 17:25:03 2009 -0400
+
+ Describe the four repeat options for pictures
+
+ Previously there was a description of three repeat options
+ ("Transparent", "Nearest", "Normal") which did not actually exist in
+ the implementation.
+
+commit 802e941e5fee14214687795f857b6dfd1e163af0
+Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
+Date: Tue Jan 27 20:06:28 2009 -0200
+
+ Janitor: Correct make distcheck and dont distribute autogen.sh
+
+commit 52fc0c528a2fcedc61070925213cb74f6ce45fb1
+Author: James Cloos <cloos@jhcloos.com>
+Date: Thu Dec 6 16:39:06 2007 -0500
+
+ Replace static ChangeLog with dist-hook to generate from git log
+
+commit 192cdc7530b8ff45d9bcea99dc07849ffbfa65b7
+Merge: 67b1244 9c561f5
+Author: James Cloos <cloos@jhcloos.com>
+Date: Mon Sep 3 06:17:59 2007 -0400
+
+ Merge branch 'master' of ssh://git.freedesktop.org/git/xorg/proto/renderproto
+
+commit 67b12440358eec012023d46e9150ca22c6fd47bf
+Author: James Cloos <cloos@jhcloos.com>
+Date: Mon Sep 3 05:54:14 2007 -0400
+
+ Add *~ to .gitignore to skip patch/emacs droppings
+
+commit 9c561f58b713aaecbc0ba3a6a8579094e57fdd20
+Author: Eric Anholt <eric@anholt.net>
+Date: Fri Aug 31 14:50:09 2007 -0700
+
+ Bump version to 0.9.3.
+
+commit 030dd885476b70c9054b6e4b50dfdbab12e73716
+Author: Eric Anholt <eric@anholt.net>
+Date: Fri Aug 31 14:28:03 2007 -0700
+
+ Bug #7364: Fix the typedefs of GlyphSet, Picture, and PictFormat to be XIDs.
+
+ Without this, they would be 64-bit types on 64-bit X Servers, which
+ occasionally resulted in incorrect unpacking.
+
+commit 76a3e69e8e5a761533fc4c752bf907c2440ea6b2
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date: Wed Oct 11 13:13:16 2006 -0700
+
+ Typo fixes in Render protocol spec
+
+commit 42cd58192fa14dc792379896e9473f693b616d9f
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date: Wed Oct 11 13:08:51 2006 -0700
+
+ Update date/version on Render protocol spec to match last update (0.10)
+
+commit 04fc37cf7d28dee03e3e68b812ce843f5d1edb97
+Author: Eric Anholt <eric@anholt.net>
+Date: Tue Jan 9 11:26:25 2007 -0800
+
+ Hook renderproto.txt up to build/install.
+
+ The previous 12 commits represent a conversion of xlibs cvs to git, then usage
+ of git-format-patch <origin> protocol, munging of the path, and git-am. The
+ remaining patches to the render protocol description from xorg-docs will
+ follow.
+
+commit 2a8d528ed739f4bc59b4b7e5054f44e378b4a89f
+Author: Lars Knoll <lars@trolltech.com>
+Date: Fri Jul 1 08:17:51 2005 +0000
+
+ premultiplied colors for creation of solid fills.
+
+commit effea4687eec4922ab1975ea69d81fe9238a310a
+Author: Lars Knoll <lars@trolltech.com>
+Date: Thu Jun 30 07:16:25 2005 +0000
+
+ smaller fixes to the protocol.
+
+commit 09eb1125f8edb2dcbdff55f3f330044d1f35f8bb
+Author: Lars Knoll <lars@trolltech.com>
+Date: Wed Jun 29 11:52:07 2005 +0000
+
+ add support for Gradient and Solid Pictures
+
+ bump render version to 0.10
+
+commit d3bc284d6c875118566504798aa3818617d377cd
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Jul 29 07:58:03 2004 +0000
+
+ 2004-07-29 Keith Packard <keithp@keithp.com>
+
+ * configure.ac:
+ * protocol:
+ * render.h:
+ * renderproto.h:
+ Specify new AddTraps request.
+ Change pixelization specification.
+
+commit 3a46f9178cbd722ed238587d4463a6d19d8f1044
+Author: Keith Packard <keithp@keithp.com>
+Date: Sat May 3 19:20:00 2003 +0000
+
+ Add animated cursor request, bump to 0.8
+
+commit 1d46ed302a18da9d7fe4f08101b7e0fad5e0a909
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Nov 27 05:36:25 2002 +0000
+
+ Fix FreePicture to note that non-XID references can keep pictures allocated
+
+commit 8c80ba46b689cdc66c3fdf6bfec3d025795f9c9e
+Author: Keith Packard <keithp@keithp.com>
+Date: Wed Nov 6 22:47:49 2002 +0000
+
+ XRenderQueryPictIndexValues support (from Olivier Chapuis). Bump Render version to 0.7
+
+commit 02402ce6194c6205f172c35b276169cf2cf30a31
+Author: Keith Packard <keithp@keithp.com>
+Date: Thu Sep 26 02:56:48 2002 +0000
+
+ Add image transformation and sub-pixel ordering to Render
+
+commit 62a55ea66717bd056fde8d1bbf84275d7fa087e5
+Author: Marc Aurele La France <tsi@ualberta.edu>
+Date: Fri Aug 23 15:12:36 2002 +0000
+
+ Grammar
+
+commit 465ae9a308001920f94d1f029e2bbb7f70c87d89
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 23 05:48:25 2002 +0000
+
+ Add CreateCursor request to Render
+
+commit 6633f3924d6f224d02f48808b28981f9775f6e72
+Author: Keith Packard <keithp@keithp.com>
+Date: Mon May 13 07:55:48 2002 +0000
+
+ Update spec to match current implementation.
+
+commit 7ff23a96aaafb598a413e2bd4c52da98dfb8da4a
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Dec 15 18:33:53 2000 +0000
+
+ Add Render protocol document
+
+commit 3237db592bb09dc89f8be918e2c59c6f9f59d8ea
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date: Fri Jul 14 18:56:29 2006 -0700
+
+ renamed: .cvsignore -> .gitignore
+
+commit 91f4e05915f5c0e6afe709a9904b955842e909fd
+Author: Kevin E Martin <kem@kem.org>
+Date: Thu Dec 15 00:24:38 2005 +0000
+
+ Update package version number for final X11R7 release candidate.
+
+commit 0810eecdd6303d4967760beac1a38df5cf0feab7
+Author: Kevin E Martin <kem@kem.org>
+Date: Wed Oct 19 02:48:15 2005 +0000
+
+ Update package version number for RC1 release.
+
+commit 8c450de3b74dd1dd4a28747d9b60bc51382b0f17
+Author: Eric Anholt <anholt@freebsd.org>
+Date: Tue Aug 2 19:19:39 2005 +0000
+
+ Add basic .cvsignore files for proto modules.
+
+commit 2a63ef2ad78c8d4d89b275280b2d6f9f8d9a2c1f
+Author: Kevin E Martin <kem@kem.org>
+Date: Fri Jul 29 21:22:56 2005 +0000
+
+ Various changes preparing packages for RC0:
+ - Verify and update package version numbers as needed
+ - Implement versioning scheme
+ - Change bug address to point to bugzilla bug entry form
+ - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
+ reenable it)
+ - Fix makedepend to use pkgconfig and pass distcheck
+ - Update build script to build macros first
+ - Update modular Xorg version
+
+commit c3526e7ea51b7b70d14fb6ad97cc234221ac875a
+Author: Lars Knoll <lars@trolltech.com>
+Date: Fri Jul 1 10:03:25 2005 +0000
+
+ Add support for gradients and solid fills to Render.
+
+commit c1a679f90a1b9e011060661dfdadd2960489ba95
+Author: Lars Knoll <lars@trolltech.com>
+Date: Mon Jun 13 14:40:24 2005 +0000
+
+ add the convolution filter from xserver to xorg
+
+commit ce97141900f9cc5dc067d2067b5877901399c597
+Author: Daniel Stone <daniel@fooishbar.org>
+Date: Sat May 21 04:16:58 2005 +0000
+
+ Set version to 0.9.
+
+commit 6622ff3f67edb4c537a9912e6eb56691a8cabea3
+Author: Adam Jackson <ajax@nwnk.net>
+Date: Thu May 19 00:22:40 2005 +0000
+
+ revert last change, didn't do right thing at all, sorry for the noise
+
+commit 50a3f335f4da1b705326b87ecc7699fb9d5f042c
+Author: Adam Jackson <ajax@nwnk.net>
+Date: Thu May 19 00:10:19 2005 +0000
+
+ Require automake 1.7 in AM_INIT_AUTOMAKE
+
+commit 511abcb0f3f948e62d14fc00856b342d915f1add
+Author: Josh Triplett <josh@speakeasy.net>
+Date: Tue May 17 07:32:29 2005 +0000
+
+ Add COPYING file for Render.
+
+commit 9f1501a9c8ede82c0bf4e85d7c4dc5c404fec865
+Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
+Date: Mon May 9 18:20:06 2005 +0000
+
+ Change all the protonames from <extension>Ext to <extension>Proto.
+
+commit 79256bd9ed1e7a1680e5fe660bee541648d80538
+Author: Kevin E Martin <kem@kem.org>
+Date: Fri May 6 01:46:31 2005 +0000
+
+ Initial build system files for proto module.
+
+commit c5bf04b6c494b8af574f99b131fc1b8464a22c83
+Author: Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>
+Date: Sat Dec 4 00:42:46 2004 +0000
+
+ Encoding of numerous files changed to UTF-8
+
+commit 06f5e62edcb2af058bf4720a4b08665decd67158
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 6 23:42:10 2004 +0000
+
+ Add RenderAddTraps. Rewrite trapezoid rendering code.
+
+commit 713f778be0494a4f649922f2fa4cc24e36ddaf4b
+Author: Eric Anholt <anholt@freebsd.org>
+Date: Sun Jul 4 20:30:58 2004 +0000
+
+ Bugzilla #635: Correct the definition of CPLastBit to account for
+ ComponentAlpha, which may fix behavior of the server's
+ SetPictureToDefaults.
+
+commit db4eac7ce2a2e20269f24a98470c9a3c5fa7fbef
+Author: Egbert Eich <eich@suse.de>
+Date: Fri Apr 23 18:43:06 2004 +0000
+
+ Merging XORG-CURRENT into trunk
+
+commit 2b5b1ea58df1a9ab378c06f08ec26e44e2a03504
+Author: Egbert Eich <eich@suse.de>
+Date: Sun Mar 14 08:31:36 2004 +0000
+
+ Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
+
+commit ca720bca788372a451ea66a017cb49d029db1e30
+Author: Egbert Eich <eich@suse.de>
+Date: Wed Mar 3 12:10:54 2004 +0000
+
+ Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
+
+commit 400da1431cfa5a3a3ec2f160c9fabd6860c0ea6c
+Author: Egbert Eich <eich@suse.de>
+Date: Thu Feb 26 13:35:14 2004 +0000
+
+ readding XFree86's cvs IDs
+
+commit e6ad8e6d9eba014388fcaeedd426cd88ed6b4e89
+Author: Egbert Eich <eich@suse.de>
+Date: Thu Feb 26 09:22:28 2004 +0000
+
+ Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
+
+commit 1c17764c32d9187589f952cde9288eb3108cbceb
+Author: Kaleb Keithley <kaleb@freedesktop.org>
+Date: Fri Nov 14 16:48:43 2003 +0000
+
+ XFree86 4.3.0.1
+
+commit bb5a469bc6137857a3a057989c47a2c2dda68716
+Author: Kaleb Keithley <kaleb@freedesktop.org>
+Date: Fri Nov 14 16:48:43 2003 +0000
+
+ Initial revision
diff --git a/proto/renderproto/Makefile.am b/proto/renderproto/Makefile.am
index 0c896ebfd..dc2602b6c 100644
--- a/proto/renderproto/Makefile.am
+++ b/proto/renderproto/Makefile.am
@@ -6,4 +6,17 @@ render_HEADERS = \
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = renderproto.pc
-EXTRA_DIST = autogen.sh renderproto.pc.in
+renderdocdir = $(datadir)/doc/$(PACKAGE)
+renderdoc_DATA = renderproto.txt
+
+EXTRA_DIST = renderproto.pc.in $(renderdoc_DATA)
+
+EXTRA_DIST += ChangeLog
+MAINTAINERCLEANFILES = ChangeLog
+
+.PHONY: ChangeLog
+
+ChangeLog:
+ $(CHANGELOG_CMD)
+
+dist-hook: ChangeLog
diff --git a/proto/renderproto/autogen.sh b/proto/renderproto/autogen.sh
deleted file mode 100644
index 904cd6746..000000000
--- a/proto/renderproto/autogen.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#! /bin/sh
-
-srcdir=`dirname $0`
-test -z "$srcdir" && srcdir=.
-
-ORIGDIR=`pwd`
-cd $srcdir
-
-autoreconf -v --install || exit 1
-cd $ORIGDIR || exit $?
-
-$srcdir/configure --enable-maintainer-mode "$@"
diff --git a/proto/renderproto/configure.ac b/proto/renderproto/configure.ac
index cfe6a0e6e..102abc95d 100644
--- a/proto/renderproto/configure.ac
+++ b/proto/renderproto/configure.ac
@@ -1,8 +1,12 @@
AC_PREREQ([2.57])
-AC_INIT([RenderProto], [0.9.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([RenderProto], [0.11], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
AM_INIT_AUTOMAKE([foreign dist-bzip2])
+# Require xorg-macros: XORG_CHANGELOG
+m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.2 or later before running autoconf/autogen])])
+XORG_MACROS_VERSION(1.2)
XORG_RELEASE_VERSION
+XORG_CHANGELOG
AC_OUTPUT([Makefile
renderproto.pc])
diff --git a/proto/renderproto/render.h b/proto/renderproto/render.h
index 497af6d10..1afb1ca43 100644
--- a/proto/renderproto/render.h
+++ b/proto/renderproto/render.h
@@ -33,7 +33,7 @@ typedef XID PictFormat;
#define RENDER_NAME "RENDER"
#define RENDER_MAJOR 0
-#define RENDER_MINOR 10
+#define RENDER_MINOR 11
#define X_RenderQueryVersion 0
#define X_RenderQueryPictFormats 1
@@ -139,6 +139,27 @@ typedef XID PictFormat;
#define PictOpConjointXor 0x2b
#define PictOpConjointMaximum 0x2b
+/*
+ * Operators only available in version 0.11
+ */
+#define PictOpBlendMinimum 0x30
+#define PictOpMultiply 0x30
+#define PictOpScreen 0x31
+#define PictOpOverlay 0x32
+#define PictOpDarken 0x33
+#define PictOpLighten 0x34
+#define PictOpColorDodge 0x35
+#define PictOpColorBurn 0x36
+#define PictOpHardLight 0x37
+#define PictOpSoftLight 0x38
+#define PictOpDifference 0x39
+#define PictOpExclusion 0x3a
+#define PictOpHSLHue 0x3b
+#define PictOpHSLSaturation 0x3c
+#define PictOpHSLColor 0x3d
+#define PictOpHSLLuminosity 0x3e
+#define PictOpBlendMaximum 0x3e
+
#define PolyEdgeSharp 0
#define PolyEdgeSmooth 1
diff --git a/proto/renderproto/renderproto.txt b/proto/renderproto/renderproto.txt
index af158b500..5249e6c9e 100644
--- a/proto/renderproto/renderproto.txt
+++ b/proto/renderproto/renderproto.txt
@@ -139,7 +139,11 @@ PICTOP { Clear, Src, Dst, Over, OverReverse, In, InReverse,
ConjointClear, ConjointSrc, ConjointDst, ConjointOver,
ConjointOverReverse, ConjointIn, ConjointInReverse,
ConjointOut, ConjointOutReverse, ConjointAtop,
- ConjointAtopReverse, ConjointXor }
+ ConjointAtopReverse, ConjointXor,
+ Multiply, Screen, Overlay, Darken, Lighten, ColorDodge,
+ ColorBurn, HardLight, SoftLight, Difference, Exclusion,
+ HSLHue, HSLSaturation, HSLColor, HSLLuminosity
+ }
SUBPIXEL { Unknown, HorizontalRGB, HorizontalBGR,
VerticalRGB, VerticalBGR, None
}
@@ -216,12 +220,6 @@ TRAPEZOID [
left, right: LINEFIX
]
(TRAPEZOID is deprecated)
-COLORTRIANGLE [
- p1, p2, p3: COLORPOINT
- ]
-COLORTRAP [
- top, bottom: COLORSPANFIX
- ]
GLYPHSET 32-bit value (top three bits guaranteed to be zero)
GLYPH 32-bit value
GLYPHINFO [
@@ -349,25 +347,27 @@ alpha channel is used in the final image composition.
9. Source and Mask Transformations
-When fetching pixels from the source or mask pictures, Render provides three
+When fetching pixels from the source or mask pictures, Render provides four
options for pixel values which fall outside the drawable (this includes
-pixels within a window geometry obscured by other windows).
+pixels within a window geometry obscured by other windows).
- + Transparent. Missing values are replaced with transparent.
+ + None. Missing values are replaced with transparent.
- + Nearest. Replace missing pixels with the nearest available
+ + Pad. Replace missing pixels with the nearest available
pixel. Where multiple pixels are equidistant, select
those with smallest Y and then smallest X coordinates
- + Tile. Select the pixel which would appear were the
+ + Normal. Select the pixel which would appear were the
drawable tiled to enclose the missing coordinate. If
the tiling doesn't cover the coordinate, use the
selected Constant or Nearest mode.
-When GraphicsExposures are selected in the destination picture, a region
-containing at least the union of all destination pixel values affected by
-data replaced as above is delivered after each compositing operation. If
-the resulting region is empty, a NoExpose event is delivered instead.
+ * Reflect. Select the pixel which would appear were the
+ drawable tiled to enclose the missing coordinate in such a
+ way that tiles in even numbered columns are reflected in the Y
+ axis, and tiles in even numbered rows are reflected in the X
+ axis. Tiles that in both an even numbered row and an even
+ numbered column are reflected in both axes.
To construct the source and mask operands, the computed pixels values are
transformed through a homogeneous matrix, filtered and then used in the
@@ -606,70 +606,62 @@ CreatePicture
dither: ATOM or None
component-alpha: BOOL
- When used as a source or mask operand, the repeat and fill-constant
- values control how pixels outside the geometry of the drawable are
- computed.
-
- Repeat indicates how the drawable contents should be extented
- in both directions.
+ When used as a source or mask operand, Repeat indicates how the
+ drawable contents should be extented in both directions.
The alpha channel of alpha-map is used in place of any alpha channel
contained within the drawable for all rendering operations. The
alpha-mask origin is interpreted relative to the origin of drawable.
- Rendering is additionally clipped by the geometry of alpha-map.
- Exposures to the window do not affect the contents of alpha-map.
- Alpha-map must refer to a picture containing a Pixmap, not a Window
- (or a Match error results).
+ Rendering is additionally clipped by the geometry and clip mask of
+ alpha-map. Exposures to the window do not affect the contents of
+ alpha-map. Alpha-map must refer to a picture containing a Pixmap,
+ not a Window (or a Match error results).
The clip-mask restricts reads and writes to drawable. Only pixels
where the clip-mask has bits set to 1 are read or written. Pixels
are not accessed outside the area covered by the clip-mask or where
the clip-mask has bits set to 0. The clip-mask affects all graphics
requests, including sources. The clip-mask origin is interpreted
- relative to the origin of drawable. If a pixmap is specified as the
- clip-mask, it must have depth 1 and have the same root as the
+ relative to the origin of the picture. If a pixmap is specified as
+ the clip-mask, it must have depth 1 and have the same root as the
drawable (or a Match error results). If clip-mask is None, then
pixels are always drawn, regardless of the clip origin. The
clip-mask can also be set with the SetPictureClipRectangles request.
-
- For ClipByChildren, both source and destination windows are
- additionally clipped by all viewable InputOutput children. For
- IncludeInferiors , neither source nor destination window is clipped
- by inferiors. This will result in including subwindow contents in
- the source and drawing through subwindow boundaries of the
- destination. The use of IncludeInferiors with a source or
- destination window of one depth with mapped inferiors of differing
- depth is not illegal, but the semantics are undefined by this
- extension.
-
- The graphics-exposures flag controls GraphicsExposure event
- generation for Composite requests (and any similar requests
- defined by additional extensions).
-
- Poly-edge and poly-mode control the rasterization of polygons
- as described above.
-
- Dither selects which of the available dither patterns should
- be used. If dither is None, no dithering will be done.
-
- Component-alpha indicates whether each image component is
- intended as a separate alpha value when the picture is used
- as a mask operand.
+ Transformations, filters and repeat modes do not affect the clip
+ mask.
+
+ When a window is used as a destination, the subwindow_mode
+ determines what happens to pixels obscured by inferior
+ windows. For ClipByChildren the window is clipped by inferiors
+ and siblings. For IncludeInferior, the window is clipped by
+ siblings, but not by inferiors.
+
+ When a window is used as source or mask, the subwindow_mode is
+ ignored. Pixels that are obscured by other windows, whether
+ siblings or inferiors, have undefined contents.
+
+ The graphics-exposures flag is ignored. GraphicsExposure events are
+ never generated by this extension.
+
+ Poly-edge and poly-mode control the rasterization of polygons as
+ described above.
+
+ Dither is ignored.
+
+ Component-alpha indicates whether each image component is intended as
+ a separate alpha value when the picture is used as a mask operand.
The default component values are
Component Default
-------------------------------
- repeat False
- fill-nearest: False
+ repeat None
clip-x-origin 0
clip-y-origin 0
clip-mask None
- graphics-exposures True
subwindow-mode ClipByChildren
poly-edge Smooth
poly-mode Precise
- dither None
component-alpha False
ChangePicture
@@ -698,12 +690,14 @@ SetPictureClipRectangles
This request changes clip-mask in picture to the specified list of
rectangles and sets the clip origin. Input and output will be
clipped to remain contained within the rectangles. The clip origin
- is interpreted relative to the origin of the drawable associated
- with picture. The rectangle coordinates are interpreted relative to
- the clip origin. Note that the list of rectangles can be empty,
- which effectively disables output. This is the opposite of passing
- None as the clip-mask in CreatePicture and ChangePicture.
-
+ is interpreted relative to the origin of picture after
+ transformations and repeats have been applied. The rectangle
+ coordinates are interpreted relative to the clip origin.
+
+ The list of rectangles can be empty, which effectively disables
+ output. This is the opposite of passing None as the clip-mask in
+ CreatePicture and ChangePicture.
+
Note that output is clipped to the union of all of the rectangles
and that no particular ordering among the rectangles is required.
@@ -782,12 +776,6 @@ Composite
If mask is None, it is replaced by a constant alpha value of 1.
- When dst has graphics-exposures true, a region covering all dst
- pixels affected by substitutions performed on src or mask pixels
- outside their respective geometries is computed. If that region is
- empty, a NoExpose event is sent. Otherwise, a sequence of
- GraphicsExpose events are sent covering that region.
-
FillRectangles
op: PICTOP
@@ -833,6 +821,8 @@ Trapezoids
for each trapezoid
Combine (op, dst, source, trapezoid)
+ (The Trapezoids request is deprecated)
+
Triangles
op: PICTOP
@@ -917,31 +907,6 @@ TriFan
for each triangle
Combine (op, dst, source, triangle)
-ColorTrapezoids
-
- op: PICTOP
- dst: PICTURE
- trapezoids: LISTofCOLORTRAP
-
- The geometry of the trapezoids must meet the same requirements as
- for the Trapezoids request. The trapezoids are filled in the order
- they occur in the list.
-
-ColorTriangles
-
- op: PICTOP
- dst: PICTURE
- triangles: LISTofCOLORTRIANGLE
-
- The colored triangles are rasterized in the order they occur in the
- list.
-
-???
-
-Should I included compressed triangle representations here?
-
-???
-
CreateGlyphSet
gsid: GLYPHSET
@@ -992,21 +957,6 @@ AddGlyphs
are stored with each glyph in a separate Z-format image padded to a
32-bit boundary. Existing glyphs with the same names are replaced.
-AddGlyphsFromPicture
-
- glyphset: GLYPHSET
- src: PICTURE
- glyphs: LISTofPICTGLYPH
-
- Errors:
- GlyphSet, Alloc
-
- This request adds glyphs to glyphset by copying them from src from
- the locations included in glyphs. Existing glyphs with the same
- names are replaced. Src may be in a different PictFormat than
- glyphset, in which case the images are converted to the glyphset
- format.
-
FreeGlyphs
glyphset: GLYPHSET
@@ -1251,3 +1201,7 @@ what each version before 1.0 implemented:
The repeat picture attribute now supports Pad and
Reflect, older versions only supported None and Normal.
+
+ 0.11:
+ Blend mode operators
+