@c Copyright (C) 1995, 1996 Ben Wing.
@c See the file lispref.texi for copying conditions.
@setfilename ../../info/toolbar.info
-@node Toolbar, Scrollbars, Dialog Boxes, top
+@node Toolbar, Gutter, Dialog Boxes, top
@chapter Toolbar
@cindex toolbar
@menu
* Toolbar Intro:: An introduction.
-* Toolbar Descriptor Format:: How to create a toolbar.
+* Creating Toolbar:: How to create a toolbar.
+* Toolbar Descriptor Format:: Accessing and modifying a toolbar's
+ properties.
* Specifying the Toolbar:: Setting a toolbar's contents.
* Other Toolbar Variables:: Controlling the size of toolbars.
@end menu
@section Toolbar Intro
A @dfn{toolbar} is a bar of icons displayed along one edge of a frame.
-You can view a toolbar as a series of menu shortcuts -- the most
+You can view a toolbar as a series of menu shortcuts---the most
common menu options can be accessed with a single click rather than
a series of clicks and/or drags to select the option from a menu.
Consistent with this, a help string (called the @dfn{help-echo})
the user sets the default toolbar to the same position, it will just
not be visible.
+@node Creating Toolbar
+@section Creating Toolbar
+
+@defun make-toolbar-specifier spec-list
+
+Return a new @code{toolbar} specifier object with the given
+specification list. @var{spec-list} can be a list of specifications
+(each of which is a cons of a locale and a list of instantiators), a
+single instantiator, or a list of instantiators. @xref{Specifiers}, for
+more information about specifiers.
+
+Toolbar specifiers are used to specify the format of a toolbar. The
+values of the variables @code{default-toolbar}, @code{top-toolbar},
+@code{left-toolbar}, @code{right-toolbar}, and @code{bottom-toolbar} are
+always toolbar specifiers.
+
+Valid toolbar instantiators are called "toolbar descriptors"
+and are lists of vectors. See @code{default-toolbar} for a description
+of the exact format.
+@end defun
+
@node Toolbar Descriptor Format
@section Toolbar Descriptor Format
and query them with @code{specifier-specs} or @code{specifier-instance}.
You will get an error if you try to set them using @code{setq}. The
valid instantiators for these specifiers are toolbar descriptors, as
-described above. @xref{Specifiers} for more information.
+described above. @xref{Specifiers}, for more information.
Most of the time, you will set @code{default-toolbar}, which allows
the user to choose where the toolbar should go.
@defvr Specifier default-toolbar
The position of this toolbar is specified in the function
-@code{default-toolbar-position}. If the corresponding
+@code{default-toolbar-position}. If the corresponding
position-specific toolbar (e.g. @code{top-toolbar} if
@code{default-toolbar-position} is @code{top}) does not specify a
toolbar in a particular domain, then the value of @code{default-toolbar}
@end defvr
@defun toolbar-specifier-p object
-This function returns non-nil if @var{object} is a toolbar specifier.
+This function returns non-@code{nil} if @var{object} is a toolbar specifier.
Toolbar specifiers are the actual objects contained in the toolbar
variables described above, and their valid instantiators are
toolbar descriptors (@pxref{Toolbar Descriptor Format}).
left toolbar width for that frame to 68 pixels, then the frame will be
sized to fit 80 characters plus a 68-pixel left toolbar. If you then
set the left toolbar width to 0 for a particular buffer (or if that
-buffer does not specify a left toolbar or has a nil value specified for
+buffer does not specify a left toolbar or has a @code{nil} value specified for
@code{left-toolbar-visible-p}), you will find that, when that buffer is
displayed in the selected window, the window will have a width of 86 or
-87 characters -- the frame is sized for a 68-pixel left toolbar but the
+87 characters---the frame is sized for a 68-pixel left toolbar but the
selected window specifies that the left toolbar is not visible, so it is
expanded to take up the slack.