FvwmTaskBar(2.6)

NAME
FvwmTaskBar - the FVWM taskbar module - with plugins

SYNOPSIS
FvwmTaskBar is spawned by FVWM, so no command line invocation will work.

DESCRIPTION
The FvwmTaskBar module provides a taskbar made up of buttons arranged by rows, each corresponding to a window that FVWM is managing. Clicking on first button gives focus to the corresponding toplevel window; clicking on the middle button will hide a toplevel window; third mouse button is reserved for a future extension (context menu). Like the other modules, FvwmTaskBar only works when fvwm is used as the window manager. When started, the taskbar shows up as a single row of buttons filling the full width of the screen, but during the work can be resized to accomodate up to 8 rows. In adition, if the AutoStick option is used, the taskbar will autoposition itself at the top or bottom of the screen, and can be dragged from one position to another with a normal move operation. The first button of the taskbar, labelled "Start" sends a "Popup StartMenu" command to the FVWM, which can be used to pop-up a general-purpose menu when the button is pressed. The FvwmTaskBar also displays at the right side a window showing the current time and the built-in incoming mail indicator.

COPYRIGHTS
The FvwmTaskBar module is derivated from Mike Finger's FvwmWinList. Copyright 1994, Mike Finger. The author makes no guarantees or warranties of any kind about the use of this module. Use this modules at your own risk. You may freely use this module or any portion of it for any purpose as long as the copyright is kept intact.

INITIALIZATION
During initialization, FvwmTaskBar will scan the same configuration file that FVWM used during startup to find the options that pertain to it. These options are discussed in a later section.

INVOCATION
FvwmTaskBar can be invoked by fvwm during initialization by inserting the line 'Module FvwmTaskBar' in the .fvwmrc file. FvwmTaskBar must reside in a directory that is listed in the ModulePath option of FVWM for it to be executed by FVWM.

CONFIGURATION OPTIONS
The following options can be placed in the .fvwm95rc file

*FvwmTaskBarGeometry {+-}<X>x{+-}<Y>
    Specifies the location and gravity of the FvwmTaskBar window. At the current version, size is not supported and the taskbar will resize itself to fill the full witdh of the screen. If the AutoStick option is also specified, the module will automatically "stick" to the top or the bottom of the screen, whichever is closest to the geometry specification.

*FvwmTaskBarFont font
    Specifies the default font to be used for labeling the buttons, when they are not depressed. If not specified, fixed font is assumed.

*FvwmTaskBarSelFont font
    Specifies the font to be used for the depressed buttons. Note that the Start button will use always this font even if is not pressed. If this option is not specified, the default font is used instead.

*FvwmTaskBarStatusFont font
    Specifies the font to be used for the clock and tip windows. If this option is not specified, fixed font is used.

*FvwmTaskBarFore color
    Specifies the color to use for the button names.

*FvwmTaskBarBack color
    Specifies the background color for the bar and buttons.

*FvwmTaskBarTipsFore color
    Specifies the color to be used for the text in the tips windows.

*FvwmTaskBarTipsBack color
    Specifies the background color for the tips windows.

*FvwmTaskBarGeometry geometry
    This option specifies the geometry of the window (only the Y coordinate is useful)

*FvwmTaskBarAutoStick
    This option causes the taskbar to "stick" either to the top or bottom of the screen, whichever is closest to the initial window placement. Any further move operation is also subject to that behaviour.

*FvwmTaskBarAutoHide
    This option causes the taskbar to disappear leaving a narrow strip at the bottom of the screen, and reappears only when the mouse is moved to that strip. This option automatically enables AutoStick.

*FvwmTaskBarUseSkipList
    Tells FvwmTaskBar to not show the windows that are listed on a WindowListSkip line in the configuration file.

*FvwmTaskBarDeskOnly
    Tells FvwmTaskBar to show the windows that are only on the current desktop. When desktops are switched, the list of windows changes accordingly.

*FvwmTaskBarUseIconNames
    Tells FvwmTaskBar to use the icon name of the window instead of the full window name. This is useful to keep the width of the buttons small.

*FvwmTaskBarShowTransients
    Tells FvwmTaskBar to show the application transient windows also. By default they are not shown.

*FvwmTaskBarAction action response[,response...]
    Tells FvwmTaskBar to do response when action is done. The currently supported actions are: Click1, Click2, Click3. The currently supported responses are any fvwm built-in commands, including modules and functions. The configuration example below shows the default values.

*FvwmTaskBarButtonWidth width
    Indicates the maximum width that window buttons should reach. (the minimum is hardcoded at 32).

*FvwmTaskBarHighlightFocus
    If the mouse pointer is over the taskbar, the window under the current button is active. This behavior is like the TVTWM Icon Manager or FvwmIconMan. Note: If you use this option combined with FollowMouse focus style, you'll want the taskbar to be ClickToFocus.

