Provided by: fvwm_2.6.5.ds-3_amd64 bug


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


       FvwmWharf is spawned by Fvwm, so no command line invocation will work.


       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 iconified state.  FvwmWharf only works when fvwm is
       used as the window manager.


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

       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.


       During  initialization,  FvwmWharf  gets  config  info  from  fvwm's  module configuration
       database (see fvwm(1), section MODULE COMMANDS) to obtain a description  of  button  panel
       geometry, color, icons, and actions.

       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.


       FvwmWharf should be invoked in the same way as other fvwm modules.


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

              Designates that full-length Wharf windows will be animated.

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

       *FvwmWharfColorset colorset
              Tells the module to use colorset colorset for the background of all buttons.   This
              option   disables  the  options  'BgColor',  'TextureType'  and  'TextureColor'  if
              specified after these and is disabled by them if used before any  of  them  in  the
              configuration.   Please  refer  to the man page of the FvwmTheme module for details
              about colorsets.

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

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

              If specified, the entire FvwmWharf button background 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 geometry is a standard
              X11  window  geometry  specification.   This  option is pre-set in the Nextstep(tm)
              style section for a consistent look and feel with NEXTSTEP(tm). Secondary FvwmWharf
              invocations from links may have their own geometry.

       *FvwmWharfMaxColors number
              Specifies the maximum number of colors to use on a gradient fill.

              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  button.   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  ImagePath
              configuration item to find the icon file.

              NOTE:  Icons  must  have  one  transparent pixel or the definition of a transparent
              color in order to be valid.

              If command is an fvwm Exec command, then the button 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

              *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 swallowed by specifying the word Module:

              *FvwmWharf pager nil Swallow "Desktop" Module FvwmPager 0 0

              NOTE: if you use xclock for this application,  you  will  want  to  specify  xclock
              -padding 0.

              Swallow  option  tries  to  force  an application to be 48 by 48 pixels.  A special
              option MaxSwallow can be used to leave an application at its  own  size  (but  less
              then  64x64).   MaxSwallow  is  invoked  the  same  way  Swallow is. If you want an
              application to fill all the button  place,  you  should  start  it  with  a  proper
              geometry  flag, like "xload -g 64x64" or, if you want to leave a 3d-look: "xload -g

              Note, not all applications are good for swallowing, some can't be resized  at  all,
              some  can't  be resized exactly to 48x48 or 64x64, you are responsible for choosing
              suitable applications to be swallowed.

              To create folder "slide-outs" in FvwmWharf the following 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  configured  within  folders  are
              Swallowed applications and more folders.


       FvwmWharf  supports  the  OffiX  Drag  and  Drop standard.  In order to have Drag and Drop
       enabled on a particular button, 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.


       Beat Christen (
       Frank Fejes (
       Alfredo Kengi Kojima (
       Dan Weeks (
       Bo Yang (