29.4.1 Access to Frame Parameters
These functions let you read and change the parameter values of a frame.
function
frame-parameter frame parameter​
This function returns the value of the parameter parameter
(a symbol) of frame
. If frame
is nil
, it returns the selected frame’s parameter. If frame
has no setting for parameter
, this function returns nil
.
function
frame-parameters \&optional frame​
The function frame-parameters
returns an alist listing all the parameters of frame
and their values. If frame
is nil
or omitted, this returns the selected frame’s parameters
function
modify-frame-parameters frame alist​
This function alters the frame frame
based on the elements of alist
. Each element of alist
has the form (parm . value)
, where parm
is a symbol naming a parameter. If you don’t mention a parameter in alist
, its value doesn’t change. If frame
is nil
, it defaults to the selected frame.
Some parameters are only meaningful for frames on certain kinds of display (see Frames). If alist
includes parameters that are not meaningful for the frame
’s display, this function will change its value in the frame’s parameter list, but will otherwise ignore it.
When alist
specifies more than one parameter whose value can affect the new size of frame
, the final size of the frame may differ according to the toolkit used. For example, specifying that a frame should from now on have a menu and/or tool bar instead of none and simultaneously specifying the new height of the frame will inevitably lead to a recalculation of the frame’s height. Conceptually, in such case, this function will try to have the explicit height specification prevail. It cannot be excluded, however, that the addition (or removal) of the menu or tool bar, when eventually performed by the toolkit, will defeat this intention.
Sometimes, binding frame-inhibit-implied-resize
(see Implied Frame Resizing) to a non-nil
value around calls to this function may fix the problem sketched here. Sometimes, however, exactly such binding may be hit by the problem.
function
set-frame-parameter frame parm value​
This function sets the frame parameter parm
to the specified value
. If frame
is nil
, it defaults to the selected frame.
function
modify-all-frames-parameters alist​
This function alters the frame parameters of all existing frames according to alist
, then modifies default-frame-alist
(and, if necessary, initial-frame-alist
) to apply the same parameter values to frames that will be created henceforth.