*FvwmTaskBarShowTips
    Enables the tips windows (by default disabled).

*FvwmTaskBarMaxTipLines [num]
    This controls the maximum number of lines allowed in a multi-line tip window. The first [num] are displayed, and if more than [num] lines are in the tip text, the last line will read "(more...)" to indicate it. The default for this is 30

*FvwmTaskBarUpdateInterval seconds
    Specifies how often the clock display should be refreshed, so that times of the form HH:MM:SS can be used. By default 60 seconds.

The following options deal with the Start button at the left of the taskbar:

*FvwmTaskBarStartName string
    This option specifies the string displayed in the Start button. ('Start' by default).

*FvwmTaskBarStartMenu string
    This option specifies the popup to invoke when the start button is pressed. ('StartMenu' by default). The module send a 'Popup StartMenu' command to the fvwm window manager.

*FvwmTaskBarStartIcon icon-name
    This option specifies the name of the icon to display at the left of the Start button.

The following options deal with the goodies and modules of the taskbar:

*FvwmTaskBarGoodyLoadablePlugins directory
    Specifies a directory to search for plugins. After each occurence of this command FvwmTaskBar scans the directory for files with ".so" at the end and attempts to load them. The default is "/usr/local/lib/X11/fvwm95"

*FvwmTaskBarGoodyLoadableQuiet
    Tells FvwmTaskBar to skip information about loaded modules. This information is extremely useful in determining if FvwmTaskBar loads them at all. However once you got a stable configuration you may want to omit it.

*FvwmTaskBarGoodyLoadableSymbol Symbol
    Create a new goody. Symbol is the name of struct GoodyLoadable in one of the modules. Note that you can use the same module more than once and you don't have to know which module has this symbol.

*FvwmTaskBarGoodyLoadableId id
    "Id" is an arbitrary character string passed to the initialization routine of the module. The idea is that since the module can be used more the once we need a mean to distinguish between strings in .fvwmrc corresponding to different goodies. It's recommended not to use dots,spaces or empty strings..

*FvwmTaskBarGoodyModuleIcon<id> mini-icon name
    Specifies which mini-icon should be inserted in the taskbar for goody <id>. Default path is "IconPath" .

*FvwmTaskBarGoodyModuleTip.<id> tip
    Sets the tip for goody <Id>

*FvwmTaskBarGoodyModuleCommand<id> command
    Sets the command to be executed when double-clicking on goody <id>'s icon.

   Date Module: ShowDateModule

*FvwmTaskBarShowDateModuleClockFormat<id> format-string
    This option specifies the time format for the digital clock. It is a stfrtime(3) compatible format string (see the manual page of the 'date' command) By default it is "%R".

*FvwmTaskBarShowDateModuleHourlyCommand<id> command
    Specifies a command to be executed every hour.

   Mail Module: MailCheckModule

*FvwmTaskBarMailCheckModuleNewMailCommand<id> command
    Specifies which command is to be executed when new mail arrives.

*FvwmTaskBarMailCheckModuleAutoMailTip<id> [type]
    This option controls the auto-display of new mail in a multi-line tip window. Three possible values are allowed for the optional type argument: Mail-FileTouched, MailFileBigger, or MailFileAnyChange. MailFileTouched means the mail spool file has been modified since the last access, MailFileBigger is when the mail spool file gets larger in size, and Mail-FileAnyChang is when the mail spool file gets larger or smaller. These conditions control when the AutoMailTip window is displayed. The default is Mail-FileAnyChange.

*FvwmTaskBarMailCheckModuleMailTipFormat.MAIL [l] [if] [wf] [is] [ws]
    This options allows specification of how to display the mail information in the tip. [l] can be either 1 for a single line per mail message, or 2 for a double line format where the From: info appears on one line, and the Subject: appears on the next line. [if] is the number of spaces to indent the From: info, and [wf] is the max width. [is] and [ws] are the indent and width of the Subject: info. The default is 1 0 20 2 30.

*FvwmTaskBarMailCheckModuleMailTipNoSmartFrom
    If set, this flag shuts off the automatic name extraction for the From: field. The format seen in email is largely formatted by convention, and this allows this process to be shut off when it does not work. The smart name extraction algorithm works as follows. Step 1: all substrings delimited by <> and [] are removed, since they usually contain an email address. If nothing is left, this step is reversed. Step 2: if any string delimited by "" or () is found, it is used as the smart name. Otherwise the result from Step 1 is used at the result. For most email I have, this results in nicely formatted names.

*FvwmTaskBarMailCheckModuleMailTipUnblankScreen<id>
    If set, the screen will be un-blanked when the mail tip is drawn.

