           FvwmWharf - the AfterStep application "dock" module ported
           to Fvwm.

## SYNOPSIS

           FvwmWharf is spawned by Fvwm, so no command  line  invoca-
           tion will work.

## DESCRIPTION

           The FvwmWharf module is a free-floating application loader
           that can execute programs, "Swallow" running programs, and
           contain   "Folders"  of  more  applications,  among  other
           things.  The user can press the first button at  any  time
           to  trigger  invocation  of one of these functions, or the
           user can press button two in order  to  cause  the  entire
           Wharf  to  withdraw  to  the nearest corner in an iconized
           state.  FvwmWharf only works when Fvwm is used as the win-
           dow manager.

## COPYRIGHTS

           The FvwmWharf module is copyright 1995 and 1996 by a vari-
           ety of contributors.  They  are,  in  alphabetical  order,
           Beat  Christen,  Frank  Fejes,  Alfredo  Kenji Kojima, Dan
           Weeks, and Bo Yang

           The GoodStuff program, and  the  concept  for  interfacing
           this  module  to the Window Manager, are all original work
           by Robert Nation

           No guarantees or warranties or anything  are  provided  or
           implied  in  any  way whatsoever. Use this program at your
           own risk. Permission to use this program for  any  purpose
           is given, as long as the copyright is kept intact.

## INITIALIZATION

           During initialization, FvwmWharf will search for a config-
           uration file which describes the  button  panel  geometry,
           color, icons, and actions. The format of this file will be
           described later. The configuration file will  be  the  one
           which Fvwm used during its initialization.

           If  the FvwmWharf executable is linked to another name, ie
           ln -s FvwmWharf Pier, then another module called Pier  can
           be started, with a completely different configuration than
           FvwmWharf, simply by changing the keywords FvwmWharf??? to
           Pier???. This way multiple button-bars can be used.

## INVOCATION

