4Dwm(1X)                  UNIX System V                  4Dwm(1X)


     NAME
          4Dwm - The IRIS Extended Motif Window Manager.

     SYNOPSIS
          4Dwm [options]

     DESCRIPTION
          4Dwm is an X Window System client based on mwm.  It provides
          window management functionality, desks 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, and input-focus ownership.  The session
          management functionality can launch clients as well as
          provide a way of stopping a client.

          This manual page only describes additions to and differences
          from mwm.  Refer to the mwm manual page for more
          information.  For menu contents, button bindings and key
          bindings see /usr/lib/X11/system.4Dwmrc. For 4Dwm resources
          settings see /usr/lib/X11/app-defaults/4DWm.


        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 4Dwm to manage all screens on the
                  display.  The default is to manage only a single
                  screen, but the /usr/lib/X11/app-defaults/4DWm
                  overrides the default behavior by setting the
                  resource multiScreen to True.

          -name name
                  This option causes 4Dwm 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 4Dwm.  If 4Dwm is managing a
                  single screen, only the first name in the list is
                  used.  If 4Dwm 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.

          -launch This option along with SG_manageSession being True
                  causes 4Dwm to check the list of windows that have


                  been saved and their commands and attempt to launch
                  the appropriate applications.  This option is
                  removed from the command line of a 4Dwm that has
                  been restarted, so as to not launch applications the
                  user has quit (useful for explicit session
                  management).


        Windows Control Panel
          The Windows control panel (accessed from toolchest Desktop-
          >Customize->Windows) can be used to set selected 4Dwm
          resources such as useIconBox, moveOpaque,
          clientAutoPlace/interactivePlacement, and SG_autoSave.  See
          the windows man page for more details.


        Desks
          Desks allows the user to organize windows into related
          groups called "desks". A desk typically contains all of the
          windows relating to a particular task or context.  Desks
          manages the location, size and state of windows in each
          desk.  Desks does not manage minimized window icons.  A
          window that is not visible in a desk is referred to as
          "hidden".

          With SG_manageSession set to True, desks information gets
          saved at the time that the session information gets saved.
          The active desk at the time the save is done is the desk
          that will first be active the next time 4Dwm starts.

          The toolchest entry "Desktop->Desks Overview" invokes the
          user interface controls (ov) needed to use desks easily and
          effectively.  Ov can display a miniature picture of the
          layout of each desk.  Ov provides ways to create a desk,
          rename a desk, delete a desk, switch between desks, move
          windows between desks, copy windows between desks, put a
          window in all desks, list all the windows, and some other
          window management tasks.  See the ov man page for more
          details.  See the CAVEATS section at the end of this man
          page for some desks behaviors that may be unexpected.


        Session Management
          4Dwm keeps track of the windows that are open on your
          display. If SG_manageSession is True and the "-launch"
          option is given, 4Dwm checks the list of windows that may
          have been saved and their commands to determine which
          applications 4Dwm should attempt to launch automatically.
          If SG_manageSession is True, 4Dwm reads the WM_COMMAND
          property on the windows that it manages to get the commands
          with which the application wishes to be launched. Not all
          applications provide a WM_COMMAND property or sufficient


          information in the property to successfully launch the
          application.  Sometimes 4Dwm can launch applications that
          were started remotely.  The WM_CLIENT_MACHINE property on
          the application window identifies the remote machine on
          which the application runs.

          The default 4Dwm session behavior is to save the list of
          window commands and minimized window icon locations
          periodically and when you log out or quit or restart 4Dwm.
          This behavior corresponds to the "Save Windows & Desks -
          Continuously" option on the Windows control panel
          (SG_autoSave: true).  The other option is to use a list that
          you explicitly saved. This behavior corresponds to the "Save
          Windows & Desks - Explicitly" option on the Windows control
          panel (SG_autoSave: false).  The toolchest entry "Desktop-
          >Customize->Windows" provides access to the Windows control
          panel.  See the windows man page and help text for more
          details on "Saving Your Desktop Layout".


        Backgrounds
          It switches the screen backgrounds automatically when the
          user switches desks, and it communicates to the file manager
          when icons are on the background, so the file manager can
          maintain the background.  Only those backgrounds set through
          either the Background customization panel or through the
          xsetroot command are accepted. Backgrounds set through any
          other tool are ignored.  If file manager icons are on the
          background, the change will not be seen.  If icons on the
          background are disabled, the change will have an effect,
          although it will not show up in the desks overview, and will
          be forgotten after the user switches desks or starts a new
          login session.  Whenever a new desk is created, one of a set
          of "granite" backgrounds will be assigned to that desk.


        Dynamic Menus
          Dynamic menus are used internally for several desktop
          applications to combine their menus with specific 4Dwm root
          menus and dynamically update the contents the menu.  Dynamic
          menus have special limitations that other menus do not have.
          There is currently no publicly available method for other
          applications to take advantage of this capability.  Dynamic
          menus can be identified in the /usr/lib/X11/system.4Dwmrc
          file by their use of the keyword "dynamic".


        tellwm
          Some 4Dwm functions are available through the "tellwm"
          command.  Tellwm is meant to be used for 4Dwm related
          toolchest and windows control panel functions.  See the
          tellwm man page for more details.


        Rounded Looks
          The window frames have been given a slightly more rounded
          look.  Resources have been added to allow a black outline
          around the frame and title bar, and for the buttons on the
          title bar to appear as decals.  Also, the calculation of
          topShadowColor and bottomShadowColor from the background
          color has been adjusted.


        Icons
          Icons are small graphic representations of windows. 4Dwm
          provides some support for IRIS Image format files (type
          NORMAL) to be specified as iconImage files. This works
          transparently through the standard mwm mechanism for
          bitmapDirectory and iconImage. 4Dwm also searches for icons
          based on the instance name portion of the WM_CLASS property,
          appended with ".icon".  It first searches the directory
          specified by bitmapDirectory, then $HOME/.icons then
          /usr/lib/images.  If the icon is still not found, then 4Dwm
          searches for icons based on the class name portion of the
          WM_CLASS property, appended with ".icon".  It uses a file
          called "default.icon" (if it exists) if no match was found
          in the above search.

          One way to create an IRIS Image format iconImage file is to
          use an application such as snapshot.  Use izoom to resize
          the image to fit the iconImageMaximum (default 85x67
          pixels).

          Icons are cached by 4Dwm based on their path.  As with
          resources, 4Dwm will need to be restarted to pick up new
          settings.  Clients may change the icon for their window
          through the WM_HINTS property (bitmaps or change the
          contents of the icon window) or the _SGI_ICON_HINTS property
          (for IRIS image format icons as well as bitmaps).
          _SGI_ICON_HINTS is a STRING property that 4Dwm uses
          similarly to the way 4Dwm uses the WM_CLASS property for
          icons.

          iconImageMaximum can be adjusted to a preferred size for
          icons with these images.  These IRIS Image format images are
          not resized to fit the iconImageMaximum.  They are either
          clipped or centered or rejected.  fadeNormalIcon is not
          supported on multi-color icons.  On some systems, the 4Dwm
          multi-colored icons will share the same colormap as the
          desktop.  This is an attempt at further reducing colormap
          flashing.  On other systems that support a 24 bit TrueColor
          visual, this visual is used for the multi-colored icons and
          the iconImageColors resource is ignored.

          An icon tiling area can be specified through the use of
          margins from the edges of the screen.  Margins that would


          cause no tiling area or an off screen area are defaulted to
          the iconPlacementMargin value.  The minimum size of the
          tiling area is the size of one icon.


        Use of Overlay Planes
          4Dwm uses the overlay planes (if they are available) to help
          reduce the number of expose events on clients in the normal
          planes. Be aware that there are only a small number of
          colors available for use in the overlay/popup planes.

          If a system supports popup planes, window outlines are drawn
          in the popup planes during window configuration operations
          that require window outlines (initial placement, move,
          resize).  This is resource controllable (SG_useOverlay,
          SG_useOverlaySolid).

          Menus and feedback windows appear in the popup planes (if
          available). These windows share a colormap in the popup
          planes, so if a color change is desired for one of the
          windows it must be made for all of them.  Which planes are
          used is controlled by the SG_VisualType and SG_VisualDepth
          resources.

          Clients in the overlay planes have their window frames drawn
          in the same visual as the client.  These frames are similar
          to the frames that would appear on monochrome systems.
          These frames also have some other limitations.  See the
          SG_framesInOverlays resource.


        Num_Lock and Scroll_Lock
          4Dwm treats the Num_Lock and Scroll_Lock keys in a similar
          manner to Lock (Caps_Lock).  The Num_Lock and Scroll_Lock
          keys modify the button and key events that 4Dwm receives.
          This can affect the 4Dwm button and key bindings.  For the
          most part, 4Dwm ignores the Num_Lock and Scroll_Lock so that
          the unmodified button and key bindings still work.  If there
          exist button and key bindings that use the modifiers that
          Num_Lock and Scroll_Lock correspond to, then those button
          and key bindings may be executed as well (depending on the
          order in the .4Dwmrc file and the type of function).


        Additional Functions
          Functions are used in the resource description file when
          defining button bindings, key bindings and menus.  4Dwm uses
          different, although similar, resource description files than
          mwm.  The 4Dwm resource files are listed in the FILES
          section.


          f.lower_icons
               This function causes all icons to be lowered to the
               bottom of the window stack.

          f.minimize_all
               This function causes all client windows to be minimized
               (iconified).  Note that not all clients allow
               themselves to be minimized.

          f.normalize_all
               This function causes all clients windows to be
               displayed with their normal size.

          f.quit_app
               This function is used to terminate a client.  If the
               _WM_QUIT_APP protocol is set up (as part of
               WM_PROTOCOLS similarly to the way WM_DELETE_WINDOW
               might be), the client is sent a client message event
               indicating that the client window should be quit.  If
               the client does not have the _WM_QUIT_APP protocol set
               up, this function tries WM_DELETE_WINDOW and then tries
               WM_SAVE_YOURSELF.  If the client does not have any of
               these protocols set up then this function causes a
               client's X connection to be terminated (usually
               resulting in termination of the client).

          f.raise_icons
               This function causes all icons to be raised to the top
               of the window stack.

          f.raise_move
               This function causes the corresponding client window to
               be raised to the top of the window stack and to be
               interactively moved.  Note that due to use of the
               moveThreshold this function is only available as a
               ButtonBinding over a client window.

          f.raise_resize
               This function causes the corresponding client window to
               be raised to the top of the window stack and to be
               interactively resized.  Note that due to use of the
               moveThreshold this function is only available as a
               ButtonBinding over a client window.

          f.restore_all
               This function restores the previous state (normal or
               maximized) of all client windows that are displayed as
               icons.

          f.set_behavior
               This function causes the window manager to restart with
               the default behavior (if a custom behavior is


               configured) or revert to the custom behavior.  This
               function has been extended to have a third behavior,
               IRIS Defaults mode.


        Additional Desks Functions
          These functions are only to be used if SG_manageSession is
          set to False.  These functions allow access to desks
          functions that are automatically taken care of if
          SG_manageSession is set to True.  Setting SG_manageSession
          to False and using these functions is not suggested (the
          Desks Overview (ov) may be used in this mode).


          f.make_permanent
               This function causes a specific window to be remembered
               by desks.

          f.make_permanent_all
               This function causes all known windows to be remembered
               by desks.

          f.make_transient
               This function causes a specific window to be forgotten
               by desks.

          f.save_config
               This function causes the appropriate $HOME/.desktop-
               <hostname>/0.0/4Dwm* files to be written.  Only the
               existing desks and "permanent" windows are written.

          f.switch_desk deskName
               This function causes the desk specified in the deskName
               argument to become the active desk (if the desk
               exists).


        Additional Resources
          4DWm is the resource class name for 4Dwm.  4Dwm is the
          resource instance name for 4Dwm and takes precedence over
          4DWm when used to specify resources.

          The additional resources are specific appearance and
          behavior resources.  They are not set separately for
          different 4Dwm user interface components.  The syntax for
          specifying the additional specific appearance and behavior
          resources is

                   4DWm*resource_id


          SG_autoSave (class SG_AutoSave)


                  If True, and SG_manageSession is True, 4Dwm will
                  "continuously" and at log out, restart and quit time
                  save the WM_COMMAND properties from the active
                  windows and their desks state, location and
                  geometry.  This information is used the next time
                  4Dwm is started.  If False, and SG_manageSession is
                  True, 4Dwm must be told to save the session
                  information "explicitly".  This is a snapshot of the
                  currently active windows that is retained until
                  another save is done.  Explicit saves can be done
                  from the Windows control panel or with "tellwm
                  save_configuration".  When setting SG_manageSession
                  to False, the user should consider removing the
                  $HOME/.desktop-<hostname>/0.0/4Dwm* files.  If you
                  have had SG_manageSession set to false, and you
                  return it to True, you may see undefined behavior if
                  the $HOME/.desktop-<hostname>/0.0/4Dwm* files are
                  out of sync with each other.  Only applications that
                  are in both the $HOME/.desktop-
                  <hostname>/0.0/4Dwmdesks file and the
                  $HOME/.desktop-<hostname>/0.0/4Dwmsession file are
                  considered for launching.  The default value is
                  True.

          SG_ditherMidShadows (class SG_DitherMidShadows)
                  If True, dithers the middle shadow color rather than
                  selecting a color between the top/bottom shadow
                  color and the background color.  If False, it does
                  not.  The default value is True.

          SG_frameOutline (class SG_FrameOutline)
                  If True, draws a black outline around the frame.  If
                  False, it does not.  The default value is True.

          SG_framesInOverlays (class SG_FramesInOverlays)
                  If True, clients in the overlay planes have their
                  frames drawn in the same visual and colormap as the
                  client.  For such clients, no color or pixmap
                  resources or mattes are provided for the overlay
                  window frames.  The frames will appear in colors
                  from the client's colormap.  If False, all clients
                  will have their frames drawn in the default visual.
                  The default value is True.

          freezeOnConfig (class FreezeOnConfig)
                  This is an undocumented resource of mwm.  If True,
                  the X server is grabbed during configuration
                  operations (initial placement, move, and resize of
                  windows).  Clients will seem to "freeze".  If False,
                  window outlines will flash during configuration
                  operations except when overlay visuals are
                  available, and SG_useOverlay and SG_useOverlaySolid


                  are True.  The default value is False.

          SG_iconAutoPlaceUnique (class SG_IconAutoPlaceUnique)
                  If True and iconAutoPlace is true 4Dwm will try not
                  to place a new icon where another current client has
                  been iconified.  The user can override this by
                  moving an icon to a location if there is no icon
                  visible at that location.  If False and
                  iconAutoPlace is true 4Dwm uses the first place
                  available for new icons. The default value is True.

          SG_iconImageColors (class SG_IconImageColors)
                  Used to specify that multi-colored icons should use
                  the GL colormap or only allocate a limited number of
                  colors in the default colormap. If the GL colormap
                  is selected, the colors displayed in the icons may
                  change if GL programs change the colors in the GL
                  colormap or the currently installed colormap
                  conflicts with the GL colormap.  When the GL
                  colormap is used with the icon box, the icon box
                  colormap takes precedence over the GL colormap.
                  Valid values are: 0(GL colormap), 16, 32, 64, 128.
                  The default value is 0.

          SG_iconPlacementBottomMargin (class SG_IconPlacementBottomMargin)
                  This resource sets the distance between the bottom
                  edge of the screen and the icons that are placed
                  along the bottom edge of the screen.  The value
                  should be greater than or equal to 0 and less than
                  the screen height. A default value is used if the
                  value specified is invalid.

          SG_iconPlacementLeftMargin (class SG_IconPlacementLeftMargin)
                  This resource sets the distance between the left
                  edge of the screen and the icons that are placed
                  along the left edge of the screen.  The value should
                  be greater than or equal to 0 and less than the
                  screen width minus the icon width. A default value
                  is used if the value specified is invalid.

          SG_iconPlacementRightMargin (class SG_IconPlacementRightMargin)
                  This resource sets the distance between the right
                  edge of the screen and the icons that are placed
                  along the right edge of the screen.  The value
                  should be greater than or equal to 0 and less than
                  the screen width. A default value is used if the
                  value specified is invalid.

          SG_iconPlacementTopMargin (class SG_IconPlacementTopMargin)
                  This resource sets the distance between the top edge
                  of the screen and the icons that are placed along
                  the top edge of the screen.  The value should be


                  greater than or equal to 0 and less than the screen
                  height minus the icon height. A default value is
                  used if the value specified is invalid.

          SG_initialDeskName (class SG_InitialDeskName)
                  This resource sets the name of the first desk that
                  is created the first time 4Dwm is run, before the
                  4Dwmdeskname file exists.  Once the 4Dwmdeskname
                  file exists, this resource is no longer used.  The
                  default value is "Desk 1".

          SG_manageSession (class SG_ManageSession)
                  If True, and if the session has been saved (either
                  continuously or explicitly) 4Dwm will attempt to
                  launch applications from the saved WM_COMMAND
                  properties when 4Dwm starts (if the applications are
                  not already running).  If False, 4Dwm does not save
                  WM_COMMANDs or launch the corresponding
                  applications.  If a $HOME/.desktop-
                  <hostname>/0.0/4Dwmdesks file exists, 4Dwm will use
                  it for laying out desks.  Saving of the desks
                  information is not done automatically.  Information
                  about windows is not forgotten when the windows go
                  away if they windows are "permanent" windows.
                  Setting SG_manageSession to False is not the
                  preferred mode.  The default value is True.

          SG_outlineDecoration (class SG_OutlineDecoration)
                  If True, configuration outlines track window
                  decorations.  If False, a single outline is
                  displayed.  The default value is True.

          SG_packIconsMenuItem (class SG_PackIconsMenuItem)
                  The is only provided for localization purposes.  The
                  format is similar to a menu entry.  The default
                  value is \"Pack Icons\" _P Shift Alt<Key>F7
                  f.pack_icons\n

          pointerColor (class PointerColor)
                  Defines the color of the pointer.  The default value
                  is red.

          pointerColorBackground (class PointerColorBackground)
                  Defines the color of the pointer background with a
                  two color cursor.  The default value is white.

          SG_shapeDecoration (class SG_ShapeDecoration)
                  If True, arbitrary shaped windows are decorated
                  normally.  If False, it turns off all decorations on
                  all arbitrary shaped windows.  The default value is
                  True.


          SG_titleLeft (class SG_TitleLeft)
                  This resource specifies whether the text in the
                  title bar is left justified.  If false, the text is
                  centered.  The default value is True.

          SG_titleOutline (class SG_TitleOutline)
                  If True, draws a black outline around the title bar.
                  If False, it does not.  The default value is True.

          SG_titlePadding (class SG_TitlePadding)
                  The number of pixels by which the title bar height
                  is padded.  The pixels are divided between above the
                  title text and below it.  Valid numbers are in the
                  range of 0 to 100.  The default value is 3.

          SG_useBackgrounds (class SG_UseBackgrounds)
                  If True, manages the screen backgrounds.  If False,
                  it does nothing with the screen backgrounds.  The
                  default value is False, but it is set to True on the
                  Xsession.dt command line if the "desktop" is turned
                  on.

          SG_useDecals (class SG_UseDecals)
                  If True, uses decals on the title bar buttons.  If
                  False, it uses the mwm look.  The default value is
                  True.

          SG_useOverlay (class SG_UseOverlay)
                  If True, tries to use the popup planes (if
                  available, and if not then other overlay planes if
                  available) for drawing the configuration outlines.
                  If popup or overlay planes are not available it uses
                  the default visual.  If False, it uses the default
                  visual.  The default value is True.

          SG_useOverlaySolid (class SG_UseOverlaySolid)
                  If True and SG_useOverlay is True, then a copy
                  operation is used to draw the configuration
                  outlines.  This is faster than the xor algorithm
                  used when this is false, but may look strange (cause
                  temporary damage and then expose events) over
                  clients in the overlay planes.  If
                  SG_useOverlaySolid is set to false and
                  freezeOnConfig is false, then the configuration
                  outlines will flash.  The default value is True.

          SG_visualDepth (class SG_VisualDepth)
                  This resource controls the depth of the visual to be
                  used for the menus and feedback window. The default
                  is to choose an optimum value based on the available
                  hardware.  If the hardware does not support the
                  requested depth for the requested SG_visualType, a


                  warning is issued and a default depth is chosen.

          SG_visualType (class SG_VisualType)
                  This resource controls the visual in which the menus
                  and feedback window appear.  Possible values are
                  "normal" specifying the normal planes, "overlay"
                  specifying overlay planes, and "popup" specifying
                  the popup planes. On hardware supporting only popup
                  planes, specifying overlay results in popup planes.
                  If the requested visual type is not supported by the
                  hardware, a warning is issued and a default type is
                  used.  The default is to use the popup planes.  Use
                  of the popup planes avoids interfering with other
                  clients on the screen, but provides only three
                  colors; the colors may be different than the colors
                  that would be allocated in the normal planes.  To
                  have the full ability to chose colors, set this
                  resource to "normal".

          SG_watchMotifHints (class SG_WatchMotifHints)
                  If True, 4Dwm responds to most changes in the
                  _MOTIF_WM_HINTS property.  If False, it ignores most
                  changes to the _MOTIF_WM_HINTS property.  The
                  default value is True.

          SG_wMenuButtonClick2Quit (class SG_WMenuButtonClick2Quit)
                  If True, 4Dwm will allow a double-click on the
                  window menu button to do the "Exit" (f.quit_app)
                  function if it is available on the window and the
                  "Close" (f.kill) function is not available on the
                  window.  If False, it does not do the f.quit_app on
                  double-click of the window menu button.  The default
                  value is True.


        IRIS Defaults
          The following values are available through the
          /usr/lib/X11/app-defaults/4DWm file and/or the IRIS Defaults
          mode of the window manager.

          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|||    varies
          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 R4 Font description.

          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).


          The following specific appearance and behavior resources can
          be specified:


                                                 Specific Appearance
                                                and Behavior Resources
          Name                           Value Type     Default
          __________________________________________________________________________________________________
          autoKeyFocus                   T/F            T
          autoRaiseDelay                 millisec       500
          SG_autoSave                    T/F            T
          bitmapDirectory                directory      /usr/include/X11/bitmaps
          buttonBindings                 string         "4DwmButtonBindings"
          cleanText                      T/F            T
          clientAutoPlace                T/F            T
          colormapFocusPolicy            string         keyboard
          configFile                     file           .4Dwmrc
          SG_confirmAtPointer            T/F            T
          deiconifyKeyFocus              T/F            T
          SG_ditherMidShadows            T/F            T
          doubleClickTime                millisec.      multiClickTime
          enableWarp                     T/F            T
          enforceKeyFocus                T/F            T
          fadeNormalIcon                 T/F            F
          frameBorderWidth               pixels         7
          SG_frameOutline                T/F            T
          SG_framesInOverlays            T/F            T
          freezeOnConfig                 T/F            F
          iconAutoPlace                  T/F            T
          SG_iconAutoPlaceUnique         T/F            T
          iconBoxGeometry                string         6x1+0-0
          iconBoxName                    string         iconbox
          iconBoxSBDisplayPolicy         string         all
          iconBoxTitle                   XmString       Windows Overview
          iconClick                      T/F            F
          iconDecoration                 string         label image
          SG_iconImageColors             number         0
          iconImageMaximum               wxh            85x67
          iconImageMinimum               wxh            16x16
          iconPlacement                  string         left top tight
          iconPlacementMargin            pixels         10
          SG_iconPlacementBottomMargin   pixels         varies
          SG_iconPlacementLeftMargin     pixels         125
          SG_iconPlacementRightMargin    pixels         varies
          SG_iconPlacementTopMargin      pixels         varies
          SG_initialDeskName             string         Desk 1
          interactivePlacement           T/F            F
          keyBindings                    string         "4DwmKeyBindings"
          keyboardFocusPolicy            string         pointer
          limitResize                    T/F            T
          lowerOnIconify                 T/F            F
          maximumMaximumSize             wxh (pixels)   2X screen w&h
          moveOpaque                     T/F            F
          moveThreshold                  pixels         3


          multiScreen                    T/F            T
          SG_manageSession               T/F            T
          SG_outlineDecoration           T/F            T
          SG_packIconsMenuItem           string
          passButtons                    T/F            T
          passSelectButton               T/F            T
          pointerColor                   color          varies
          pointerColorBackground         color          varies
          positionIsFrame                T/F            F
          positionOnScreen               T/F            T
          quitTimeout                    millisec.      1000
          raiseKeyFocus                  T/F            F
          resizeBorderWidth              pixels         7
          resizeCursors                  T/F            T
          screens                        string         varies
          shapeDecoration                T/F            F
          showFeedback                   string         behavior restart quit
          startupKeyFocus                T/F            T
          SG_titleLeft                   T/F            T
          SG_titleOutline                T/F            T
          SG_titlePadding                pixels         3
          transientDecoration            string         menu title
          transientFunctions             string         -minimize -quit
          SG_useBackgrounds              T/F            F
          SG_useDecals                   T/F            T
          useIconBox                     T/F            F
          SG_useOverlay                  T/F            T
          SG_useOverlaySolid             T/F            T
          SG_visualDepth                 number         varies
          SG_visualType                  string         varies
          SG_watchMotifHints             T/F            T
          wMenuButtonClick               T/F            T
          wMenuButtonClick2              T/F            T
          SG_wMenuButtonClick2Quit       T/F            T

          The following client specific resources can be specified:

                            Client Specific Resources
     Name                          Value Type   Default
     _______________________________________________________________________
     clientDecoration              string       all
     clientFunctions               string       all
     focusAutoRaise                T/F          F
     iconImage                     pathname     (image)
     iconImageBackground           color         icon background
     iconImageBottomShadowColor    color        icon bottom shadow
     iconImageBottomShadowPixmap   string       icon bottom shadow pixmap
     iconImageForeground           color        varies
     iconImageTopShadowColor       color        icon top shadow color
     iconImageTopShadowPixmap      string       icon top shadow pixmap


     matteBackground               color        background
     matteBottomShadowColor        color        bottom shadow color
     matteBottomShadowPixmap       string       bottom shadow pixmap
     matteForeground               color        foreground
     matteTopShadowColor           color        top shadow color
     matteTopShadowPixmap          string       top shadow pixmap
     matteWidth                    pixels       0
     maximumClientSize             wxh          fill the screen
     useClientIcon                 T/F          F
     usePPosition                  string       nonzero
     windowMenu                    string       "4DwmWindowMenu"


        Localization of Strings
          Most 4Dwm strings can be localized via the resource
          mechanism.  These resources are listed in the
          /usr/lib/X11/app-defaults/4DWm file.


     FILES
          /usr/lib/X11/$LANG/system.4Dwmrc
          /usr/lib/X11/system.4Dwmrc
          /usr/lib/X11/app-defaults/4DWm
          $HOME/4DWm
          $HOME/.Xdefaults
          $HOME/$LANG/.4Dwmrc
          $HOME/.4Dwmrc
          $HOME/.motifbind
          $HOME/.desktop-<hostname>/0.0/4Dwmdesks
          $HOME/.desktop-<hostname>/0.0/4Dwmdeskname
          $HOME/.desktop-<hostname>/0.0/4Dwmsession
          $HOME/.desktop-<hostname>/0.0/4DWm or $HOME/.Sgiresources

     SEE ALSO
          mwm(1X), ov(1), tellwm(1X), windows(1), background(1),
          fm(1), xsetroot(1), X(1)

     CAVEATS
          Sending a SIGKILL to 4Dwm usually causes loss of input
          focus.  Since SIGKILL can not be caught, 4Dwm is not able to
          exit gracefully.  If you have a terminal emulator window
          available, use "tellwm quit" to terminate 4Dwm.

          When invoking f.exec commands, 4Dwm uses the  MWMSHELL
          environment variable if it is set, otherwise  the  value  of
          the  SHELL  environment variable  if  it  is  set,
          otherwise  /bin/sh.  These must be valid command shells for
          the f.exec to work.  f.exec command failure might not be
          obvious.  The f.exec command is most efficient when MWMSHELL
          is set to /bin/sh.


          Certain client programs have chosen not to use the "Close"
          function.  Double-clicking on their window menu button will
          not close the window. These client programs can be
          identified by the lack of "Close" in their menu.

          Occasionally, when moving between two windows using non-
          default colormaps, there is some brief colormap flashing.
          The correct colormap is normally installed.

          On occasion a 4Dwm menu will not be able to get the X grabs
          it needs to function.  The result is a 4Dwm menu that stays
          posted and does not respond to the pointer.  Usually
          pressing the Esc key will remedy the situation.

          If there are more icons that need to be displayed than can
          fit in the icon tiling region, then there may become holes
          in the tiling region (places where you cannot place an icon
          that you used to be able to place one).  The workaround is
          to reduce the number of icons needed and restart 4Dwm.

          Sometimes the iconbox does not display a scroll bar to allow
          access to all the available icons.  To work around this
          problem, resize the iconbox or use the Pack Icons entry on
          the iconbox menu.

          4Dwm may print out an error message when icon image files
          are not found or are not valid image files.  This may happen
          in an unusual way if the client's class starts with a '/'.
          Clients should not have their instance or class name begin
          with a '/' for the 4Dwm icon search to work properly.

          With some applications, there is a problem detecting
          double-clicks when 4Dwm has a button binding active in the
          window context.  By default, 4Dwm does not have such a
          button binding (except for on Meta<Btn3Down>).  This may
          happen with the Desks Overview (ov), interfering with
          switching desks.

          Windows may receive a stray Button Up event as a result of
          the user double-clicking on the system button of the window
          above it (when it succeeds in closing the window).

          Sometimes additions to the keyBindings in the .4Dwmrc file
          will cause the keyboard focus to not be set to any window.
          If this happens use the pointer to pop up a 4Dwm menu (or
          move or resize a window if the rubberbands are displayed in
          the overlay planes).

          With pointer focus mode, some applications that use modal
          dialogs may lose input focus.  If this happens, move the
          pointer out of the application window.


          Session management attempts to launch applications that
          provide a WM_COMMAND property on their windows.  There are
          many reasons that the WM_COMMAND alone is not sufficient
          information to successfully launch an application.

          The session management and desks code work together to try
          to determine which window should appear at what location and
          size and in which desk.  This determination is based on the
          WM_CLASS and WM_COMMAND properties of the window, so 4Dwm
          may not be able to distinguish between different windows,
          especially if these windows lack the WM_CLASS and WM_COMMAND
          properties.

          Desks remembers the state and geometry of your window in
          your various desks.  Session management trys to launch the
          applications that correspond to the windows.  If session
          management can not launch the application, desks may still
          remember the configuration of that window.  Launching the
          application by hand may cause the windows to appear in the
          state that desks remembered them.

          Deleting a desk does not cause the windows that appear in
          that desk to go away (close or quit) or the application to
          quit running.  If the windows do not appear in any remaining
          desk, access the windows from the Desks Overview (ov)
          Window->List All...  menu selection (or the Windows Overview
          (iconbox) if it is present).

          Sometimes the $HOME/.desktop-<hostname>/0.0/4Dwm* files are
          corrupted on shutdown/reboot or if the power is turned off.
          If 4Dwm is running with continuous session management, it is
          recommended that 4Dwm be quit before the shutdown/reboot.
          This can be done by issuing the command "tellwm quit" from a
          terminal emulator window.

          The $HOME/.desktop-<hostname>/0.0/4Dwm* files are only meant
          to be written by 4Dwm.  Hand editing these files will result
          in undefined behavior.

          If you choose to run multiple instances of 4Dwm, be aware
          that they will overwrite each other's $HOME/.desktop-
          <hostname>/0.0/4Dwm* files.  The resulting desks and session
          management behavior is undefined.   With careful attention
          to turning off session management (SG_manageSession: false)
          or to setting session management to the explicit
          (SG_autoSave: false) mode, it is possible to use the window
          management functions of 4Dwm.

          This version of 4Dwm has some problems with multi-headed
          systems.  One is the above multiple instances of 4Dwm
          overwriting each other's files if you choose to run separate
          instances of 4Dwm on each head.  Another problem is when fm


          is running, the dynamic root menu may be incorrect (usually
          on the head on which fm is not running).

          4Dwm has not kept up with the increasing number of visuals
          available on some systems.  There may be some visuals with
          which it does not work properly, especially on multi-headed
          systems.

          Occasionally there seems to be an interaction between the
          Desks Overview (ov) window and 4Dwm that appears as a
          constant resizing of the ov window.  Manually resizing or
          closing the ov window should stop this behavior.

          There is an interaction between ov and 4Dwm when the
          "Global" desk is the current desk which causes new windows
          to be mapped at location 0,0.

          Since 4Dwm session mangement tries to launch applications,
          if you have your own $HOME/.sgisession or $HOME/.xsession
          file that launches the same applications as 4Dwm launches,
          you may end up with multiple copies of the same application
          running.  If you have SG_manageSession set to True, you
          should remove the launching of applications that 4Dwm can
          launch from these files.

          4Dwm session management and desks do not work always very
          well with multi-windowed applications.  There is currently
          no mechanism in place to relate windows of an application.
          Often times not all windows of an application can be made to
          appear as they were when a session was saved.  Dialogs or
          other windows that an application may launch may appear in a
          different desk than the other windows of the application.

          Desks does not understand about maximized windows.  Since
          windows are quite often resized when switching desks, the
          maximized windows usually turn into large normalized windows
          upon return to the desk where they were previously
          maximized.

          If an attempt is made to change the background through a
          tool other than the background control panel or xsetroot, a
          warning will be given.  If file manager icons on the
          background are enabled, the warning will always be given.
          If they are disabled, the warning will only be given the
          first time it occurs.

          Backgrounds are cached for all desks.  If a user has many
          desks, each using many colors, the colors can fill up the
          colormap.  Similarly, if many desks each have large
          background pixmaps, much server memory can be used.

          Menus and feedback windows appear by default in the popup


          planes (if available). These windows share a colormap in the
          popup planes, so if a color change is desired for one of the
          windows it must be made for all of them.  There are only
          three colors available in the popup colormap, so more than
          one attempt may need to be made to find colors that work
          together.  Sometimes when too many colors are needed, the
          ones that can't be allocated appear transparent.

          4Dwm is meant to be run with schemes enabled.  If schemes is
          disabled, it is likely that there will be transparent pixels
          in 4Dwm's windows in the overlay planes.  If this happens,
          either explicitly set the colors (such as
          4Dwm*menu*foreground: black) to some color that is already
          appearing in the 4Dwm window (or if it is the menus, another
          option is to remove the menus from the overlay planes
          (4Dwm*SG_visualType: normal) if you don't mind the
          additional exposes it will cause when you pop up a 4Dwm menu
          or feedback window).


     Page 20                                         (printed 4/30/98)