mwm(1X) UNIX Programmer's Manual mwm(1X)
NAME
mwm - The Motif Window Manager
SYNOPSIS
mwm
[ options ]
DESCRIPTION
mwm is an X Window System client that provides window
management functionality and some session management func-
tionality. It provides functions that facilitate control
(by the user and the programmer) of elements of window state
such as placement, size, icon/normal display, and input-
focus ownership. It also provides session management func-
tions such as stopping a client.
Options
-display display
This option specifies the display to use; see X(1).
-xrm resourcestring
This option specifies a resource string to use.
-multiscreen
This option causes mwm to manage all screens on the
display. The default is to manage only a single
screen.
-name name
This option causes mwm to retrieve its resources using
the specified name, as in name*resource.
-screens name [name [...]]
This option specifies the resource names to use for the
screens managed by mwm. If mwm is managing a single
screen, only the first name in the list is used. If
mwm is managing multiple screens, the names are
assigned to the screens in order, starting with screen
0. Screen 0 gets the first name, screen 1 the second
name, and so on.
Appearance
The following sections describe the basic default behaviors
of windows, icons, the icon box, input focus, and window
stacking. The appearance and behavior of the window manager
can be altered by changing the configuration of specific
resources. Resources are defined under the heading "X
DEFAULTS."
Screens
By default, mwm manages only the single screen specified by
Motif Release 1.2: May 1992 1
mwm(1X) UNIX Programmer's Manual mwm(1X)
the -display option or the DISPLAY environment variable (by
default, screen 0). If the -multiscreen option is specified
or if the multiScreen resource is True, mwm tries to manage
all the screens on the display.
When mwm is managing multiple screens, the -screens option
can be used to give each screen a unique resource name. The
names are separated by blanks, for example, -screens mwm0
mwm1. If there are more screens than names, resources for
the remaining screens will be retrieved using the first
name. By default, the screen number is used for the screen
name.
Windows
Default mwm window frames have distinct components with
associated functions:
Title Area
In addition to displaying the client's title, the title
area is used to move the window. To move the window,
place the pointer over the title area, press button 1
and drag the window to a new location. By default, a
wire frame is moved during the drag to indicate the new
location. When the button is released, the window is
moved to the new location.
Title Bar
The title bar includes the title area, the minimize
button, the maximize button, and the window menu but-
ton. In shaped windows, such as round windows, the
title bar floats above the window.
Minimize Button
To turn the window into an icon, click button 1 on the
minimize button (the frame box with a small square in
it).
Maximize Button
To make the window fill the screen (or enlarge to the
largest size allowed by the configuration files), click
button 1 on the maximize button (the frame box with a
large square in it).
Window Menu Button
The window menu button is the frame box with a horizon-
tal bar in it. To pull down the window menu, press
button 1. While pressing, drag the pointer on the menu
to your selection, then release the button when your
selection is highlighted. Pressing button 3 in the
title bar or resize border handles also posts the win-
dow menu. Alternately, you can click button 1 to pull
down the menu and keep it posted; then position the
Motif Release 1.2: May 1992 2
mwm(1X) UNIX Programmer's Manual mwm(1X)
pointer and select. You can also post the window menu
by pressing <Shift> <Esc> or <Alt> <Space>. Double-
clicking button 1 with the pointer on the window menu
button closes the window. The following table lists
the contents of the window menu.
Default Window Menu
Selection Accelerator Description
__________________________________________________________
Restore Alt+F5 Restores the window to its size
before minimizing or maximizing
Move Alt+F7 Allows the window to be moved
with keys or mouse
Size Alt+F8 Allows the window to be resized
Minimize Alt+F9 Turns the window into an icon
Maximize Alt+F10 Makes the window fill the screen
Lower Alt+F3 Moves window to bottom of window
stack
Close Alt+F4 Causes client to terminate
Resize Border Handles
To change the size of a window, move the pointer over a
resize border handle (the cursor changes), press button
1, and drag the window to a new size. When the button
is released, the window is resized. While dragging is
being done, a rubber-band outline is displayed to indi-
cate the new window size.
Matte
An optional matte decoration can be added between the
client area and the window frame. A matte is not actu-
ally part of the window frame. There is no functional-
ity associated with a matte.
Icons
Icons are small graphic representations of windows. A win-
dow can be minimized (iconified) using the minimize button
on the window frame. Icons provide a way to reduce clutter
on the screen.
Pressing mouse button 1 when the pointer is over an icon
causes the icon's window menu to pop up. Releasing the but-
ton (press + release without moving mouse = click) causes
the menu to stay posted. The menu contains the following
selections:
Motif Release 1.2: May 1992 3
mwm(1X) UNIX Programmer's Manual mwm(1X)
Icon Window Menu
Selection Accelerator Description
_______________________________________________________________
Restore Alt+F5 Opens the associated window
Move Alt+F7 Allows the icon to be moved with keys
Size Alt+F8 Inactive (not an option for icons)
Minimize Alt+F9 Inactive (not an option for icons)
Maximize Alt+F10 Opens the associated window and makes
it fill the screen
Lower Alt+F3 Moves icon to bottom of icon stack
Close Alt+F4 Removes client from mwm management
Note that pressing button 3 over an icon also causes the
icon's window menu to pop up. To make a menu selection,
drag the pointer over the menu and release button 3 when the
desired item is highlighted.
Double-clicking button 1 on an icon invokes the
f.restore_and_raise function and restores the icon's associ-
ated window to its previous state. For example, if a maxim-
ized window is iconified, then double-clicking button 1
restores it to its maximized state. Double-clicking button 1
on the icon box's icon opens the icon box and allows access
to the contained icons. (In general, double-clicking a
mouse button is a quick way to perform a function.) Pressing
<Shift> <Esc> or <Menu> (the pop-up menu key) causes the
icon window menu of the currently selected icon to pop up.
Icon Box
When icons begin to clutter the screen, they can be packed
into an icon box. (To use an icon box, mwm must be started
with the icon box configuration already set.) The icon box
is a mwm window that holds client icons. It includes one or
more scroll bars when there are more window icons than the
icon box can show at the same time.
Icons in the icon box can be manipulated with the mouse.
The following table summarizes the behavior of this inter-
face. Button actions apply whenever the pointer is on any
part of the icon. Note that double-clicking an icon in the
icon box invokes the f.restore_and_raise function.
Motif Release 1.2: May 1992 4
mwm(1X) UNIX Programmer's Manual mwm(1X)
Button Action Description
_______________________________________________________________
Button 1 click Selects the icon
Button 1 double-click Normalizes (opens) the associated win-
dow
Raises an already open window to the
top of the stack
Button 1 drag Moves the icon
Button 3 press Causes the menu for that icon to pop up
Button 3 drag Highlights items as the pointer moves
across the menu
Pressing mouse button 3 when the pointer is over an icon
causes the menu for that icon to pop up.
Icon Menu for the Icon Box
Selection Accelerator Description
___________________________________________________________________________
Restore Alt+F5 Opens the associated window (if not already open)
Move Alt+F7 Allows the icon to be moved with keys
Size Alt+F8 Inactive
Minimize Alt+F9 Inactive
Maximize Alt+F10 Opens the associated window (if not already open)
and maximizes its size
Lower Alt+F3 Inactive
Close Alt+F4 Removes client from mwm management
To pull down the window menu for the icon box itself, press
button 1 with the pointer over the menu button for the icon
box. The window menu of the icon box differs from the win-
dow menu of a client window: The "Close" selection is
replaced with the "PackIcons Shift+Alt+F7" selection. When
selected, PackIcons packs the icons in the box to achieve
neat rows with no empty slots.
You can also post the window menu by pressing <Shift> <Esc>
or <Alt> <Space>. Pressing <Menu> (the pop-up menu key)
causes the icon window menu of the currently selected icon
to pop up.
Input Focus
mwm supports (by default) a keyboard input focus policy of
explicit selection. This means when a window is selected to
get keyboard input, it continues to get keyboard input until
the window is withdrawn from window management, another win-
dow is explicitly selected to get keyboard input, or the
window is iconified. Several resources control the input
Motif Release 1.2: May 1992 5
mwm(1X) UNIX Programmer's Manual mwm(1X)
focus. The client window with the keyboard input focus has
the active window appearance with a visually distinct window
frame.
The following tables summarize the keyboard input focus
selection behavior:
Button Action Object Function Description
_________________________________________________________________
Button 1 press Window / window frame Keyboard focus selection
Button 1 press Icon Keyboard focus selection
Key Action Function Description
_________________________________________
[Alt][Tab] Move input focus to
next window in window
stack (available only
in explicit focus
mode)
_________________________________________
[Alt][Shift][Tab] Move input focus to
previous window in
window stack (avail-
able only in explicit
focus mode)
Window Stacking
There are two types of window stacks: global window stacks
and an application's local family window stack.
The global stacking order of windows may be changed as a
result of setting the keyboard input focus, iconifying a
window, or performing a window manager window stacking func-
tion. When keyboard focus policy is explicit the default
value of the focusAutoRaise resource is True. This causes a
window to be raised to the top of the stack when it receives
input focus, for example, by pressing button 1 on the title
bar. The key actions defined in the previous table will
thus raise the window receiving focus to the top of the
stack.
In pointer mode, the default value of focusAutoRaise is
False, that is, the window stacking order is not changed
when a window receives keyboard input focus. The following
key actions can be used to cycle through the global window
stack.
Key Action Function Description
________________________________________________________
[Alt][ESC] Place top window on bottom of stack
[Alt][Shift][ESC] Place bottom window on top of stack
Motif Release 1.2: May 1992 6
mwm(1X) UNIX Programmer's Manual mwm(1X)
By default, a window's icon is placed on the bottom of the
stack when the window is iconified; however, the default can
be changed by the lowerOnIconify resource.
Transient windows (secondary windows such a dialog boxes)
stay above their parent windows by default. However, an
application's local family stacking order may be changed to
allow a transient window to be placed below its parent top-
level window. The following parameters show the modifica-
tion of the stacking order for the f.lower function.
f.lower
Lowers the transient window within the family (staying
above the parent) and lowers the family in the global
window stack.
f.lower [within]
Lowers the transient window within the family (staying
above the parent) but does not lower the family in the
global window stack.
f.lower [freeFamily]
Lowers the window free from its family stack (below the
parent), but does not lower the family in the global
window stack.
The parameters within and freeFamily can also be used with
f.raise and f.raise_lower.
X Defaults
mwm is configured from its resource database. This database
is built from the following sources. They are listed in
order of precedence, low to high:
/usr/lib/X11/app-defaults/Mwm $HOME/Mwm RESOURCE_MANAGER
root window property or $HOME/.Xdefaults XENVIRONMENT vari-
able or $HOME/.Xdefaults-host mwm command line options
The file names /usr/lib/X11/app-defaults/Mwm and $HOME/Mwm
represent customary locations for these files. The actual
location of the system-wide class resource file may depend
on the XFILESEARCHPATH environment variable and the current
language environment. The actual location of the user-
specific class resource file may depend on the XUSER-
FILESEARCHPATH and XAPPLRESDIR environment variables and the
current language environment.
Entries in the resource database may refer to other resource
files for specific types of resources. These include files
that contain bitmaps, fonts, and mwm specific resources such
as menus and behavior specifications (for example, button
and key bindings).
Motif Release 1.2: May 1992 7
mwm(1X) UNIX Programmer's Manual mwm(1X)
Mwm is the resource class name of mwm and mwm is the default
resource name used by mwm to look up resources. the
-screens command line option specifies resource names, such
as "mwm_b+w" and "mwm_color".) In the following discussion
of resource specification, "Mwm" and "mwm" (and the aliased
mwm resource names) can be used interchangeably, but "mwm"
takes precedence over "Mwm".
mwm uses the following types of resources:
Component Appearance Resources:
These resources specify appearance attributes of window
manager user interface components. They can be applied to
the appearance of window manager menus, feedback windows
(for example, the window reconfiguration feedback window),
client window frames, and icons.
General Appearance and Behavior Resources:
These resources specify mwm appearance and behavior (for
example, window management policies). They are not set
separately for different mwm user interface components.
Client Specific Resources:
These mwm resources can be set for a particular client win-
dow or class of client windows. They specify client-
specific icon and client window frame appearance and
behavior.
Resource identifiers can be either a resource name (for
example, foreground) or a resource class (for example, Fore-
ground). If the value of a resource is a filename and if
the filename is prefixed by " /", then it is relative to
the path contained in the HOME environment variable (gen-
erally the user's home directory).
Component Appearance Resources
The syntax for specifying component appearance resources
that apply to window manager icons, menus, and client window
frames is
Mwm*resource_id
For example, Mwm*foreground is used to specify the fore-
ground color for mwm menus, icons, client window frames, and
feedback dialogs.
The syntax for specifying component appearance resources
that apply to a particular mwm component is
Motif Release 1.2: May 1992 8
mwm(1X) UNIX Programmer's Manual mwm(1X)
Mwm*[menuiconclientfeedback]*resource_id
If menu is specified, the resource is applied only to mwm
menus; if icon is specified, the resource is applied to
icons; and if client is specified, the resource is applied
to client window frames. For example, Mwm*icon*foreground
is used to specify the foreground color for mwm icons,
Mwm*menu*foreground specifies the foreground color for mwm
menus, and Mwm*client*foreground is used to specify the
foreground color for mwm client window frames.
The appearance of the title area of a client window frame
(including window management buttons) can be separately con-
figured. The syntax for configuring the title area of a
client window frame is
Mwm*client*title*resource_id
For example, Mwm*client*title*foreground specifies the fore-
ground color for the title area. Defaults for title area
resources are based on the values of the corresponding
client window frame resources.
The appearance of menus can be configured based on the name
of the menu. The syntax for specifying menu appearance by
name is
Mwm*menu*menu_name*resource_id
For example, Mwm*menu*my_menu*foreground specifies the fore-
ground color for the menu named my_menu. The user can also
specify resources for window manager menu components, that
is, the gadgets which comprise the menu. These may include
for example, a menu title, title separator, one or more but-
tons, and separators. If a menu contains more than one
instance of a class, such as multiple PushButtonGadgets, the
name of the first instance is "PushButtonGadget1", the
second is "PushButtonGadget2", and so on. The following
list identifies the naming convention used for window
manager menu components:
⊕ Menu Title LabelGadget - "TitleName"
⊕ Menu Title SeparatorGadget - "TitleSeparator"
⊕ CascadeButtonGadget - "CascadeButtonGadget<n>"
⊕ PushButtonGadget - "PushButtonGadget<n>"
⊕ SeparatorGadget - "SeparatorGadget<n>"
Motif Release 1.2: May 1992 9
mwm(1X) UNIX Programmer's Manual mwm(1X)
Refer to the man page for each class for a list of resources
which can be specified.
The following component appearance resources that apply to
all window manager parts can be specified:
Component Appearance Resources - All Window Manager Parts
Name Class Value Type Default
______________________________________________________________
background Background color varies†
backgroundPixmap BackgroundPixmap string†† varies†
bottomShadowColor Foreground color varies†
bottomShadowPixmap BottomShadowPixmap string†† varies†
fontList FontList string††† "fixed"
foreground Foreground color varies†
saveUnder SaveUnder T/F F
topShadowColor Background color varies†
topShadowPixmap TopShadowPixmap string†† varies†
†The default is chosen based on the visual type of the
screen. ††Image name. See XmInstallImage(3X). †††X11 X
Logical Font Description
background (class Background)
This resource specifies the background color. Any legal
X color may be specified. The default value is chosen
based on the visual type of the screen.
backgroundPixmap (class BackgroundPixmap)
This resource specifies the background Pixmap of the
mwm decoration when the window is inactive (does not
have the keyboard focus). The default value is chosen
based on the visual type of the screen.
bottomShadowColor (class Foreground)
This resource specifies the bottom shadow color. This
color is used for the lower and right bevels of the
window manager decoration. Any legal X color may be
specified. The default value is chosen based on the
visual type of the screen.
bottomShadowPixmap (class BottomShadowPixmap)
This resource specifies the bottom shadow Pixmap. This
Pixmap is used for the lower and right bevels of the
window manager decoration. The default is chosen based
on the visual type of the screen.
fontList (class FontList)
This resource specifies the font used in the window
manager decoration. The character encoding of the font
should match the character encoding of the strings that
are used. The default is "fixed."
Motif Release 1.2: May 1992 10
mwm(1X) UNIX Programmer's Manual mwm(1X)
foreground (class Foreground)
This resource specifies the foreground color. The
default is chosen based on the visual type of the
screen.
saveUnder (class SaveUnder)
This is used to indicate whether "save unders" are used
for mwm components. For this to have any effect, save
unders must be implemented by the X server. If save
unders are implemented, the X server saves the contents
of windows obscured by windows that have the save under
attribute set. If the saveUnder resource is True, mwm
will set the save under attribute on the window manager
frame of any client that has it set. If saveUnder is
False, save unders will not be used on any window
manager frames. The default value is False.
topShadowColor (class Background)
This resource specifies the top shadow color. This
color is used for the upper and left bevels of the win-
dow manager decoration. The default is chosen based on
the visual type of the screen.
topShadowPixmap ( class TopShadowPixmap)
This resource specifies the top shadow Pixmap. This
Pixmap is used for the upper and left bevels of the
window manager decoration. The default is chosen based
on the visual type of the screen.
The following component appearance resources that apply to
frame and icons can be specified:
Frame and Icon Components
Name Class Value Type Default
____________________________________________________________________
activeBackground Background color varies†
activeBackgroundPixmap BackgroundPixmap string†† varies†
activeBottomShadowColor Foreground color varies†
activeBottomShadowPixmap BottomShadowPixmap string†† varies†
activeForeground Foreground color varies†
activeTopShadowColor Background color varies†
activeTopShadowPixmap TopShadowPixmap string†† varies†
†The default is chosen based on the visual type of the
screen. ††See XmInstallImage(3X).
activeBackground (class Background)
This resource specifies the background color of the mwm
decoration when the window is active (has the keyboard
focus). The default is chosen based on the visual type
of the screen.
Motif Release 1.2: May 1992 11
mwm(1X) UNIX Programmer's Manual mwm(1X)
activeBackgroundPixmap (class ActiveBackgroundPixmap)
This resource specifies the background Pixmap of the
mwm decoration when the window is active (has the key-
board focus). The default is chosen based on the
visual type of the screen.
activeBottomShadowColor (class Foreground)
This resource specifies the bottom shadow color of the
mwm decoration when the window is active (has the key-
board focus). The default is chosen based on the
visual type of the screen.
activeBottomShadowPixmap (class BottomShadowPixmap)
This resource specifies the bottom shadow Pixmap of the
mwm decoration when the window is active (has the key-
board focus). The default is chosen based on the
visual type of the screen.
activeForeground (class Foreground)
This resource specifies the foreground color of the mwm
decoration when the window is active (has the keyboard
focus). The default is chosen based on the visual type
of the screen.
activeTopShadowColor (class Background)
This resource specifies the top shadow color of the mwm
decoration when the window is active (has the keyboard
focus). The default is chosen based on the visual type
of the screen.
activeTopShadowPixmap (class TopShadowPixmap)
This resource specifies the top shadow Pixmap of the
mwm decoration when the window is active (has the key-
board focus). The default is chosen based on the
visual type of the screen.
General Appearance and Behavior Resources
The syntax for specifying general appearance and behavior
resources is
Mwm*resource_id
For example, Mwm*keyboardFocusPolicy specifies the window
manager policy for setting the keyboard focus to a particu-
lar client window.
The following general appearance and behavior resources can
be specified:
General Appearance and Behavior Resources
Name Class Value Type Default
_______________________________________________________________________________
autoKeyFocus AutoKeyFocus T/F T
Motif Release 1.2: May 1992 12
mwm(1X) UNIX Programmer's Manual mwm(1X)
autoRaiseDelay AutoRaiseDelay millisec 500
bitmapDirectory BitmapDirectory directory /usr/include/\
X11/bitmaps
buttonBindings ButtonBindings string "DefaultBut\
tonBindings"
cleanText CleanText T/F T
clientAutoPlace ClientAutoPlace T/F T
colormapFocusPolicy ColormapFocusPolicy string keyboard
configFile ConfigFile file .mwmrc
deiconifyKeyFocus DeiconifyKeyFocus T/F T
doubleClickTime DoubleClickTime millisec. multi-click
time
enableWarp enableWarp T/F T
enforceKeyFocus EnforceKeyFocus T/F T
fadeNormalIcon FadeNormalIcon T/F F
feedbackGeometry FeedbackGeometry string center on
screen
frameBorderWidth FrameBorderWidth pixels varies
iconAutoPlace IconAutoPlace T/F T
iconBoxGeometry IconBoxGeometry string 6x1+0-0
iconBoxName IconBoxName string iconbox
iconBoxSBDisplayPolicy IconBoxSBDisplayPolicy string all
iconBoxTitle IconBoxTitle XmString Icons
iconClick IconClick T/F T
iconDecoration IconDecoration string varies
iconImageMaximum IconImageMaximum wxh 50x50
iconImageMinimum IconImageMinimum wxh 16x16
iconPlacement IconPlacement string left bottom
iconPlacementMargin IconPlacementMargin pixels varies
interactivePlacement InteractivePlacement T/F F
keyBindings KeyBindings string "DefaultKey\
Bindings"
keyboardFocusPolicy KeyboardFocusPolicy string explicit
limitResize LimitResize T/F T
lowerOnIconify LowerOnIconify T/F T
maximumMaximumSize MaximumMaximumSize wxh (pixels) 2X screen w&h
moveThreshold MoveThreshold pixels 4
moveOpaque MoveOpaque T/F F
multiScreen MultiScreen T/F F
passButtons PassButtons T/F F
passSelectButton PassSelectButton T/F T
positionIsFrame PositionIsFrame T/F T
positionOnScreen PositionOnScreen T/F T
quitTimeout QuitTimeout millisec. 1000
raiseKeyFocus RaiseKeyFocus T/F F
resizeBorderWidth ResizeBorderWidth pixels varies
resizeCursors ResizeCursors T/F T
screens Screens string varies
showFeedback ShowFeedback string all
startupKeyFocus StartupKeyFocus T/F T
transientDecoration TransientDecoration string menu title
Motif Release 1.2: May 1992 13
mwm(1X) UNIX Programmer's Manual mwm(1X)
transientFunctions TransientFunctions string -minimize
-maximize
useIconBox UseIconBox T/F F
wMenuButtonClick WMenuButtonClick T/F T
wMenuButtonClick2 WMenuButtonClick2 T/F T
autoKeyFocus (class AutoKeyFocus)
This resource is available only when the keyboard input
focus policy is explicit. If autoKeyFocus is given a
value of True, then when a window with the keyboard
input focus is withdrawn from window management or is
iconified, the focus is set to the previous window that
had the focus. If the value given is False, there is
no automatic setting of the keyboard input focus. It is
recommended that both autoKeyFocus and startupKeyFocus
be True to work with tear off menus. The default value
is True.
autoRaiseDelay (class AutoRaiseDelay)
This resource is available only when the focusAutoRaise
resource is True and the keyboard focus policy is
pointer. The autoRaiseDelay resource specifies the
amount of time (in milliseconds) that mwm will wait
before raising a window after it gets the keyboard
focus. The default value of this resource is 500 (ms).
bitmapDirectory (class BitmapDirectory)
This resource identifies a directory to be searched for
bitmaps referenced by mwm resources. This directory is
searched if a bitmap is specified without an absolute
pathname. The default value for this resource is
/usr/include/X11/bitmaps. The directory
/usr/include/X11/bitmaps represents the customary loca-
tions for this directory. The actual location of this
directory may vary on some systems. If the bitmap is
not found in the specified directory, XBMLANGPATH is
searched.
buttonBindings (class ButtonBindings)
This resource identifies the set of button bindings for
window management functions. The named set of button
bindings is specified in the mwm resource description
file. These button bindings are merged with the
built-in default bindings. The default value for this
resource is "DefaultButtonBindings".
cleanText (class CleanText)
This resource controls the display of window manager
text in the client title and feedback windows. If the
default value of True is used, the text is drawn with a
clear (no stipple) background. This makes text easier
Motif Release 1.2: May 1992 14
mwm(1X) UNIX Programmer's Manual mwm(1X)
to read on monochrome systems where a backgroundPixmap
is specified. Only the stippling in the area immedi-
ately around the text is cleared. If False, the text
is drawn directly on top of the existing background.
clientAutoPlace (class ClientAutoPlace)
This resource determines the position of a window when
the window has not been given a program- or user-
specified position. With a value of True, windows are
positioned with the top left corners of the frames
offset horizontally and vertically. A value of False
causes the currently configured position of the window
to be used. In either case, mwm will attempt to place
the windows totally on-screen. The default value is
True.
colormapFocusPolicy (class ColormapFocusPolicy)
This resource indicates the colormap focus policy that
is to be used. If the resource value is explicit, a
colormap selection action is done on a client window to
set the colormap focus to that window. If the value is
pointer, the client window containing the pointer has
the colormap focus. If the value is keyboard, the
client window that has the keyboard input focus has the
colormap focus. The default value for this resource is
keyboard.
configFile (class ConfigFile)
The resource value is the pathname for an mwm resource
description file.
If the pathname begins with " /", mwm con-
siders it to be relative to the user's home directory (as
specified by the HOME environment variable). If the LANG
environment variable is set, mwm looks for
$HOME/$LANG/configFile. If that file does not exist or if
LANG is not set, mwm looks for $HOME/configFile.
If the configFile pathname does not begin with
/, mwm considers it to be relative to the
current working directory.
If the configFile resource is not specified or if that file
does not exist, mwm uses several default paths to find a
configuration file. If the LANG environment variable is
set, mwm looks for the configuration file first in
$HOME/$LANG/.mwmrc. If that file does not exist or if LANG
is not set, mwm looks for $HOME/.mwmrc. If that file does
not exist and if LANG is set, mwm next looks for the file
system.mwmrc in the $LANG subdirectory of an
implementation-dependent directory. (The default for this
directory, if not changed by the implementation, is
Motif Release 1.2: May 1992 15
mwm(1X) UNIX Programmer's Manual mwm(1X)
/usr/lib/X11.) If that file does not exist or if LANG is not
set, mwm looks for the file system.mwmrc in the same
implementation-dependent directory.
deiconifyKeyFocus (class DeiconifyKeyFocus)
This resource applies only when the keyboard input
focus policy is explicit. If a value of True is used,
a window receives the keyboard input focus when it is
normalized (deiconified). True is the default value.
doubleClickTime (class DoubleClickTime)
This resource is used to set the maximum time (in ms)
between the clicks (button presses) that make up a
double-click. The default value of this resource is
the display's multi-click time.
enableWarp (class EnableWarp)
The default value of this resource, True, causes mwm to
warp the pointer to the center of the selected window
during keyboard-controlled resize and move operations.
Setting the value to False causes mwm to leave the
pointer at its original place on the screen, unless the
user explicitly moves it with the cursor keys or point-
ing device.
enforceKeyFocus (class EnforceKeyFocus)
If this resource is given a value of True, the keyboard
input focus is always explicitly set to selected win-
dows even if there is an indication that they are "glo-
bally active" input windows. (An example of a globally
active window is a scroll bar that can be operated
without setting the focus to that client.) If the
resource is False, the keyboard input focus is not
explicitly set to globally active windows. The default
value is True.
fadeNormalIcon (class FadeNormalIcon)
If this resource is given a value of True, an icon is
grayed out whenever it has been normalized (its window
has been opened). The default value is False.
feedbackGeometry (class FeedbackGeometry)
This resource sets the position of the move and resize
feedback window. If this resource is not specified,
the default is to place the feedback window at the
center of the screen. The value of the resource is a
standard window geometry string with the following syn-
tax:
[=]{+-}xoffset{+-}yoffset]
Motif Release 1.2: May 1992 16
mwm(1X) UNIX Programmer's Manual mwm(1X)
frameBorderWidth (class FrameBorderWidth)
This resource specifies the width (in pixels) of a
client window frame border without resize handles. The
border width includes the 3-D shadows. The default
value is based on the size and resolution of the
screen.
iconAutoPlace (class IconAutoPlace)
This resource indicates whether the window manager
arranges icons in a particular area of the screen or
places each icon where the window was when it was icon-
ified. The value True indicates that icons are
arranged in a particular area of the screen, determined
by the iconPlacement resource. The value False indi-
cates that an icon is placed at the location of the
window when it is iconified. The default is True.
iconBoxGeometry (class IconBoxGeometry)
This resource indicates the initial position and size
of the icon box. The value of the resource is a stan-
dard window geometry string with the following syntax:
[=][widthxheight][{+-}xoffset{+-}yoffset]
If the offsets are not provided, the iconPlacement policy is
used to determine the initial placement. The units for
width and height are columns and rows.
The actual screen size of the icon box window depends on the
iconImageMaximum (size) and iconDecoration resources. The
default value for size is (6 * iconWidth + padding) wide by
(1 * iconHeight + padding) high. The default value of the
location is +0 -0.
iconBoxName (class IconBoxName)
This resource specifies the name that is used to look
up icon box resources. The default name is "iconbox".
iconBoxSBDisplayPolicy (class IconBoxSBDisplayPolicy)
This resource specifies the scroll bar display policy
of the window manager in the icon box. The resource
has three possible values: all, vertical, and horizon-
tal. The default value, "all", causes both vertical
and horizontal scroll bars always to appear. The value
"vertical" causes a single vertical scroll bar to
appear in the icon box and sets the orientation of the
icon box to horizontal (regardless of the iconBox-
Geometry specification). The value "horizontal" causes
a single horizontal scroll bar to appear in the icon
box and sets the orientation of the icon box to verti-
cal (regardless of the iconBoxGeometry specification).
Motif Release 1.2: May 1992 17
mwm(1X) UNIX Programmer's Manual mwm(1X)
iconBoxTitle (class IconBoxTitle)
This resource specifies the name that is used in the
title area of the icon box frame. The default value is
"Icons".
iconClick (class IconClick)
When this resource is given the value of True, the sys-
tem menu is posted and left posted when an icon is
clicked. The default value is True.
iconDecoration (class IconDecoration)
This resource specifies the general icon decoration.
The resource value is label (only the label part is
displayed) or image (only the image part is displayed)
or label image (both the label and image parts are
displayed). A value of activelabel can also be speci-
fied to get a label (not truncated to the width of the
icon) when the icon is selected. The default icon
decoration for icon box icons is that each icon has a
label part and an image part (label image). The
default icon decoration for stand alone icons is that
each icon has an active label part, a label part, and
an image part (activelabel label image).
iconImageMaximum (class IconImageMaximum)
This resource specifies the maximum size of the icon
image. The resource value is widthxheight (for exam-
ple, 64x64). The maximum supported size is 128x128.
The default value of this resource is 50x50.
iconImageMinimum (class IconImageMinimum)
This resource specifies the minimum size of the icon
image. The resource value is widthxheight (for exam-
ple, 32x50). The minimum supported size is 16x16. The
default value of this resource is 16x16.
iconPlacement (class IconPlacement)
This resource specifies the icon placement scheme to be
used. The resource value has the following syntax:
primary_layout secondary_layout [tight]
The layout values are one of the following:
Motif Release 1.2: May 1992 18
mwm(1X) UNIX Programmer's Manual mwm(1X)
Value Description
_________________________________________
top Lay the icons out top to bottom.
bottom Lay the icons out bottom to top.
left Lay the icons out left to right.
right Lay the icons out right to left.
A horizontal (vertical) layout value should not be used for
both the primary_layout and the secondary_layout (for exam-
ple, don't use top for the primary_layout and bottom for the
secondary_layout). The primary_layout indicates whether,
when an icon placement is done, the icon is placed in a row
or a column and the direction of placement. The
secondary_layout indicates where to place new rows or
columns. For example, top right indicates that icons should
be placed top to bottom on the screen and that columns
should be added from right to left on the screen. The
default placement is left bottom (icons are placed left to
right on the screen, with the first row on the bottom of the
screen, and new rows added from the bottom of the screen to
the top of the screen). A tight value places icons with
zero spacing in between icons. This value is useful for
aesthetic reasons, as well as X-terminals with small
screens.
iconPlacementMargin (class IconPlacementMargin)
This resource sets the distance between the edge of the
screen and the icons that are placed along the edge of
the screen. The value should be greater than or equal
to 0. A default value (see below) is used if the value
specified is invalid. The default value for this
resource is equal to the space between icons as they
are placed on the screen (this space is based on maxim-
izing the number of icons in each row and column).
interactivePlacement (class InteractivePlacement)
This resource controls the initial placement of new
windows on the screen. If the value is True, the
pointer shape changes before a new window is placed on
the screen to indicate to the user that a position
should be selected for the upper-left hand corner of
the window. If the value is False, windows are placed
according to the initial window configuration attri-
butes. The default value of this resource is False.
keyBindings (class KeyBindings)
This resource identifies the set of key bindings for
window management functions. If specified, these key
bindings replace the built-in default bindings. The
named set of key bindings is specified in mwm resource
description file. The default value for this resource
is "DefaultKeyBindings".
Motif Release 1.2: May 1992 19
mwm(1X) UNIX Programmer's Manual mwm(1X)
keyboardFocusPolicy (class KeyboardFocusPolicy)
If set to pointer, the keyboard focus policy is to have
the keyboard focus set to the client window that con-
tains the pointer (the pointer could also be in the
client window decoration that mwm adds). If set to
explicit, the policy is to have the keyboard focus set
to a client window when the user presses button 1 with
the pointer on the client window or any part of the
associated mwm decoration. The default value for this
resource is explicit.
limitResize (class LimitResize)
If this resource is True, the user is not allowed to
resize a window to greater than the maximum size. The
default value for this resource is True.
lowerOnIconify (class LowerOnIconify)
If this resource is given the default value of True, a
window's icon appears on the bottom of the window stack
when the window is minimized (iconified). A value of
False places the icon in the stacking order at the same
place as its associated window. The default value of
this resource is True.
maximumMaximumSize (class MaximumMaximumSize)
This resource is used to limit the maximum size of a
client window as set by the user or client. The
resource value is widthxheight (for example, 1024x1024)
where the width and height are in pixels. The default
value of this resource is twice the screen width and
height.
moveOpaque (class MoveOpaque)
This resource controls whether the actual window is
moved or a rectangular outline of the window is moved.
A default value of False displays a rectangular outline
on moves.
moveThreshold (class MoveThreshold)
This resource is used to control the sensitivity of
dragging operations that move windows and icons. The
value of this resource is the number of pixels that the
locator is moved with a button down before the move
operation is initiated. This is used to prevent
window/icon movement when you click or double-click and
there is unintentional pointer movement with the button
down. The default value of this resource is 4 (pix-
els).
multiScreen (class MultiScreen)
This resource, if True, causes mwm to manage all the
screens on the display. If False, mwm manages only a
Motif Release 1.2: May 1992 20
mwm(1X) UNIX Programmer's Manual mwm(1X)
single screen. The default value is False.
passButtons (class PassButtons)
This resource indicates whether or not button press
events are passed to clients after they are used to do
a window manager function in the client context. If
the resource value is False, the button press is not
passed to the client. If the value is True, the button
press is passed to the client window. The window
manager function is done in either case. The default
value for this resource is False.
passSelectButton (class PassSelectButton)
This resource indicates whether or not to pass the
select button press events to clients after they are
used to do a window manager function in the client con-
text. If the resource value is False, then the button
press will not be passed to the client. If the value
is True, the button press is passed to the client win-
dow. The window manager function is done in either
case. The default value for this resource is True.
positionIsFrame (class PositionIsFrame)
This resource indicates how client window position
information (from the WM_NORMAL_HINTS property and from
configuration requests) is to be interpreted. If the
resource value is True, the information is interpreted
as the position of the MWM client window frame. If the
value is False, it is interpreted as being the position
of the client area of the window. The default value of
this resource is True.
positionOnScreen (class PositionOnScreen)
This resource is used to indicate that windows should
initially be placed (if possible) so that they are not
clipped by the edge of the screen (if the resource
value is True). If a window is larger than the size of
the screen, at least the upper-left corner of the win-
dow is on-screen. If the resource value is False, win-
dows are placed in the requested position even if
totally off-screen. The default value of this resource
is True.
quitTimeout (class QuitTimeout)
This resource specifies the amount of time (in mil-
liseconds) that mwm will wait for a client to update
the WM_COMMAND property after mwm has sent the
WM_SAVE_YOURSELF message. The default value of this
resource is 1000 (ms). (Refer to the f.kill function
description for additional information.)
raiseKeyFocus (class RaiseKeyFocus)
Motif Release 1.2: May 1992 21
mwm(1X) UNIX Programmer's Manual mwm(1X)
This resource is available only when the keyboard input
focus policy is explicit. When set to True, this
resource specifies that a window raised by means of the
f.normalize_and_raise function also receives the input
focus. The default value of this resource is False.
resizeBorderWidth (class ResizeBorderWidth)
This resource specifies the width (in pixels) of a
client window frame border with resize handles. The
specified border width includes the 3-D shadows. The
default value is based on the size and resolution of
the screen.
resizeCursors (class ResizeCursors)
This is used to indicate whether the resize cursors are
always displayed when the pointer is in the window size
border. If True, the cursors are shown, otherwise the
window manager cursor is shown. The default value is
True.
screens (class Screens)
This resource specifies the resource names to use for
the screens managed by mwm. If mwm is managing a sin-
gle screen, only the first name in the list is used.
If mwm is managing multiple screens, the names are
assigned to the screens in order, starting with screen
0. Screen 0 gets the first name, screen 1 the second
name, and so on. The default screen names are 0, 1,
and so on.
showFeedback (class ShowFeedback)
This resource controls whether or not feedback windows
or confirmation dialogs are displayed. A feedback win-
dow shows a client window's initial placement and shows
position and size during move and resize operations.
Confirmation dialogs can be displayed for certain
operations.
The value for this resource is a list of names of the feed-
back options to be enabled or disabled; the names must be
separated by a space. If an option is preceded by a minus
sign, that option is excluded from the list. The sign of
the first item in the list determines the initial set of
options. If the sign of the first option is minus, mwm
assumes all options are present and starts subtracting from
that set. If the sign of the first decoration is plus (or
not specified), mwm starts with no options and builds up a
list from the resource.
The names of the feedback options are shown below:
Motif Release 1.2: May 1992 22
mwm(1X) UNIX Programmer's Manual mwm(1X)
Name Description
___________________________________________________________
all Show all feedback (Default value)
behavior Confirm behavior switch
kill Confirm on receipt of KILL signal
move Show position during move
none Show no feedback
placement Show position and size during initial placement
quit Confirm quitting mwm
resize Show size during resize
restart Confirm mwm restart
The following command line illustrates the syntax for
showFeedback:
Mwm*showFeedback: placement resize behavior restart
This resource specification provides feedback for initial
client placement and resize, and enables the dialog boxes to
confirm the restart and set behavior functions. It disables
feedback for the move function. The default value for this
resource is all.
startupKeyFocus (class StartupKeyFocus)
This resource is available only when the keyboard input
focus policy is explicit. When given the default value
of True, a window gets the keyboard input focus when
the window is mapped (that is, initially managed by the
window manager). It is recommended that both autoKey-
Focus and startupKeyFocus be True to work with tear off
menus. The default value is True.
transientDecoration (class TransientDecoration)
This controls the amount of decoration that mwm puts on
transient windows. The decoration specification is
exactly the same as for the clientDecoration (client
specific) resource. Transient windows are identified
by the WM_TRANSIENT_FOR property, which is added by the
client to indicate a relatively temporary window. The
default value for this resource is menu title (that is,
transient windows have frame borders and a titlebar
with a window menu button).
An application can also specify which decorations mwm should
apply to its windows. If it does so, mwm applies only those
decorations indicated by both the application and the tran-
sientDecoration resource. Otherwise, mwm applies the
decorations indicated by the transientDecoration resource.
For more information see the description of XmNmwmDecora-
tions on the VendorShell(3X) reference page.
Motif Release 1.2: May 1992 23
mwm(1X) UNIX Programmer's Manual mwm(1X)
transientFunctions (class TransientFunctions)
This resource is used to indicate which window manage-
ment functions are applicable (or not applicable) to
transient windows. The function specification is
exactly the same as for the clientFunctions (client
specific) resource. The default value for this
resource is -minimize -maximize.
An application can also specify which functions mwm should
apply to its windows. If it does so, mwm applies only those
functions indicated by both the application and the tran-
sientFunctions resource. Otherwise, mwm applies the func-
tions indicated by the transientFunctions resource. For
more information see the description of XmNmwmFunctions on
the VendorShell(3X) reference page.
useIconBox (class UseIconBox)
If this resource is given a value of True, icons are
placed in an icon box. When an icon box is not used,
the icons are placed on the root window (default
value).
wMenuButtonClick (class WMenuButtonClick)
This resource indicates whether a click of the mouse
when the pointer is over the window menu button posts
and leaves posted the window menu. If the value given
this resource is True, the menu remains posted. True
is the default value for this resource.
wMenuButtonClick2 (class WMenuButtonClick2)
When this resource is given the default value of True,
a double-click action on the window menu button does an
f.kill function.
Client Specific Resources
The syntax for specifying client specific resources is
Mwm*client_name_or_class*resource_id
For example, Mwm*mterm*windowMenu is used to specify the
window menu to be used with mterm clients. The syntax for
specifying client specific resources for all classes of
clients is
Mwm*resource_id
Specific client specifications take precedence over the
specifications for all clients. For example, Mwm*windowMenu
is used to specify the window menu to be used for all
classes of clients that don't have a window menu specified.
Motif Release 1.2: May 1992 24
mwm(1X) UNIX Programmer's Manual mwm(1X)
The syntax for specifying resource values for windows that
have an unknown name and class (that is, windows that do not
have a WM_CLASS property associated with them) is
Mwm*defaults*resource_id
For example, Mwm*defaults*iconImage is used to specify the
icon image to be used for windows that have an unknown name
and class.
The following client specific resources can be specified:
Client Specific Resources
Name Class Value Type Default
_______________________________________________________________________________
clientDecoration ClientDecoration string all
clientFunctions ClientFunctions string all
focusAutoRaise FocusAutoRaise T/F varies
iconImage IconImage pathname (image)
iconImageBackground Background color icon back-
ground
iconImageBottomShadowColor Foreground color icon bottom
shadow
iconImageBottomShadowPixmap BottomShadow- color icon bottom
Pixmap shadow pixmap
iconImageForeground Foreground color varies
iconImageTopShadowColor Background color icon top sha-
dow color
iconImageTopShadowPixmap TopShadow- Pixmap color icon top sha-
dow pixmap
matteBackground Background color background
matteBottomShadowColor Foreground color bottom shadow
color
matteBottomShadowPixmap BottomShadow- color bottom shadow
Pixmap pixmap
matteForeground Foreground color foreground
matteTopShadowColor Background color top shadow
color
matteTopShadowPixmap TopShadow- Pixmap color top shadow
pixmap
matteWidth MatteWidth pixels 0
maximumClientSize MaximumClientSize wxh vertical fill the
horizontal screen
useClientIcon UseClientIcon T/F F
usePPosition UsePPosition string nonzero
windowMenu WindowMenu string "Default-
Window- Menu"
clientDecoration (class ClientDecoration)
This resource controls the amount of window frame
decoration. The resource is specified as a list of
decorations to specify their inclusion in the frame.
Motif Release 1.2: May 1992 25
mwm(1X) UNIX Programmer's Manual mwm(1X)
If a decoration is preceded by a minus sign, that
decoration is excluded from the frame. The sign of the
first item in the list determines the initial amount of
decoration. If the sign of the first decoration is
minus, mwm assumes all decorations are present and
starts subtracting from that set. If the sign of the
first decoration is plus (or not specified), then mwm
starts with no decoration and builds up a list from the
resource.
An application can also specify which decorations mwm should
apply to its windows. If it does so, mwm applies only those
decorations indicated by both the application and the
clientDecoration resource. Otherwise, mwm applies the
decorations indicated by the clientDecoration resource. For
more information see the description of XmNmwmDecorations on
the VendorShell(3X) reference page.
Name Description
__________________________________________________
all Include all decorations (default value)
border Window border
maximize Maximize button (includes title bar)
minimize Minimize button (includes title bar)
none No decorations
resizeh Border resize handles (includes border)
menu Window menu button (includes title bar)
title Title bar (includes border)
Examples:
Mwm*XClock.clientDecoration: -resizeh -maximize
This removes the resize handles and maximize button from
XClock windows.
Mwm*XClock.clientDecoration: menu minimize border
This does the same thing as above. Note that either menu or
minimize implies title.
clientFunctions (class ClientFunctions)
This resource is used to indicate which mwm functions
are applicable (or not applicable) to the client win-
dow. The value for the resource is a list of func-
tions. If the first function in the list has a minus
sign in front of it, then mwm starts with all functions
and subtracts from that set. If the first function in
the list has a plus sign in front of it, then mwm
starts with no functions and builds up a list. Each
function in the list must be preceded by the appropri-
ate plus or minus sign and separated from the next
Motif Release 1.2: May 1992 26
mwm(1X) UNIX Programmer's Manual mwm(1X)
function by a space.
An application can also specify which functions mwm should
apply to its windows. If it does so, mwm applies only those
functions indicated by both the application and the
clientFunctions resource. Otherwise, mwm applies the func-
tions indicated by the clientFunctions resource. For more
information see the description of XmNmwmFunctions on the
VendorShell(3X) reference page.
The table below lists the functions available for this
resource:
Name Description
________________________________________________
all Include all functions (default value)
none No functions
resize f.resize
move f.move
minimize f.minimize
maximize f.maximize
close f.kill
focusAutoRaise (class FocusAutoRaise)
When the value of this resource is True, clients are
raised when they get the keyboard input focus. If the
value is False, the stacking of windows on the display
is not changed when a window gets the keyboard input
focus. The default value is True when the keyboard-
FocusPolicy is explicit and False when the keyboard-
FocusPolicy is pointer.
iconImage (class IconImage)
This resource can be used to specify an icon image for
a client (for example, "Mwm*myclock*iconImage"). The
resource value is a pathname for a bitmap file. The
value of the (client specific) useClientIcon resource
is used to determine whether or not user supplied icon
images are used instead of client supplied icon images.
The default value is to display a built-in window
manager icon image.
iconImageBackground (class Background)
This resource specifies the background color of the
icon image that is displayed in the image part of an
icon. The default value of this resource is the icon
background color (that is, specified by "Mwm*background
Motif Release 1.2: May 1992 27
mwm(1X) UNIX Programmer's Manual mwm(1X)
or Mwm*icon*background).
iconImageBottomShadowColor (class Foreground)
This resource specifies the bottom shadow color of the
icon image that is displayed in the image part of an
icon. The default value of this resource is the icon
bottom shadow color (that is, specified by
Mwm*icon*bottomShadowColor).
iconImageBottomShadowPixmap (class BottomShadowPixmap)
This resource specifies the bottom shadow Pixmap of the
icon image that is displayed in the image part of an
icon. The default value of this resource is the icon
bottom shadow Pixmap (that is, specified by
Mwm*icon*bottomShadowPixmap).
iconImageForeground (class Foreground)
This resource specifies the foreground color of the
icon image that is displayed in the image part of an
icon. The default value of this resource varies
depending on the icon background.
iconImageTopShadowColor (class Background)
This resource specifies the top shadow color of the
icon image that is displayed in the image part of an
icon. The default value of this resource is the icon
top shadow color (that is, specified by
Mwm*icon*topShadowColor).
iconImageTopShadowPixmap (class TopShadowPixmap)
This resource specifies the top shadow Pixmap of the
icon image that is displayed in the image part of an
icon. The default value of this resource is the icon
top shadow pixmap (that is, specified by
Mwm*icon*topShadowPixmap).
matteBackground (class Background)
This resource specifies the background color of the
matte, when matteWidth is positive. The default value
of this resource is the client background color (that
is, specified by "Mwm*background or
Mwm*client*background).
matteBottomShadowColor (class Foreground)
This resource specifies the bottom shadow color of the
matte, when matteWidth is positive. The default value
of this resource is the client bottom shadow color
(that is, specified by "Mwm*bottomShadowColor or
Motif Release 1.2: May 1992 28
mwm(1X) UNIX Programmer's Manual mwm(1X)
Mwm*client*bottomShadowColor).
matteBottomShadowPixmap (class BottomShadowPixmap)
This resource specifies the bottom shadow Pixmap of the
matte, when matteWidth is positive. The default value
of this resource is the client bottom shadow pixmap
(that is, specified by "Mwm*bottomShadowPixmap or
Mwm*client*bottomShadowPixmap).
matteForeground (class Foreground)
This resource specifies the foreground color of the
matte, when matteWidth is positive. The default value
of this resource is the client foreground color (that
is, specified by "Mwm*foreground or
Mwm*client*foreground).
matteTopShadowColor (class Background)
This resource specifies the top shadow color of the
matte, when matteWidth is positive. The default value
of this resource is the client top shadow color (that
is, specified by "Mwm*topShadowColor or
Mwm*client*topShadowColor).
matteTopShadowPixmap (class TopShadowPixmap)
This resource specifies the top shadow pixmap of the
matte, when matteWidth is positive. The default value
of this resource is the client top shadow pixmap (that
is, specified by "Mwm*topShadowPixmap or
Mwm*client*topShadowPixmap).
matteWidth (class MatteWidth)
This resource specifies the width of the optional
matte. The default value is 0, which effectively dis-
ables the matte.
maximumClientSize (class MaximumClientSize)
This resource is either a size specification or a
direction that indicates how a client window is to be
maximized. The resource value can be specified as a
size specification widthxheight. The width and height
are interpreted in the units that the client uses (for
example, for terminal emulators this is generally char-
acters). Alternately, "vertical" or "horizontal" can
be specified to indicate the direction in which the
client maximizes.
If this resource is not specified, the maximum size from the
WM_NORMAL_HINTS property is used if set. Otherwise the
default value is the size where the client window with win-
dow management borders fills the screen. When the maximum
client size is not determined by the maximumClientSize
resource, the maximumMaximumSize resource value is used as a
Motif Release 1.2: May 1992 29
mwm(1X) UNIX Programmer's Manual mwm(1X)
constraint on the maximum size.
useClientIcon (class UseClientIcon)
If the value given for this resource is True, a
client-supplied icon image takes precedence over a
user-supplied icon image. The default value is False,
giving the user-supplied icon image higher precedence
than the client-supplied icon image.
usePPosition (class UsePPosition)
This resource specifies whether Mwm honors program
specified position PPosition specified in the
WM_NORMAL_HINTS property in the absence of an user
specified position. Setting this resource to on,
causes mwm to always honor program specified position.
Setting this resource to off, causes mwm to always
ignore program specified position. Setting this
resource to the default value of nonzero cause mwm to
honor program specified position other than (0,0).
windowMenu (class WindowMenu)
This resource indicates the name of the menu pane that
is posted when the window menu is popped up (usually by
pressing button 1 on the window menu button on the
client window frame). Menu panes are specified in the
MWM resource description file. Window menus can be
customized on a client class basis by specifying
resources of the form
Mwm*client_name_or_class*windowMenu (see "Mwm Resource
Description File Syntax"). The default value of this
resource is "DefaultWindowMenu".
Resource Description File
The MWM resource description file is a supplementary
resource file that contains resource descriptions that are
referred to by entries in the defaults files (.Xdefaults,
app-defaults/Mwm). It contains descriptions of resources
that are to be used by mwm, and that cannot be easily
encoded in the defaults files (a bitmap file is an analogous
type of resource description file). A particular mwm
resource descriptionfile can be selected using the config-
File resource.
Motif Release 1.2: May 1992 30
mwm(1X) UNIX Programmer's Manual mwm(1X)
The following types of resources can be described in the mwm
resource description file:
Buttons
Window manager functions can be bound (associated) with
button events.
Keys Window manager functions can be bound (associated) with
key press events.
Menus
Menu panes can be used for the window menu and other
menus posted with key bindings and button bindings.
mwm Resource Description File Syntax
The mwm resource description file is a standard text file
that contains items of information separated by blanks,
tabs, and newline characters. Blank lines are ignored.
Items or characters can be quoted to avoid special interpre-
tation (for example, the comment character can be quoted to
prevent it from being interpreted as the comment character).
A quoted item can be contained in double quotes ("). Single
characters can be quoted by preceding them by the backslash
character (\). All text from an unquoted # to the end of
the line is regarded as a comment and is not interpreted as
part of a resource description. If ! is the first character
in a line, the line is regarded as a comment. If a line
ends in a backslash character (\), the next line is con-
sidered a continuation of that line. Window manager func-
tions can be accessed with button and key bindings, and with
window manager menus. Functions are indicated as part of
the specifications for button and key binding sets, and menu
panes. The function specification has the following syntax:
function = function_name [function_args]
function_name = window manager function
function_args = {quoted_item unquoted_item}
The following functions are supported. If a function is
specified that isn't one of the supported functions, then it
is interpreted by mwm as f.nop.
f.beep
This function causes a beep.
f.circle_down [icon window]
This function causes the window or icon that is on the
top of the window stack to be put on the bottom of the
window stack (so that it no longer obscures any other
window or icon). This function affects only those win-
dows and icons that obscure other windows and icons, or
Motif Release 1.2: May 1992 31
mwm(1X) UNIX Programmer's Manual mwm(1X)
that are obscured by other windows and icons. Secon-
dary windows (that is, transient windows) are restacked
with their associated primary window. Secondary win-
dows always stay on top of the associated primary win-
dow and there can be no other primary windows between
the secondary windows and their primary window. If an
icon function argument is specified, the function
applies only to icons. If a window function argument
is specified, the function applies only to windows.
f.circle_up [icon window]
This function raises the window or icon on the bottom
of the window stack (so that it is not obscured by any
other windows). This function affects only those win-
dows and icons that obscure other windows and icons, or
that are obscured by other windows and icons. Secon-
dary windows (that is, transient windows) are restacked
with their associated primary window. If an icon func-
tion argument is specified, the function applies only
to icons. If a window function argument is specified,
the function applies only to windows.
f.exec or !
This function causes command to be executed (using the
value of the MWMSHELL environment variable if it is
set, otherwise the value of the SHELL environment vari-
able if it is set, otherwise /bin/sh). The ! notation
can be used in place of the f.exec function name.
f.focus_color
This function sets the colormap focus to a client win-
dow. If this function is done in a root context, the
default colormap (set up by the X Window System for the
screen where MWM is running) is installed and there is
no specific client window colormap focus. This func-
tion is treated as f.nop if colormapFocusPolicy is not
explicit.
f.focus_key
This function sets the keyboard input focus to a client
window or icon. This function is treated as f.nop if
keyboardFocusPolicy is not explicit or the function is
executed in a root context.
f.kill
This function is used to terminate a client. If the
WM_DELETE_WINDOW protocol is set up, the client is sent
a client message event, indicating that the client win-
dow should be deleted. If the WM_SAVE_YOURSELF proto-
col is set up, the client is sent a client message
event, indicating that the client needs to prepare to
be terminated. If the client does not have the
Motif Release 1.2: May 1992 32
mwm(1X) UNIX Programmer's Manual mwm(1X)
WM_DELETE_WINDOW or WM_SAVE_YOURSELF protocol set up,
this function causes a client's X connection to be ter-
minated (usually resulting in termination of the
client). Refer to the description of the quitTimeout
resource and the WM_PROTOCOLS property.
f.lower [-client within freeFamily]
This function lowers a primary window to the bottom of
the global window stack (where it obscures no other
window) and lowers the secondary window (transient win-
dow or dialog box) within the client family. The argu-
ments to this function are mutually exclusive.
The client argument indicates the name or class of a client
to lower. If the client argument is not specified, the con-
text that the function was invoked in indicates the window
or icon to lower.
Specifying within lowers the secondary window within the
family (staying above the parent) but does not lower the
client family in the global window stack.
Specifying freeFamily lowers the window to the bottom of the
global windows stack from its local family stack.
f.maximize
This function causes a client window to be displayed
with its maximum size.
f.menu
This function associates a cascading (pull-right) menu
with a menu pane entry or a menu with a button or key
binding. The menu_name function argument identifies
the menu to be used.
f.minimize
This function causes a client window to be minimized
(iconified). When a window is minimized when no icon
box is used, its icon is placed on the bottom of the
window stack (so that it obscures no other window). If
an icon box is used, the client's icon changes to its
iconified form inside the icon box. Secondary windows
(that is, transient windows) are minimized with their
associated primary window. There is only one icon for
a primary window and all its secondary windows.
f.move
This function causes a client window to be interac-
tively moved.
f.next_cmap
This function installs the next colormap in the list of
Motif Release 1.2: May 1992 33
mwm(1X) UNIX Programmer's Manual mwm(1X)
colormaps for the window with the colormap focus.
f.next_key [icon window transient]
This function sets the keyboard input focus to the next
window/icon in the set of windows/icons managed by the
window manager (the ordering of this set is based on
the stacking of windows on the screen). This function
is treated as f.nop if keyboardFocusPolicy is not
explicit. The keyboard input focus is moved only to
windows that do not have an associated secondary window
that is application modal. If the transient argument
is specified, transient (secondary) windows are
traversed (otherwise, if only window is specified,
traversal is done only to the last focused window in a
transient group). If an icon function argument is
specified, the function applies only to icons. If a
window function argument is specified, the function
applies only to windows.
f.nop
This function does nothing.
f.normalize
This function causes a client window to be displayed
with its normal size. Secondary windows (that is,
transient windows) are placed in their normal state
along with their associated primary window.
f.normalize_and_raise
This function causes the corresponding client window to
be displayed with its normal size and raised to the top
of the window stack. Secondary windows (that is, tran-
sient windows) are placed in their normal state along
with their associated primary window.
f.pack_icons
This function is used to relayout icons (based on the
layout policy being used) on the root window or in the
icon box. In general this causes icons to be "packed"
into the icon grid.
f.pass_keys
This function is used to enable/disable (toggle) pro-
cessing of key bindings for window manager functions.
When it disables key binding processing, all keys are
passed on to the window with the keyboard input focus
and no window manager functions are invoked. If the
f.pass_keys function is invoked with a key binding to
disable key-binding processing, the same key binding
can be used to enable key-binding processing.
f.post_wmenu
Motif Release 1.2: May 1992 34
mwm(1X) UNIX Programmer's Manual mwm(1X)
This function is used to post the window menu. If a
key is used to post the window menu and a window menu
button is present, the window menu is automatically
placed with its top-left corner at the bottom-left
corner of the window menu button for the client window.
If no window menu button is present, the window menu
is placed at the top-left corner of the client window.
f.prev_cmap
This function installs the previous colormap in the
list of colormaps for the window with the colormap
focus.
f.prev_key [icon window transient]
This function sets the keyboard input focus to the pre-
vious window/icon in the set of windows/icons managed
by the window manager (the ordering of this set is
based on the stacking of windows on the screen). This
function is treated as f.nop if keyboardFocusPolicy is
not explicit. The keyboard input focus is moved only
to windows that do not have an associated secondary
window that is application modal. If the transient
argument is specified, transient (secondary) windows
are traversed (otherwise, if only window is specified,
traversal is done only to the last focused window in a
transient group). If an icon function argument is
specified, the function applies only to icons. If an
window function argument is specified, the function
applies only to windows.
f.quit_mwm
This function terminates mwm (but NOT the X window sys-
tem).
f.raise [-client within freeFamily]
This function raises a primary window to the top of the
global window stack (where it is obscured by no other
window) and raises the secondary window (transient win-
dow or dialog box) within the client family. The argu-
ments to this function are mutually exclusive.
The client argument indicates the name or class of a client
to lower. If the client is not specified, the context that
the function was invoked in indicates the window or icon to
lower.
Specifying within raises the secondary window within the
family but does not raise the client family in the global
window stack.
Specifying freeFamily raises the window to the top of its
local family stack and raises the family to the top of the
Motif Release 1.2: May 1992 35
mwm(1X) UNIX Programmer's Manual mwm(1X)
global window stack.
f.raise_lower [within freeFamily]
This function raises a primary window to the top of the
global window stack if it is partially obscured by
another window; otherwise, it lowers the window to the
bottom of the window stack. The arguments to this
function are mutually exclusive.
Specifying within raises a secondary window within the fam-
ily (staying above the parent window), if it is partially
obscured by another window in the application's family; oth-
erwise, it lowers the window to the bottom of the family
stack. It has no effect on the global window stacking
order.
Specifying freeFamily raises the window to the top of its
local family stack, if obscured by another window, and
raises the family to the top of the global window stack;
otherwise, it lowers the window to the bottom of its local
family stack and lowers the family to the bottom of the glo-
bal window stack.
f.refresh
This function causes all windows to be redrawn.
f.refresh_win
This function causes a client window to be redrawn.
f.resize
This function causes a client window to be interac-
tively resized.
f.restore
This function restores the previous state of an icon's
associated window. If a maximized window is iconified,
then f.restore restores it to its maximized state. If
a normal window is iconified, then f.restore restores
it to its normalized state.
f.restore_and_raise
This function restores the previous state of an icon's
associated window and raises the window to the top of
the window stack. If a maximized window is iconified,
then f.restore_and_raise restores it to its maximized
state and raises it to the top of the window stack. If
a normal window is iconified, then f.restore_and_raise
restores it to its normalized state and raises it to
the top of the window stack.
f.restart
This function causes mwm to be restarted (effectively
Motif Release 1.2: May 1992 36
mwm(1X) UNIX Programmer's Manual mwm(1X)
terminated and re-executed).
f.screen [next prev back
screen_number]" This function causes the pointer to be
warp to a specific screen number or to the next, previ-
ous, or last visited (back) screen. The arguments to
this function are mutually exclusive.
The screen_number argument indicates the screen number that
the pointer is to be warped. Screens are numbered starting
from screen 0.
Specifying next cause the pointer to warp to the next
managed screen (skipping over any unmanaged screens).
Specifying prev cause the pointer to warp to the previous
managed screen (skipping over any unmanaged screens).
Specifying back cause the pointer to warp to the last
visited screen.
f.send_msg message_number
This function sends a client message of the type
_MOTIF_WM_MESSAGES with the message_type indicated by
the message_number function argument. The client mes-
sage is sent only if message_number is included in the
client's _MOTIF_WM_MESSAGES property. A menu item
label is grayed out if the menu item is used to do
f.send_msg of a message that is not included in the
client's _MOTIF_WM_MESSAGES property.
f.separator
This function causes a menu separator to be put in the
menu pane at the specified location (the label is
ignored).
f.set_behavior
This function causes the window manager to restart with
the default behavior (if a custom behavior is config-
ured) or revert to the custom behavior. By default
this is bound to Shift Ctrl Meta <Key>!.
f.title
This function inserts a title in the menu pane at the
specified location.
Each function may be constrained as to which resource types
can specify the function (for example, menu pane) and also
what context the function can be used in (for example, the
function is done to the selected client window). Function
contexts are
Motif Release 1.2: May 1992 37
mwm(1X) UNIX Programmer's Manual mwm(1X)
root No client window or icon has been selected as an object
for the function.
window
A client window has been selected as an object for the
function. This includes the window's title bar and
frame. Some functions are applied only when the window
is in its normalized state (for example, f.maximize) or
its maximized state (for example, f.normalize).
icon An icon has been selected as an object for the func-
tion.
If a function's context has been specified as iconwindow and
the function is invoked in an icon box, the function applies
to the icon box, not to the icons inside.
If a function is specified in a type of resource where it is
not supported or is invoked in a context that does not
apply, the function is treated as f.nop. The following
table indicates the resource types and function contexts in
which window manager functions apply.
Function Contexts Resources
_______________________________________________________________________________
f.beep root, icon, window button, key, menu
f.circle_down root, icon, window button, key, menu
f.circle_up root, icon, window button, key, menu
f.exec root, icon, window button, key, menu
f.focus_color root, icon, window button, key, menu
f.focus_key root, icon, window button, key, menu
f.kill icon, window button, key, menu
f.lower icon, window button, key, menu
f.maximize icon, window(normal) button, key, menu
f.menu root, icon, window button, key, menu
f.minimize window button, key, menu
f.move icon, window button, key, menu
f.next_cmap root, icon, window button, key, menu
f.next_key root, icon, window button, key, menu
f.nop root, icon, window button, key, menu
f.normalize icon, window(maximized) button, key, menu
f.normalize_and_raise icon, window button, key, menu
f.pack_icons root, icon, window button, key, menu
f.pass_keys root, icon, window button, key, menu
f.post_wmenu root, icon, window button, key
f.prev_cmap root, icon, window button, key, menu
f.prev_key root, icon, window button, key, menu
f.quit_mwm root, icon, window button, key, menu (root only)
f.raise icon, window button, key, menu
f.raise_lower icon, window button, key, menu
f.refresh root, icon, window button, key, menu
f.refresh_win window button, key, menu
f.resize window button, key, menu
Motif Release 1.2: May 1992 38
mwm(1X) UNIX Programmer's Manual mwm(1X)
f.restore icon, window button, key, menu
f.restore_and_raise icon, window button, key, menu
f.restart root, icon, window button, key, menu (root only)
f.screen root, icon, window button, key, menu
f.send_msg icon, window button, key, menu
f.separator root, icon, window menu
f.set_behavior root, icon, window button, key, menu
f.title root, icon, window menu
Window Manager Event Specification
Events are indicated as part of the specifications for but-
ton and key-binding sets, and menu panes.
Button events have the following syntax:
button = [modifier_list]<button_event_name>
modifier_list = modifier_name {modifier_name}
All modifiers specified are interpreted as being exclusive
(this means that only the specified modifiers can be present
when the button event occurs). The following table indi-
cates the values that can be used for modifier_name. The
[Alt] key is frequently labeled [Extend] or [Meta]. Alt and
Meta can be used interchangeably in event specification.
Modifier Description
_______________________
Ctrl Control Key
Shift Shift Key
Alt Alt/Meta Key
Meta Meta/Alt Key
Lock Lock Key
Mod1 Modifier1
Mod2 Modifier2
Mod3 Modifier3
Mod4 Modifier4
Mod5 Modifier5
The following table indicates the values that can be used
for button_event_name.
Motif Release 1.2: May 1992 39
mwm(1X) UNIX Programmer's Manual mwm(1X)
Button Description
_______________________________________
Btn1Down Button 1 Press
Btn1Up Button 1 Release
Btn1Click Button 1 Press and Release
Btn1Click2 Button 1 Double-Click
Btn2Down Button 2 Press
Btn2Up Button 2 Release
Btn2Click Button 2 Press and Release
Btn2Click2 Button 2 Double-Click
Btn3Down Button 3 Press
Btn3Up Button 3 Release
Btn3Click Button 3 Press and Release
Btn3Click2 Button 3 Double-Click
Btn4Down Button 4 Press
Btn4Up Button 4 Release
Btn4Click Button 4 Press and Release
Btn4Click2 Button 4 Double-Click
Btn5Down Button 5 Press
Btn5Up Button 5 Release
Btn5Click Button 5 Press and Release
Btn5Click2 Button 5 Double-Click
Key events that are used by the window manager for menu
mnemonics and for binding to window manager functions are
single key presses; key releases are ignored. Key events
have the following syntax:
key = [modifier_list]<Key>key_name
modifier_list = modifier_name {modifier_name}
All modifiers specified are interpreted as being exclusive
(this means that only the specified modifiers can be present
when the key event occurs). Modifiers for keys are the same
as those that apply to buttons. The key_name is an X11
keysym name. Keysym names can be found in the keysymdef.h
file (remove the XK_ prefix).
Button Bindings
The buttonBindings resource value is the name of a set of
button bindings that are used to configure window manager
behavior. A window manager function can be done when a but-
ton press occurs with the pointer over a framed client win-
dow, an icon, or the root window. The context for indicat-
ing where the button press applies is also the context for
invoking the window manager function when the button press
is done (significant for functions that are context sensi-
tive).
Motif Release 1.2: May 1992 40
mwm(1X) UNIX Programmer's Manual mwm(1X)
The button binding syntax is
Buttons bindings_set_name {
button context function
button context function
.
.
button context function }
The syntax for the context specification is
context = object[ context]
object = root icon window title frame border app
The context specification indicates where the pointer must
be for the button binding to be effective. For example, a
context of window indicates that the pointer must be over a
client window or window management frame for the button
binding to be effective. The frame context is for the win-
dow management frame around a client window (including the
border and titlebar), the border context is for the border
part of the window management frame (not including the
titlebar), the title context is for the title area of the
window management frame, and the app context is for the
application window (not including the window management
frame).
If an f.nop function is specified for a button binding, the
button binding is not done.
Key Bindings
The keyBindings resource value is the name of a set of key
bindings that are used to configure window manager behavior.
A window manager function can be done when a particular key
is pressed. The context in which the key binding applies is
indicated in the key binding specification. The valid con-
texts are the same as those that apply to button bindings.
The key binding syntax is
Keys bindings_set_name {
key context function
key context function
.
.
key context function }
If an f.nop function is specified for a key binding, the key
binding is not done. If an f.post_wmenu or f.menu function
is bound to a key, mwm will automatically use the same key
for removing the menu from the screen after it has been
Motif Release 1.2: May 1992 41
mwm(1X) UNIX Programmer's Manual mwm(1X)
popped up.
The context specification syntax is the same as for button
bindings. For key bindings, the frame, title, border, and
app contexts are equivalent to the window context. The con-
text for a key event is the window or icon that has the key-
board input focus (root if no window or icon has the key-
board input focus).
Menu Panes
Menus can be popped up using the f.post_wmenu and f.menu
window manager functions. The context for window manager
functions that are done from a menu is root, icon or window
depending on how the menu was popped up. In the case of the
window menu or menus popped up with a key binding, the loca-
tion of the keyboard input focus indicates the context. For
menus popped up using a button binding, the context of the
button binding is the context of the menu.
The menu pane specification syntax is
Menu menu_name {
label [mnemonic] [accelerator] function
label [mnemonic] [accelerator] function
.
.
label [mnemonic] [accelerator] function }
Each line in the Menu specification identifies the label for
a menu item and the function to be done if the menu item is
selected. Optionally a menu button mnemonic and a menu but-
ton keyboard accelerator may be specified. Mnemonics are
functional only when the menu is posted and keyboard traver-
sal applies.
The label may be a string or a bitmap file. The label
specification has the following syntax:
label = text bitmap_file
bitmap_file = @file_name
text = quoted_item unquoted_item
The string encoding for labels must be compatible with the
menu font that is used. Labels are greyed out for menu
items that do the f.nop function or an invalid function or a
function that doesn't apply in the current context.
Motif Release 1.2: May 1992 42
mwm(1X) UNIX Programmer's Manual mwm(1X)
A mnemonic specification has the following syntax
mnemonic = _character
The first matching character in the label is underlined. If
there is no matching character in the label, no mnemonic is
registered with the window manager for that label. Although
the character must exactly match a character in the label,
the mnemonic does not execute if any modifier (such as
Shift) is pressed with the character key.
The accelerator specification is a key event specification
with the same syntax as is used for key bindings to window
manager functions.
Environment
mwm uses the environment variable HOME specifying the user's
home directory.
mwm uses the environment variable LANG specifying the user's
choice of language for the mwm message catalog and the mwm
resource description file.
mwm uses the environment variables XFILESEARCHPATH, XUSER-
FILESEARCHPATH, XAPPLRESDIR, XENVIRONMENT, LANG, and HOME in
determining search paths for resource defaults files. mwm
may also use XBMLANGPATH to search for bitmap files.
mwm reads the $HOME/.motifbind file if it exists to install
a virtual key bindings property on the root window. For
more information on the content of the .motifbind file, see
VirtualBindings(3X).
mwm uses the environment variable MWMSHELL (or SHELL, if
MWMSHELL is not set), specifying the shell to use when exe-
cuting commands via the f.exec function.
Files
/usr/lib/X11/$LANG/system.mwmrc /usr/lib/X11/system.mwmrc
/usr/lib/X11/app-defaults/Mwm $HOME/Mwm $HOME/.Xdefaults
$HOME/$LANG/.mwmrc $HOME/.mwmrc $HOME/.motifbind
RELATED INFORMATION
VendorShell(3X), VirtualBindings(3X), X(1), and
XmInstallImage(3X).
Motif Release 1.2: May 1992 43