## CONFIGURATION OPTIONS

           The following options can be placed in the .steprc file

           *FvwmWharfAnimate
                  If specified, the opening and  closing  of  Folders
                  will  be  animated, rather than simply drawn in one
                  frame.

           *FvwmWharfAnimateMain
                  Designates that full-length Wharf windraws will  be
                  animated.

           *FvwmWharfBgColor color
                  If    *FvwmWharfTextureType    0    is   specified,
                  FvwmWharf's buttons will be filled with color.

           *FvwmWharfColumns columns
                  Specifies the number of columns of  buttons  to  be
                  created. If unspecified, the number of columns will
                  be set to 1.  If the columns are set  to  a  number
                  greater  than  1  then there will be that number of
                  columns with enough rows to satisfy  the  requested
                  number of buttons.

           *FvwmWharfForceSize
                  If  specified, will force pixmaps larger than 64x64
                  to the default size.  Pixmaps  smaller  than  64x64
                  are not supported.

           *FvwmWharfFullPush
                  If  specified,  the  entire  FvwmWharf button back-
                  ground will be moved down and  to  the  right  when
                  pushed.   Especially useful with *FvwmWharfNoBorder
                  textures.

           *FvwmWharfGeometry geometry
                  Specifies  the  FvwmWharf  window  location  and/or
                  size.  If the size is not specified, FvwmWharf will
                  auto-size itself in a reasonable manner.  The geom-
                  etry  is  a standard X11 window geometry specifica-
                  tion.  This option is pre-set in  the  NEXTSTEP(tm)
                  style  section  for a consistent look and feel with
                  NEXTSTEP(tm).  Secondary FvwmWharf invocations from
                  Specifies  the maximum number of colors to use on a
                  gradient fill.

           *FvwmWharfNoBorder
                  Denotes that beveled borders should  not  be  drawn
                  around  the FvwmWharf button.  Useful with textures
                  that include their own bevels.

           *FvwmWharfPixmap pixmap
                  Sets the pixmap file to be used as FvwmWharf's but-
                  ton.  To be used with *FvwmWharfTextureType 128.

           *FvwmWharfTextureColor from to
                  When  used  with a *FvwmWharfTextureType of 1 to 5,
                  designates the ends of the  gradient  range  to  be
                  used on FvwmWharf's buttons.

           *FvwmWharfTextureType  type
                  Specifies  the  type of gradient fill to be used on
                  FvwmWharf's buttons.  Valid values are:
                  0 - No texture - use FvwmWharfBgColor to set the desired color
                  1 - Gradient from upper-left to lower right
                  2 - Horizontal one way gradient from top to bottom
                  3 - Horizontal cylindrical gradient from top/bottom to center
                  4 - Vertical one way gradient from left to right
                  5 - Vertical cylindrical gradient from left/right to center
                  128 - User specified pixmap
                  The  default  is  the  builtin  FvwmWharf   texture
                  pixmap.

           *FvwmWharf label icon command
                  Specifies  a  window  manager  built-in  command or
                  folder  to  activate  (folders  will  be  discussed
                  below),  as  described  in the Fvwm man page, which
                  should be executed when a button  is  pressed.  The
                  label  field  is  an  internal  item  that is still
                  around from the GoodStuff module.  The  icon  field
                  specifies  an X11 bitmap file, XPM color icon file,
                  or a comma-delimited set of pixmaps containing  the
                  icon(s)  to  display  on the button. FvwmWharf will
                  search through the path specified in  the  IconPath
                  or  PixmapPath configuration items to find the icon
                  file.

                  NOTE: Icons must have one transparent pixel or  the
                  definition  of  a  transparent color in order to be
                  valid.
                  will  appear  pushed  in  until the mouse button is
                  released.

                  A single extension to the Fvwm built-in command set
                  is provided.  A command of the form:

                  *FvwmWharf junk clock.xpm Swallow "Clock" asclock -shape -12 &

                  will  cause  FvwmWharf to spawn an asclock process,
                  and capture the first window whose name or resource
                  is  "Clock", and display it in the button-bar. This
                  is  handy  for  applications  like  xclock,  xbiff,
                  xload,  asclock,  and  asmail. Modules can be swal-
                  lowed by specifying  SwallowModule instead of  just
                  "swallow" NOTE: if you use xclock for this applica-
                  tion, you will want to specify xclock -padding 0.

                  For certain applications that overrun the 48  pixel
                  by  48  pixel boundary of FvwmWharf icons and Swal-
                  lowed programs there is  a  special  option  called
                  MaxSwallow.   MaxSwallow will allow the application
                  to draw itself larger than the 48x48 boundary.   It
                  is invoked the same way Swallow is.

                  To create folder "slide-outs" in FvwmWharf the fol-
                  lowing format must be used:

                  *FvwmWharf files Folders.xpm Folder
                  *FvwmWharf xftp 3DRings.xpm   Exec xftp &
                  *FvwmWharf xdir FolderDeposit.xpm Exec xdir &
                  *FvwmWharf moxfm FilingCabinet.xpm Exec moxfm &
                  *FvwmWharf ~Folders

                  The first line of this  set  tells  FvwmWharf  that
                  this  button  definition  will be a folder.  All of
                  the button definitions between the Folder  and  the
                  line  with  the  definition  of *FvwmWharf ~Folders
                  will appear  on  the  "files"  folder  when  it  is
                  exposed.  To expose the "files" folder simply click
                  on the FvwmWharf button with the  Folders.xpm  icon
                  showing.  A button bar will appear perpendicular to
                  your FvwmWharf bar and toward  the  center  of  the
                  screen.   On  this  smaller  bar  will be the three
                  icons that were configured between the  Folder  and
                  ~Folder  parts  of the FvwmWharf configuration.  As
                  many folder buttons may be configured as is room on
                  your  screen.   The only items that may not be con-
                  figured within folders are  Swallowed  applications
                  and more folders.

## DRAG AND DROP

           ton, the following syntax must be adhered to:

           *FvwmWharf     nil      nil        DropExec "program" program %s
           *FvwmWharf     program  iconname   Exec "program" program

           The  button  will  call program when pushed.  If a file is
           dragged onto into it, program will be called with %s being
           replaced by the dropped filename.

## AUTHORS

           Beat Christen (bchriste@iiic.ethz.ch)
           Frank Fejes (frank@ssax.com)
           Alfredo Kengi Kojima (kojima@inf.ufrgs.br)
           Dan Weeks (dan@mango.sfasu.edu)
           Bo Yang (eric@coeus.ucsd.edu)