invert-p

Generic Function

Package: common-graphics

Arguments: pixmap

Returns (or sets with setf) whether the rows of pixels in pixmap are ordered such that they would appear inverted in the printed representation of the pixmap contents. That is, if invert-p is true, it indicates that the first row in the pixmap contents is the bottom row of pixels in the actual image, though that row will appear on top when the pixmap contents are printed. invert-p does not normally need to be set by an application, since Common Graphics internally knows how to handle either mode. The default is nil, so that when the contents of a pixmap are specified as a static list of lists in lisp source code, the source code will be oriented the way that the actual image would appear in a window.

Note that the Windows operating system expects the first row of pixels to be the bottom of the image, and so what Common Graphics refers to as an "inverted" pixmap is actually the most natural orientation for the OS. When invert-p is nil, Common Graphics internally tells the OS to flip the pixmap whenever it is drawn, and so it may be that a pixmap that does not use a pixmap-handle draws somewhat faster when invert-p is true. And more important, there is a bug that is apparently in Windows 95 (but not Windows 98 or NT) where sometimes a pixmap will not appear at all when copied to a window if the pixmap's invert-p property is nil and it does not use a pixmap handle. If this happens, you may need to reverse the order of the rows of the pixmap and set invert-p to true. This would never be necessary for a pixmap that was loaded from a file using load-pixmap, since invert-p will always be true. And in Allegro CL release 5.0.1 and beyond, if a pixmap is created programmatically by directly specifying the :contents initarg and (if applicable) the :mask-contents initarg (rather than passing the :texture, :texture-info, or :mask initargs), then Common Graphics will invert the pixmap automatically (unless the :invert-p initarg is explicitly passed as true) in order to avoid this bug.

invert-p is a property of the pixmap class.

Common Graphics and IDE documentation is described in About Common Graphics and IDE documentation in cgide.htm.

The documentation is described in introduction.htm and the index is in index.htm.

Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.

Created 2000.10.5.