Many window manager extensions need to be able to associate Lisp data with individual windows. For example, the module handling iconification needs to associate a boolean value with each window--whether that window is iconified or not.
To solve this problem, Sawfish gives each window a property list. These are exactly analogous to the property lists stored with each symbol (see Property Lists); they allow values to be associated with Lisp symbols, for a particular window.
Note that these properties are different to the properties that X stores with each window, since these properties are internal to the window manager (see X Properties).
For a list of the standard window properties, see Standard Properties.
| window-put window property value | Function |
| Set the lisp property named property (a symbol) associated with window object window to value. Note that these are Lisp properties not X properties. |
| window-get window property | Function |
Return the window property named property (a symbol) associated
with the window object window, or nil if no such property
exists. Note that these are Lisp properties not X properties.
|
| map-window-properties function window | Function |
Call (function property value) on each of the
Lisp properties bound to window. Returns the value of the last
function invocation. If any function returns nil,
map-window-properties returns nil immediately.
|