Next: , Previous: , Up: Displays   [Contents][Index]


3.2 Display Attributes

The complete set of display attributes is discussed in the following paragraphs.

Function: display-authorization-data display
display

A display object.

Returns the authorization data vector for display that was transmitted to the server by open-display during connection setup. The data is specific to the particular authorization protocol that was used. The display-authorization-name function returns the protocol used.

authorization-data

Type vector.

Function: display-authorization-name display
display

A display object.

Returns the authorization protocol namestring for display that was transmitted by open-display to the server during connection setup. The authorization-name indicates what authorization protocol the client expects the server to use. Specification of valid authorization mechanisms is not part of the X protocol. A server that implements a different protocol than the client expects, or a server that only implements the host-based mechanism, can simply ignore this information. If both name and data strings are empty, this is to be interpreted as "no explicit authorization."

authorization-name

Type string.

Function: display-bitmap-format display
display

A display object.

Returns the bitmap-format information for the specified display.

bitmap-format

Type bitmap-format.

Function: display-byte-order display
display

A display object.

Returns the byte-order to be employed in communication with the server for the given display. The possible values are as follows:

:lsbfirst

Values are transmitted least significant byte first.

:msbfirst

Values are transmitted most significant byte first.

Except where explicitly noted in the protocol, all 16-bit and 32-bit quantities sent by the client must be transmitted with this byte-order, and all 16-bit and 32-bit quantities returned by the server are transmitted with this byte-order.

byte-order

Either :lsbfirst or :msbfirst.

Function: display-display display
display

A display object.

Returns the display-number for the host associated with display.

display-number

Type integer.

Function: display-error-handler display
display

A display object.

Returns and (with setf) sets the error-handler function for the given display. CLX calls (one of) the display error handler functions to handle server errors returned to the connection. The default error handler, default-error-handler, signals conditions as they occur. See Errors, for a list of the conditions that CLX can signal. For more information about errors and error handling, refer to the section entitled Common Lisp Condition System in the Lisp Reference manual.

If the value of error-handler is a sequence, it is expected to contain a handler function designator for each specific error. The error code is used as an index into the sequence to fetch the appropriate handler function. If this element is a function designator, it is called for all errors. Any results returned by the handler are ignored since it is assumed the handler either takes care of the error completely or else signals. The arguments passed to the handler function are the display object, a symbol naming the type of error, and a set of keyword-value argument pairs that vary depending on the type of error. For all core errors, the keyword-value argument pairs are:

:current-sequencecard16
:majorcard8
:minorcard16
:sequencecard16

For colormap, cursor, drawable, font, gcontext, id-choice, pixmap, and window errors, the keyword-value pairs are the core error pairs plus:

:resource-idcard32

For :atom errors, the keyword-value pairs are the core error pairs plus:

:atom-idcard32

For :value errors, the keyword-value pairs are the core error pairs plus:

:valuecard32
error-handler

Type function or symbol or sequence.

Function: display-image-lsb-first-p display
display

A display object.

Although the server is generally responsible for byte swapping communication data to match the client, images (pixmaps/bitmaps) are always transmitted and received in formats (including byte order) specified by the server. Within images for each scan-line unit in bitmaps or for each pixel value in pixmaps, the leftmost bit in the image as displayed on the screen is either the least or most significant bit in the unit. For the given display, display-image-lsb-first-p returns non-nil if the leftmost bit is the least significant bit; otherwise, it returns nil.

image-lsb-first-p

Type boolean.

Function: display-keycode-range display
display

A display object.

Returns min-keycode and max-keycode as multiple values. See the display-max-keycode and display-min-keycode functions for additional information.

min-keycode
max-keycode

Type card8.

Function: display-max-keycode display
display

A display object.

Returns the maximum keycode value for the specified display. This value is never greater than 255. Not all keycodes in the allowed range are required to have corresponding keys.

max-keycode

Type card8.

Function: display-max-request-length display
display

A display object.

Returns the maximum length of a request, in four-byte units, that is accepted by the specified display. Requests larger than this generate a length error, and the server will read and simply discard the entire request. This length is always at least 4096 (that is, requests of length up to and including 16384 bytes are accepted by all servers).

max-request-length

Type card16.

Function: display-min-keycode display
display

A display object.

