MWM(1) SysV MWM(1)
NAME
mwm - Motif Window Manager
SYNOPSIS
mwm [options]
DESCRIPTION
mwm is an X11 client that provides window management functionality and
some session management functionality. It provides functions that
facilitate control (by the user and the programmer) of elements of window
states such as placement, size, icon/normal display, input focus
ownership, etc. It also provides session management functions 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.
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."
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. 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 button.
Minimize Button To turn the window back into its icon, do a button 1
click 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), do a
button 1 click 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
horizontal bar in it. To pop up 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. Alternately, you can click
button 1 to pop up the menu and keep it posted; then
position the pointer and select.
Default Window Menu
Selection Accelerator Description
_________________________________________________________________
Restore Alt+F5 | Inactive (not an option for windows).
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+F11 | Moves window to bottom of window stack.
Close Alt+F4 | Removes client from mwm management.
Resize Border Handles
To change the size of a window, move the pointer over a
resize border handle (the cursor will change), 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 indicate the new window size.
Matte An optional matte decoration can be added between the
client area and the window frame. A matte is not
actually part of the window frame. There is no
functionality associated with a matte.
Icons
Icons are small graphic representations of windows. A window 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 will cause the
icon's window menu to pop up. Releasing the button (press + release
without moving mouse = click) will cause the menu to stay posted. The
menu contains the following selections:
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+F11 | Moves icon to bottom of icon stack.
Close | Alt+F4 | Removes client from mwm management.
Double-clicking button 1 on an icon normalizes the icon into its
associated window. Double-clicking button 1 on the icon box's icon opens
the icon box and allow access to the contained icons. (In general,
double-clicking a mouse button offers a quick way to have a function
performed. Another example is double-clicking button 1 with the pointer
on the window menu button. This closes the window.)
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 window manager window that
holds client icons. Icons in the icon box can be manipulated with the
mouse. The following table summarizes the behavior of this interface.
Button actions apply whenever the pointer is on any part of the icon.
Button Action Description
_________________________________________________________________
Button 1 click | Selects the icon.
Button 1 double click| Normalizes (opens) the associated window.
Button 1 double click| Raises an already open window
| to the top of the stack.
Button 1 drag | Moves the icon.
The window menu of the icon box differs from the window menu of a client
window: The "Close" selection is replaced with the "PackIcons Alt+F12"
selection. When selected, PackIcons packs the icons in the box to
achieve neat rows with no empty slots.
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 window is explicitly selected to get keyboard
input, or the window is iconified. There are numerous resources that
control the input focus. The client window with the keyboard input focus
has the active window appearance with a visually distinctive 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.
[Alt][Shift][Tab]| Move input focus to previous window in window stack.
Window stacking
The stacking order of windows may be changed as a result of setting the
keyboard input focus, iconifying a window, or by doing a window manager
window stacking function.
When a window is iconified, the window's icon is placed on the bottom of
the stack.
The following table summarizes the default window stacking behavior of
the window manager:
Key Action Function Description
______________________________________________________
[Alt][ESC] | Put bottom window on top of stack.
[Alt][Shift][ESC]| Put top window on bottom of stack.
A window can also be raised to the top when it gets the keyboard input
focus (e.g., by doing a button 1 press on the window or by using
[Alt][Tab]) if this auto-raise feature is enabled with the focusAutoRaise
resource.
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:
app-defaults/Mwm
RESOURCE_MANAGER root window property or $HOME/.Xresources
XENVIRONMENT variable or $HOME/.Xresources-host
mwm command line options
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 (i.e., button and key bindings).
Mwm is the resource class name of mwm and mwm is the resource name used
by mwm to look up resources. In the following discussion of resource
specification "Mwm" and "mwm" can be used interchangeably.
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 (e.g., the window reconfiguration
feedback window), client window frames, and icons.
Specific Appearance and Behavior Resources:
These resources specify mwm appearance and behavior (e.g., 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 window 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 (e.g., foreground) or
a resource class (e.g., Foreground). 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 (generally the
user's home directory). This is the only environment variable mwm uses
directly ($XENVIRONMENT is used by the resource manager).
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 foreground color for
mwm menus, icons, and client window frames.
The syntax for specifying component appearance resources that apply to a
particular mwm component is
Mwm*[menu|icon|client|feedback]*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 configured. 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 foreground 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 foreground color
for the menu named my_menu.
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.
**Pixmap image name. See XmInstallImage(3X).
***X11 R3 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 Font)
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."
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 will save 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 window 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.
activeBackgroundPixmap (class ActiveBackgroundPixmap)
This resource specifies the background Pixmap 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.
activeBottomShadowColor (class Foreground)
This resource specifies the bottom 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.
activeBottomShadowPixmap (class BottomShadowPixmap)
This resource specifies the bottom shadow Pixmap 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.
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 keyboard focus).
The default is chosen based on the visual type of the screen.
Specific Appearance And Behavior Resources
The syntax for specifying specific appearance and behavior resources is
Mwm*resource_id
For example, Mwm*keyboardFocusPolicy specifies the window manager policy
for setting the keyboard focus to a particular client window. The
following specific appearance and behavior resources can be specified:
Specific Appearance and Behavior Resources
Name Class Value Type Default
______________________________________________________________________________
autoKeyFocus AutoKeyFocus T/F T
autoRaiseDelay AutoRaiseDelay millisec 500
bitmapDirectory BitmapDirectory directory /usr/include/X11/bitmaps
buttonBindings ButtonBindings string NULL
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. 500
enforceKeyFocus EnforceKeyFocus T/F T
fadeNormalIcon FadeNormalIcon T/F F
frameBorderWidth FrameBorderWidth pixels 5
iconAutoPlace IconAutoPlace T/F T
iconBoxGeometry IconBoxGeometry string 6x1+0-0
iconBoxName IconBoxName string iconbox
iconBoxTitle IconBoxTitle string Icons
iconClick IconClick T/F T
iconDecoration IconDecoration string varies
iconImageMaximum IconImageMaximum wxh 50x50
iconImageMinimum IconImageMinimum wxh 32x32
iconPlacement IconPlacement string left bottom
iconPlacementMargin IconPlacementMargin pixels varies
interactivePlacement InteractivePlacementT/F F
keyBindings KeyBindings string system
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
passButtons PassButtons T/F F
passSelectButton PassSelectButton T/F T
positionIsFrame PositionIsFrame T/F T
positionOnScreen PositionOnScreen T/F T
quitTimeout QuitTimeout millisec. 1000
resizeBorderWidth ResizeBorderWidth pixels 10
resizeCursors ResizeCursors T/F T
showFeedback ShowFeedback string all
startupKeyFocus StartupKeyFocus T/F T
transientDecoration TransientDecoration string system title
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 only available 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. The
default value is True.
autoRaiseDelay (class AutoRaiseDelay)
This resource is only available 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".
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 NULL (i.e., no button bindings
are added to the built-in button bindings).
cleanText (classCleanText)
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 to read on monochrome systems where a
backgroundPixmap is specified. Only the stippling in the area
immediately 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 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 then a colormap
selection action is done on a client window to set the colormap
focus to that window. If the value is pointer then the client
window containing the pointer has the colormap focus. If the
value is keyboard then the client window that has the keyboard
input focus will have 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. The default is .mwmrc in the user's home
directory (based on the $HOME environment variable) if this file
exists, otherwise /usr/lib/X11/system.mwmrc.
deiconifyKeyFocus (class DeiconifyKeyFocus)
This resource only applies when the keyboard input focus policy
is explicit. If a value of True is used, a window will receive
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 500 (ms).
enforceKeyFocus (class EnforceKeyFocus)
If this resource is given a value of True, then the keyboard
input focus is always explicitly set to selected windows even if
there is an indication that they are "globally 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.
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 5 pixels.
iconAutoPlace (class IconAutoPlace)
This resource indicates whether icons are automatically placed on
the screen by mwm, or are placed by the user. Users may specify
an initial icon position and may move icons after initial
placement; however, mwm will adjust the user-specified position
to fit into an invisible grid. When icons are automatically
placed, mwm places them into the grid using a scheme set with the
iconPlacement resource. If the iconAutoPlace resource has a value
of True, then mwm does automatic icon placement. A value of
False allows user placement. The default value of this resource
is True.
iconBoxGeometry (class IconBoxGeometry)
This resource indicates the initial position and size of the icon
box. The value of the resource is a standard 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 will depend 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.
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 system 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 specified 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 (e.g., 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 (e.g., 32x50). The minimum
supported size is 16x16. The default value of this resource is
32x32.
iconPlacement (class IconPlacement)
This resource specifies the icon placement scheme to be used.
The resource value has the following syntax:
primary_layout secondary_layout
The layout values are one of the following:
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 (e.g., 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).
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 maximizing
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, then 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, then windows are
placed according to the initial window configuration attributes.
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 the set of system-compatible key bindings.
keyboardFocusPolicy (class KeyboardFocusPolicy)
If set to pointer, the keyboard focus policy is to have the
keyboard focus set to the client window that contains 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.
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 (e.g., 1024x1024) where the width and height are in
pixels. The default value of this resource is twice the screen
width and height.
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 will be moved
with a button down before the move operation is initiated. This
is used to prevent window/icon movement when a click or double-
click is done and there is unintentional pointer movement with
the button down. The default value of this resource is 4
(pixels).
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,
then the button press will not be 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 the keyboard input focus
selection button press (if keyboardFocusPolicy is explicit) is
passed on to the client window or used to do a window management
action associated with the window decorations. If the resource
value is False then the button press will not be used for any
operation other than selecting the window to be the keyboard
input focus; if the value is True, the button press is passed to
the client window or used to do a window management operation, if
appropriate. The keyboard input focus selection 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
then the information is interpreted as the position of the mwm
client window frame. If the value is False then 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, then at least the upper left
corner of the window will be on-screen. If the resource value is
False, then windows 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 milliseconds) that
mwm will wait for a client to update the WM_COMMAND property
after mwm has sent the WM_SAVE_YOURSELF message. This protocol
will only be used for those clients that have a WM_SAVE_YOURSELF
atom and no WM_DELETE_WINDOW atom in the WM_PROTOCOLS client
window property. The default value of this resource is 1000
(ms). (Refer to the f.kill function for additional information.)
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 is 10 (pixels).
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.
showFeedback (class ShowFeedback)
This resource controls when feedback information is displayed.
It controls both window position and size feedback during move or
resize operations and initial client placement. It also controls
window manager message and dialog boxes. The value for this
resource is a list of names of the feedback options to be
enabled; the names must be separated by a space. The names of
the feedback options are shown below:
Name Description
____________________________________________________________
all | Show all feedback. (Default value.)
behavior | Confirm behavior switch.
move | Show position during move.
none | Show no feedback.
placement| Show position and size during initial placement.
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.
startupKeyFocus (class StartupKeyFocus)
This resource is only available 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
(i.e., initially managed by the window manager).
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 (i.e.,
transient windows will have resize borders and a titlebar with a
window menu button).
transientFunctions (class TransientFunctions)
This resource is used to indicate which window management
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.
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 will post and leave posted
the system menu. If the value given this resource is True, then
the menu will remain 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 will do 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.
The syntax for specifying resource values for windows that have an
unknown name and class (i.e. the window does not have a WM_CLASS property
associated with it) 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 TypeDefault
________________________________________________________________________________
clientDecoration ClientDecoration string all
clientFunctions ClientFunctions string all
focusAutoRaise FocusAutoRaise T/F T
iconImage IconImage pathname (image)
iconImageBackground Background color icon background
iconImageBottomShadowColor Foreground color icon bottom shadow
iconImageBottomShadowPixmapBottomShadowPixmapcolor icon bottom shadow pixmap
iconImageForeground Foreground color icon foreground
iconImageTopShadowColor Background color icon top shadow color
iconImageTopShadowPixmap TopShadowPixmap color icon top shadow pixmap
matteBackground Background color background
matteBottomShadowColor Foreground color bottom shadow color
matteBottomShadowPixmap BottomShadowPixmapcolor bottom shadow pixmap
matteForeground Foreground color foreground
matteTopShadowColor Background color top shadow color
matteTopShadowPixmap TopShadowPixmap color top shadow pixmap
matteWidth MatteWidth pixels 0
maximumClientSize MaximumClientSize wxh fill the screen
useClientIcon UseClientIcon T/F F
windowMenu WindowMenu string string
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. If a decoration is preceded by a
minus sign, then 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,
then 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.
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 window. The value
for the resource is a list of functions. 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 appropriate plus or minus sign and be
separated from the next function by a space.
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 made
completely unobscured 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.
iconImage (class IconImage)
This resource can be used to specify an icon image for a client
(e.g., "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 (i.e.,
specified by "Mwm*background 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 (i.e.,
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
(i.e., 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 is the icon foreground color (i.e.,
specified by "Mwm*foreground or Mwm*icon*foreground).
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 (i.e.,
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 (i.e.,
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 (i.e., 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 (i.e., specified by
"Mwm*bottomShadowColor or 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 (i.e., 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 (i.e., 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 (i.e., 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 (i.e., 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 disables the matte.
maximumClientSize (class MaximumClientSize)
This is a size specification that indicates the client size to be
used when an application is maximized. The resource value is
specified as widthxheight. The width and height are interpreted
in the units that the client uses (e.g., for terminal emulators
this is generally characters). If this resource is not specified
then 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 window 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
constraint on the maximum size.
useClientIcon (class UseClientIcon)
If the value given for this resource is True, then a client-
supplied icon image will take precedence over a user-supplied
icon image. The default value is False, making the user-supplied
icon image have higher precedence than the client-supplied icon
image.
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 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
the name of the built-in window menu specification.
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 description file
can be selected using the configFile resource.
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 new-line characters.
Blank lines are ignored. Items or characters can be quoted to avoid
special interpretation (e.g., 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 back-slash 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. Window manager
functions 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
is no longer obscuring any other window or icon). This function
affects only those windows and icons that are obscuring other
windows and icons, or that are obscured by other windows and icons.
Secondary windows (i.e. transient windows) are restacked with their
associated primary window. Secondary windows always stay on top of
the associated primary window and there can be no other primary
windows between the secondary windows and their primary window. If
an icon function argument is specified, then the function applies
only to icons. If a window function argument is specified then 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 windows and icons that are obscuring
other windows and icons, or that are obscured by other windows and
icons. Secondary windows (i.e. transient windows) are restacked
with their associated primary window. If an icon function argument
is specified then the function applies only to icons. If an window
function argument is specified then the function applies only to
windows.
f.exec or !
This function causes command to be executed (using the value of the
$SHELL environment variable 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 window. If this
function is done in a root context, then the default colormap (setup
by the X Window System for the screen where mwm is running) is
installed and there is no specific client window colormap focus.
This function 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
If the WM_DELETE_WINDOW protocol is set up, the client is sent a
client message event indicating that the client window should be
deleted. If the WM_SAVE_YOURSELF protocol is set up and the
WM_DELETE_WINDOW protocol is not 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 WM_DELETE_WINDOW or
WM_SAVE_YOURSELF protocol set up, this function causes a client's X
connection to be terminated (usually resulting in termination of the
client). Refer to the description of the quitTimeout resource and
the WM_PROTOCOLS property.
f.lower [-client]
This function lowers a client window to the bottom of the window
stack (where it obscures no other window). Secondary windows (i.e.
transient windows) are restacked with their associated primary
window. The client argument indicates the name or class of a client
to lower. If the client argument is not specified then the context
that the function was invoked in indicates the window or icon to
lower.
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 (such that it obscures no
other window). If an icon box is used, then the client's icon
changes to its iconified form inside the icon box. Secondary
windows (i.e. 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 allows a client window to be interactively moved.
f.next_cmap
This function installs the next colormap in the list of 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 only moved to windows
that do not have an associated secondary window that is application
modal. If the transient argument is specified, then 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, then
the function applies only to icons. If a window function argument
is specified, then 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 (i.e. transient 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) processing 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
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 previous
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
only moved to windows that do not have an associated secondary
window that is application modal. If the transient argument is
specified, then 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 then the function applies only to icons. If
an window function argument is specified then the function applies
only to windows.
f.quit_mwm
This function terminates mwm (but NOT the X window system).
f.raise [-client]
This function raises a client window to the top of the window stack
(where it is obscured by no other window). Secondary windows (i.e.
transient windows) are restacked with their associated primary
window. The client argument indicates the name or class of a client
to raise. If the client argument is not specified then the context
that the function was invoked in indicates the window or icon to
raise.
f.raise_lower
This function raises a client window to the top of the window stack
if it is partially obscured by another window, otherwise it lowers
the window to the bottom of the window stack. Secondary windows
(i.e. transient windows) are restacked with their associated primary
window.
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 allows a client window to be interactively resized.
f.restart
This function causes mwm to be restarted (effectively terminated and
re-executed).
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 message will only be sent 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
OSF behavior (if a custom behavior is configured) or a custom
behavior (if an OSF default behavior is configured).
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 (e.g., menu pane) and also what context the function can be
used in (e.g., the function is done to the selected client window).
Function contexts are
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 (e.g., f.maximize) or its maximized state
(e.g., f.normalize).
icon An icon has been selected as an object for the function.
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 then 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 root,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.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 button,key,menu
f.raise root,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
f.restart root 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 button 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 button event
occurs). The following table indicates 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.
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 button press occurs with the pointer over a
framed client window, an icon or the root window. The context for
indicating 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 sensitive).
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 window 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 will not be 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 contexts 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 will
not be 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 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 context for a key event is the window or icon
that has the keyboard input focus (root if no window or icon has the
keyboard 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
location 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 button keyboard accelerator may be
specified. Mnemonics are functional only when the menu is posted and
keyboard traversal 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.
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 will 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.
FILES
/usr/lib/X11/system.mwmrc
/usr/lib/X11/app-defaults/Mwm
$HOME/.Xdefaults
$HOME/.mwmrc
COPYRIGHT
(c) Copyright 1989 by Open Software Foundation, Inc.
(c) Copyright 1987, 1988, 1989 by Hewlett-Packard Company
All rights reserved.
ORIGIN
HP
RELATED INFORMATION
X(1)
VendorShell(3X)
XmInstallImage(3X)