FvwmIconMan - an Fvwm Icon Manager


SYNOPSIS

       FvwmIconMan is spawned by fvwm, so no command line invoca-
       tion will work.



DESCRIPTION

       FvwmIconMan is an icon manager modeled after the TWM  icon
       manager.   The  user may have multiple icon managers, each
       of which are armed with a list of window  types  which  it
       manages.  For example, the user may have one manager which
       lists only emacs windows, and another which  lists  every-
       thing else. You may also specify what resolution each icon
       manager uses, for example, one  icon  manager  may  manage
       windows on all desks, and another may manage only those on
       the current desk, or page.

       Unlike the TWM icon manager,  FvwmIconMan  is  limited  in
       only  having  the icons listed vertically. Also unlike the
       TWM icon manager, it sports a three dimensional look (when
       the display depth is sufficient).

       You  may  bind  fvwm functions to mouse buttondown events,
       and to the event where the mouse enters one  of  the  but-
       tons.  For  example, you could bind the first mouse button
       to the Iconify function, and the second  mouse  button  to
       the Identify function.

       FvwmIconMan  can  be set to display which window currently
       has the keyboard focus, and by binding  the  select  event
       (see  below)  to  the fvwm Focus function, you can emulate
       the TWM icon manager's behavior. Unfortunately, the  Focus
       function  warps  the  cursor  to  the  target window. This
       FvwmIconMan distribution includes a patch to  fvwm  2.0.41
       which  modifes  the  behavior of Focus so that it takes an
       argmument to control whether or not it warps the cursor.



INITIALIZATION

       During initialization,  FvwmIconMan  searches  though  the
       fvwm   configuration   file  for  the  options  which  are
       described below. It is highly recommended  that  you  make
       FvwmIconMan  be  a  sticky window. And if you want to make
       use of the followfocus option, and/or binding an action to
       Focus, then you should make FvwmIconMan clicktofocus.



INVOCATION

       FvwmIconMan  can  be invoked by inserting the line 'Module
       FvwmIconMan' in the .fvwmrc file. If FvwmIconMan is to  be
       spawned  during  fvwm's  initialization,  then  this  line
       or keystroke to invoke it  later.  FvwmIconMan  should  be
       placed  in the ModulePath (defined in the .fvwmrc file) in
       order for fvwm to find it.



CONFIGURATION OPTIONS

       With the exception of the nummanagers option, all  of  the
       options  may  be  defined  on a per-manager basis. So, for
       example, the user may have his emacs manager  with  a  red
       foreground,  and his xterm manager with a blue one. A con-
       figuration line may therefore have one of two forms:


       *FvwmIconMan*optionname optionvalue
              To specify that  the  optionname  takes  the  value
              optionvalue for all managers.

       *FvwmIconMan*managerid*optionname optionvalue
              To  specify  that  the  option optionname takes the
              value optionvalue for manager managerid.

              The following options may be specified:


       *FvwmIconMan*nummanagers num
              num is a positive integer specifying the total num-
              ber of icon managers.  Since FvwmIconMan would like
              to know how many managers there are before handling
              any  manager  specific  options,  this  should come
              first. Default is 1.


       *FvwmIconMan*[id*]resolution resolution
              Specifies when the manager will  display  an  entry
              for  a  certain  window. resolution may take one of
              the following values: global,  desk,  or  page.  If
              global,  then  all  windows of the appropriate type
              (see the show and dontshow options below)  will  be
              shown. If desk, then only those windows on the cur-
              rent desk will be down.  And  if  page,  then  only
              those  windows  on  the current page will be shown.
              Default is global.


       *FvwmIconMan*[id*]showtitle boolean
              If true, then print the window title names  in  the
              manager,  if  false,  then  print  the  icon names.
              Default is false.


       *FvwmIconMan*[id*]font font
              Specifies the font to be used for labeling the but-
              Specified the geometry of the manager. If the geom-
              etry is specified with  a  negative  y  coordinate,
              then  the  window manager will grow upwards. Other-
              wise, it will shrink downwards.


       *FvwmIconMan*[id*]foreground foreground
              Specifies the default foreground color.


       *FvwmIconMan*[id*]background background
              Specifies the default background color.


       *FvwmIconMan*[id*]plainbutton style [forecolor backcolor]
              Specifies how normal buttons look. style may be one
              of  flat, up, or down, and describes how the button
              is drawn. The color options are both optional,  and
              if not set, then the default colors are used. If on
              a monochrome  screen,  then  the  style  option  is
              ignored, but must still be set.


       *FvwmIconMan*[id*]selectbutton style [forecolor backcolor]
              Same as the plainbutton option, but  specifies  the
              look of buttons when the mouse is over them.


       *FvwmIconMan*[id*]focusbutton style [forecolor backcolor]
              Same  as  the plainbutton option, but specifies the
              look of buttons whose  windows  have  the  keyboard
              focus.


       *FvwmIconMan*[id*]focusandselectbutton   style  [forecolor
              back- color]
              Same  as  the plainbutton option, but specifies the
              look of buttons which are both selected,  and  have
              the keyboard focus.


       *FvwmIconMan*[id*]action event response[,response...]
              Tells  FvwmIconMan to send the commands in response
              to fvwm when event is done. Event may take  on  one
              of  the  values: select, click1, click2, or click3.
              Default is iconify for all three  buttons  and  nop
              for select.  Select refers to the cursor entering a
              button in the manager.

              The two following options control which windows get
              handled  by  which  managers. A manager can get two
              lists, one of windows to show, and one  of  windows
              list.  If only the dontshow list is given, then the
              manager will show all windows except those  in  the
              list.  If  both lists are given, then a window will
              be shown if it is not in the dontshow list, and  in
              the  show  list.  And  finally,  if neither list is
              given, then the manager will  handle  all  windows.
              Each  list  is  made  up  of  patterns  of the form
              type=pattern, where type is one of class, resource,
              title, or icon, and pattern is a regular expression
              of the same format used in the fvwm style  command.
              Quotes  around the pattern will be taken as part of
              the regular expression. If a window could  be  han-
              dled  by  more  than  one manager, then the manager
              with the lowest id gets it.


       *FvwmIconMan*[id*]show pattern list
              If a window matches one  of  the  patterns  in  the
              list, then it may be handled by this manager.


       *FvwmIconMan*[id*]dontshow pattern list
              If  a  window  matches  one  of the patterns in the
              list, then it may not be handled by this manager.


       *FvwmIconMan*[id*]followfocus boolean
              If boolean is  true,  then  the  button  appearance
              reflects which window currently has focus.  Default
              is false.


       *FvwmIconMan*[id*]sort boolean
              If boolean is true, then the icon manager  is  kept
              sorted. Default is true.