Returns the minimum keycode value for the specified display. This value is never less than eight. Not all keycodes in the allowed range are required to have corresponding keys.

min-keycode

Type card8.

Function: display-motion-buffer-size display
display

A display object.

Returns the approximate size of the motion buffer for the specified display. The server can retain the recent history of pointer motion at a finer granularity than is reported by :motion-notify events. Such history is available through the motion-events function.

motion-buffer-size

Type card32.

Function: display-nscreens display
display

A display object.

Returns the number of screens available on display.

Function: display-p display
display-p

Type boolean.

Returns non-nil if display is a display object;

Function: display-pixmap-formats display
display

A display object.

Returns the list of pixmap-format values for the given display. This list contains one entry for each depth value. The entry describes the format used to represent images of that depth. An entry for a depth is included if any screen supports that depth, and all screens supporting that depth must support (only) the format for that depth.

pixmap-formats

Type list.

Function: display-plist display
display

A display object.

Returns and (with setf) sets the property list for the specified display. This function provides a hook where extensions can add data.

plist

Type list.

Function: display-protocol-major-version display
display

A display object.

Returns the major version number of the X protocol associated with the specified display. In general, the major version would increment for incompatible changes. The returned protocol version number indicates the protocol the server actually supports. This might not equal the version supported by the client. The server can (but need not) refuse connections from clients that offer a different version than the server supports. A server can (but need not) support more than one version simultaneously.

protocol-major-version

Type card16.

Function: display-protocol-minor-version display
display

A display object.

Returns the minor protocol revision number associated with the specified display. In general, the minor version would increment for small upward compatible changes in the X protocol.

protocol-minor-version

Type card16.

Function: display-protocol-version display
display

A display object.

Returns protocol-major-version and protocol-minor-version as multiple values. See the display-protocol-major-version and display-protocol-minor-version functions for additional information.

protocol-major-version
protocol-minor-version
Function: display-resource-id-base display
display

A display object.

Returns the resource-id-base value that was returned from the server during connection setup for the specified display. This is used in combination with the resource-id-mask to construct valid IDs for this connection.

resource-id-base

Type resource-id.

Function: display-resource-id-mask display
display

A display object.

Returns the resource-id-mask that was returned from the server during connection setup for the specified display. The resource-id-mask contains a single contiguous set of bits (at least 18) which the client uses to allocate resource IDs for types window, pixmap, cursor, font, gcontext, and colormap by choosing a value with (only) some subset of these bits set, and oring it with the resource-id-base. Only values constructed in this way can be used to name newly created server resources over this connection. Server resource IDs never have the top three bits set. The client is not restricted to linear or contiguous allocation of server resource IDs. Once an ID has been freed, it can be reused, but this should not be necessary.

An ID must be unique with respect to the IDs of all other server resources, not just other server resources of the same type. However, note that the value spaces of server resource identifiers, atoms, visualids, and keysyms are distinguished by context, and as such are not required to be disjoint (for example, a given numeric value might be both a valid window ID, a valid atom, and a valid keysym.)

resource-id-mask

Type resource-id.

Function: display-roots display
display

A display object.

Returns a list of all the screen structures available for the given display.

roots

A list of screens.

Function: display-vendor display
display

A display object.

Returns vendor-name and release-number as multiple values. See the display-vendor-name and display-release-number functions for additional information.

vendor-name
release-number
Function: display-vendor-name display
display

A display object.

Returns a string that provides some vendor identification of the X server implementation associated with the specified display.

vendor-name

Type string.

Function: display-release-number display
display

A display object.

Returns the X protocol version number for this implementation of CLX.

version-number

Type card32.

Function: display-xid display
display

A display object.

Returns the function designator that is used to allocate server resource IDs for this display.

resource-allocator

Type function or symbol.

Macro: with-display display &body body

This macro is for use in a multi-process environment. with-display provides exclusive access to the local display object for multiple request generation. It need not provide immediate exclusive access for replies. That is, if another process is waiting for a reply (while not in a with-display), then synchronization need not (but can) occur immediately. Except where noted, all routines effectively contain an implicit with-display where needed, so that correct synchronization is always provided at the interface level on a per-call basis. Nested uses of this macro work correctly. This macro does not prevent concurrent event processing (see with-event-queue).

display

A display.


Next: , Previous: , Up: Displays   [Contents][Index]