*FvwmTaskBarShowDateModuleHourlyCommand<id> command
    Executes the command every hour.

   Modem Module: CheckLockModule To be done ....

SAMPLE CONFIGURATION
The following are excepts from a .fvwm95rc file which describe FvwmTaskBar initialization commands:

#
# Start the taskbar on fvwm startup and restart
#
AddToFunc "InitFunction" "I" Module FvwmTaskBar
AddToFunc "RestartFunction" "I" Module FvwmTaskBar
#
# Set the style for the taskbar window, keep always on top of another
# windows
#
Style "FvwmTaskBar" NoTitle,BorderWidth 4,HandleWidth 4,Sticky,\
                    StaysOnTop,WindowListSkip,CirculateSkip
*FvwmTaskBarGeometry +0-0
*FvwmTaskBarFore Black
*FvwmTaskBarBack #c0c0c0
*FvwmTaskBarFont -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*
*FvwmTaskBarSelFont -adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*
*FvwmTaskBarStatusFont fixed
*FvwmTaskBarTipsFore black
*FvwmTaskBarTipsBack bisque
*FvwmTaskBarAction Click1 Iconify -1,Raise,Focus
*FvwmTaskBarAction Click2 Iconify
*FvwmTaskBarAction Click3 PopUp Window-Ops2
*FvwmTaskBarUseSkipList
*FvwmTaskBarAutoStick
*FvwmTaskBarStartName Start
*FvwmTaskBarStartMenu StartMenu
*FvwmTaskBarStartIcon mini-penguin.xpm
*FvwmTaskBarShowTips
*FvwmTaskBarShowTransients
*FvwmTaskBarHighlightFocus
*FvwmTaskBarAutoHide
*FvwmTaskBarDeskOnly
*FvwmTaskBarMaxTipLines 5
# Now the goodies....
*FvwmTaskBarGoodyLoadablePlugins /usr/local/lib/X11/fvwm95/
*FvwmTaskBarGoodyLoadableQuiet
# Modem
*FvwmTaskBarGoodyLoadableSymbol CheckLockModuleSymbol
*FvwmTaskBarGoodyLoadableId .Modem
*FvwmTaskBarCheckLockModuleIcon.Modem mini-connect.xpm
*FvwmTaskBarCheckLockModuleTip.Modem Modem is in use
*FvwmTaskBarCheckLockModuleCommand.Modem Popup Network
*FvwmTaskBarCheckLockModuleLockFile.Modem /var/lock/LCK..modem
# Sound mixer
*FvwmTaskBarGoodyLoadableSymbol GoodyModuleSymbol
*FvwmTaskBarGoodyLoadableId .SPEAKER
*FvwmTaskBarGoodyModuleIcon.SPEAKER mini-speaker.xpm
*FvwmTaskBarGoodyModuleTip.SPEAKER Audio Control Panel
*FvwmTaskBarGoodyModuleCommand.SPEAKER Exec OXmixer
# Date
*FvwmTaskBarGoodyLoadableSymbol ShowDateModuleSymbol
*FvwmTaskBarGoodyLoadableId .DATE
*FvwmTaskBarShowDateModuleTip.DATE Date
*FvwmTaskBarShowDateModuleCommand.DATE Exec xmessage `date`
*FvwmTaskBarShowDateModuleClockFormat.DATE %H:%M
#*FvwmTaskBarShowDateModuleHourlyCommand.DATE exec xmessage hourly command
# Mail
*FvwmTaskBarGoodyLoadableSymbol MailCheckModuleSymbol
*FvwmTaskBarGoodyLoadableId .MAIL
*FvwmTaskBarMailCheckModuleMailIcon.MAIL mini-mail.xpm
*FvwmTaskBarMailCheckModuleCommand.MAIL Exec xterm -T Mail -e mail
*FvwmTaskBarMailCheckModuleNewMailIcon.MAIL mini-newmail.xpm
*FvwmTaskBarMailCheckModuleNewMailTip.MAIL You have new mail
#*FvwmTaskBarMailCheckModuleNewMailCommand.MAIL beep
*FvwmTaskBarMailCheckModuleUnreadMailIcon.MAIL mini-unreadmail.xpm
*FvwmTaskBarMailCheckModuleMailFile.MAIL /var/spool/mail/$USER
*FvwmTaskBarMailCheckModuleAutoMailTip.MAIL
#*FvwmTaskBarMailCheckModuleMailTipUnblankScreen.MAIL
*FvwmTaskBarMailCheckModuleMailTipFormat.MAIL 1 0 10 2 10

BUGS
At present the FvwmTaskBar works only with fvwm95.

AUTHOR
David Barth (barth@di.epfl.ch) Modules and plugins by Volodya Dergachev and Michael D. Beynon (beynon@acm.org)