SAMPLE CONFIGURATION

       This  first  example  is  of  a the simplest invocation of
       FvwmIconMan, which only has one manager, and  handles  all
       windows:


       ##############################################################
       # Load any modules which should be started during
       # fvwm initialization
       ModulePath /usr/lib/X11/fvwm:/usr/bin/X11
       Module FvwmIconMan

       # Make FvwmIconMan title-bar-less, sticky, and give it an icon
       Style "Fvwm*"      Icon toolbox.xpm,NoTitle,NoHandles,Sticky
       Style "FvwmIconMan" HandleWidth 5, Handles, BorderWidth 5
       ##############################################################
       #Definitions used by the modules

       *FvwmIconMan*nummanagers 1
       *FvwmIconMan*resolution  global
       *FvwmIconMan*background  slategrey
       *FvwmIconMan*foreground  white
       *FvwmIconMan*font        7x13
       *FvwmIconMan*geometry    194x100-0+73


       This example is my personal configuration. It has two man-
       agers, one for emacs and one for  everything  else,  minus
       things  with  no  icon  title. Only windows on the current
       page are displayed. Notice the argument to  Focus  in  the
       select  action.  This only works if you apply the included
       patch for fvwm. A nonzero argument to focus, or  no  argu-
       ment  results  in  Focus  warping the cursor to the target
       window, and the value of 0 makes Focus not warp  the  cur-
       sor.  Note how the geometry and show options are specified
       per manager, and the others are common to all:


       *FvwmIconMan*numManagers 2
       *FvwmIconMan*Resolution  page
       *FvwmIconMan*background  steelblue
       *FvwmIconMan*foreground  white
       *FvwmIconMan*font        7x13
       *FvwmIconMan*action      click1 Iconify
       *FvwmIconMan*action      click2 Iconify
       *FvwmIconMan*action      click3 Module "FvwmIdent" FvwmIdent
       *FvwmIconMan*action      select Focus 0
       *FvwmIconMan*showtitle   false
       *FvwmIconMan*followfocus true
       *FvwmIconMan*sort        true
       *FvwmIconMan*plainbutton          up white steelblue
       *FvwmIconMan*selectbutton         down white steelblue
       *FvwmIconMan*focusbutton          up white brown
       *FvwmIconMan*focusandselectButton down white brown

       *FvwmIconMan*1*geometry   194x100-204-90
       *FvwmIconMan*1*show       resource=emacs resource=gemacs

       *FvwmIconMan*2*geometry   194x100-0-90
       *FvwmIconMan*2*dontshow   icon=Untitled





UNFINISHED BUSINESS

       There is one bug that I know  of.  A  honest  to  goodness
       solution  to  this would be appreciated. When an icon man-

       When  a  manager  is  in  page resolution, and the page is
       switched, the manager updates the windows after every fvwm
       event  comes  in,  causing  it  to rapidly grow and shrink
       until it finally settles into the new configuration.  This
       doesn't happen when in desk resolution.

       It doesn't handle windows without resource names as grace-
       fully as it should.



AUTHOR

       Brady Montz (bradym@cs.arizona.edu).



THANKS

       Thanks to David Berson (berson@cs.pitt.edu).




































Man(1) output converted with man2html