FvwmTheme man page on Mandriva

Man page or keyword search:  
man Server   17060 pages
apropos Keyword Search (all sections)
Output format
Mandriva logo
[printable version]

FvwmTheme(1)			 FVWM Modules			  FvwmTheme(1)

NAME
       FvwmTheme  - an FVWM module for managing the appearance of FVWM and its
       modules

SYNOPSIS
       ModuleSynchronous Timeout 5 FvwmTheme

       FvwmTheme can only be invoked by fvwm.  Command line invocation of  the
       FvwmTheme module will not work.

DESCRIPTION
       FvwmTheme  creates  appearance resources that may be shared by FVWM and
       other modules.  It reads an initial configuration and  also  reacts  to
       configuration  commands	and  messages  sent  from  FVWM	 so  that  the
       resources can be dynamically changed.

INVOCATION
       Starting with 2.5.1, FvwmTheme is obsolete, please read fvwm  man  page
       about  the built-in colorsets solution.	However, all options are still
       the same, so this man page defines the exact Colorset syntax.

       FvwmTheme must be spawned as a module by fvwm.

       It is highly suggested that FvwmTheme is invoked before any other  mod‐
       ules  that use the colorsets provided by FvwmTheme.  Thus FvwmTheme has
       to be invoked with the 'ModuleSynchronous'  command  by	inserting  the
       line 'ModuleSynchronous Timeout 5 FvwmTheme' in the .fvwm2rc file right
       after the ImagePath has been  defined.	Invoking  FvwmTheme  from  the
       InitFunction,  StartFunction  or	 RestartFunction  or  later  can cause
       excessive redrawing of already running modules.	It is highly suggested
       that  the configuration lines for FvwmTheme appear in the configuration
       file before FvwmTheme is started.  You can find a  proper  sample  fvwm
       setup  at  the  end of this document.  It is pointless to run more than
       one FvwmTheme so there is no provision for using an alias name.

CONFIGURATION OPTIONS
       FvwmTheme supports some configuration options.

       *FvwmTheme: Colorset n options
	      Creates or modifies colorset n. Each colorset has	 four  colors,
	      an  optional pixmap and an optional shape mask.  The four colors
	      are used by modules as the foreground, background, highlight and
	      shadow  colors.	When  a	 colorset  is created it defaults to a
	      foreground of black and background of gray.  The background  and
	      foreground are marked as "average" and "contrast" (see later) so
	      that  just  specifying  a	 pixmap	 or  gradient  gives  sensible
	      results.

	      Warning: The highest colorset number used determines memory con‐
	      sumption.	 Thus if you define 'Colorset 100000', the memory  for
	      100001  colorsets	 is used.  Keep your colorset numbers as small
	      as possible.

	      options is a comma separated list containing some	 of  the  key‐
	      words:  fg,  Fore, Foreground, bg, Back, Background, hi, Hilite,
	      Hilight, sh, Shade, Shadow, fgsh, Pixmap,	 TiledPixmap,  Aspect‐
	      Pixmap, Transparent, RootTransparent, Shape, TiledShape, Aspect‐
	      Shape, NoShape, ?Gradient, Tint, fgTint, bgTint, Alpha, fgAlpha,
	      Dither, NoDither, IconTint, IconAlpha, NoShape and Plain.

	      fg, Fore and Foreground take a color name as an argument and set
	      the foreground color.  The special name Contrast may be used  to
	      select  a	 color	that contrasts well with the background color.
	      To reset the foreground color to the default value you can  sim‐
	      ply omit the color name.

	      bg, Back and Background take a color name as an argument and set
	      the background color.  It also sets  the	highlight  and	shadow
	      colors  to  values  that give a 3d effect unless these have been
	      explicitly set with the options below.  The special name Average
	      may  be  used to select a color that is the average color of the
	      pixmap.  If the pixmap is tinted with the Tint option, the  tint
	      is not taken in account in the computation of the average color.
	      You should use the bgTint	 option	 to  get  the  "real"  average
	      color.   The  background	color is reset to the default value if
	      the color name is omitted.

	      hi, Hilite and Hilight take a color name as an argument and  set
	      the  highlight  color.  If the highlight color is not explicitly
	      set, the default is to calculate it from the  background	color.
	      To  switch  back	to  the default behavior the color name can be
	      omitted.

	      sh, Shade and Shadow take a color name as an  argument  and  set
	      the  shadow  color.   If the shadow color is not explicitly set,
	      the default is to calculate it from the  background  color.   To
	      switch  back to the default behavior the color name can be omit‐
	      ted.

	      fgsh takes a color name as an argument and sets the  color  used
	      by  the  shadowing font effect. See the FONT SHADOW EFFECTS sec‐
	      tion of the fvwm man page. By default  this  color  is  computed
	      from  the	 foreground  and background colors.  To switch back to
	      the default the color name can be omitted.

	      Pixmap, TiledPixmap and AspectPixmap take	 a  file  name	as  an
	      argument,	 search	 the  ImagePath	 and  use it as the background
	      pixmap.  Any transparent parts are filled	 with  the  background
	      color.  Not specifying a file name removes any existing one from
	      the colorset.  TiledPixmap produces repeated copies of the image
	      with  no scaling, Pixmap causes the image to be stretched to fit
	      whatever object the colorset  is	applied	 to  and  AspectPixmap
	      stretches to fit but retains the image aspect ratio.

	      Transparent  tries  to  create  a transparent background pixmap.
	      The pixmap may be used as a window background  to	 achieve  root
	      transparency.   For  this	 you should use the ParentalRelativity
	      fvwm style.  The root background change may be detected or  not,
	      this  depends  on the program used to set the background. If you
	      use fvwm-root, xsetbg (xli), FvwmBacker with a solid or  a  col‐
	      orset  colors  or	 a recent version of Esetroot (>= 9.2) a back‐
	      ground change should be detected. If background changes are  not
	      detected	(e.g., if you use xv or xsetroot) you can force detec‐
	      tion by using the -d option of fvwm-root:
	      xv -root -quit mybg.png; fvwm-root -d
	      Due to the way X implements transparency no  guarantees  can  be
	      made  that  the  desired effect can be achieved. The application
	      may even crash.	If  you	 experience  any  problems  with  this
	      option, do not use it.

	      Using  outline  move  and resize (see the OpaqueMoveSize command
	      and the ResizeOpaque style)  as  well  as	 setting  the  Window‐
	      ShadeShrinks  style  may	help.  The  transparency achieved with
	      Transparent depends on whether the colorset is  applied  to  the
	      foreground or the background of a window. In the second case the
	      transparency is relative to the parent window of the  window  on
	      which the colorset is defined. For example:
	      Colorset 12 VGradient 200 grey30 grey60
	      Colorset 17 Transparent
	      *FvwmIconMan: Colorset 12
	      *FvwmIconMan: PlainColorset 17
	      gives  an	 IconMan  with a vertical grey gradient background and
	      the buttons use the background (by transparency).	 To  obtain  a
	      (root) transparent IconMan:
	      Colorset 12 Transparent
	      Colorset 17 Transparent
	      Colorset 18 Transparent
	      Colorset 19 Transparent
	      *FvwmIconMan: Colorset 12
	      *FvwmIconMan: PlainColorset 17
	      *FvwmIconMan: FocusColorset 18
	      *FvwmIconMan: IconColorset  19
	      The  Colorset  IconMan  option  defines the IconMan window back‐
	      ground, but the PlainColorset and the FocusColorset are drawn on
	      the  foreground.	So, the transparency of the IconMan buttons is
	      achieved by drawing nothing.  Now if this IconMan	 is  swallowed
	      in an FvwmButtons as:
	      FvwmButtons:(Colorset 10, Swallow "FvwmIconMan" 'FvwmIconMan')
	      then,  IconMan become a child of FvwmButtons and it is transpar‐
	      ent relative to FvwmButtons. So, in this case IconMan uses  Col‐
	      orset  10	 as  background. If you want root transparency use the
	      RootTransparent  option.	FvwmButtons,  FvwmIconMan,  FvwmIdent,
	      FvwmScroll  and  FvwmTaskBar are relatively simple. There is one
	      main colorset option which defines the background of the	window
	      and  the	other  colorsets (if any) are drawn on the foreground.
	      The case of FvwmWinList and FvwmProxy are simpler. With FvwmWin‐
	      List  all	 the  colorsets	 are  drawn on the foreground and with
	      FvwmProxy the two colorsets refer	 to  the  window  backgrounds.
	      FvwmPager	 is more complicated as almost everything in the pager
	      are windows with some parental relations (the mini  windows  are
	      the  child and the desktops are the parents and all this is com‐
	      plicated by the hilighted page). So, the colorsets apply to  the
	      background of these windows. You should experiment. For FvwmForm
	      and FvwmScript the situation is similar.	There is a main window
	      (a  child of the root window) which corresponds to the main col‐
	      orset and most of the widgets are windows which are children  of
	      the  main	 window.   Tint	 may  work or not with the Transparent
	      option. When the colorset is drawn on the foreground Tint should
	      work.  In	 the  other  cases,  tinting works in some exceptional
	      cases (and may be very slow). Tinting may work  with  fvwm  menu
	      (without	animation). In the other case tinting may work if your
	      X server has backing store enabled (try xdpyinfo to see if  this
	      the  case).   But, there is a chance that the backing store sup‐
	      port of your X server does not work well with the terrible  hack
	      used  to	Tint the ParentRelative Pixmap. So, to get tinted root
	      transparency it is more safe to use the RootTransparent option.

	      RootTransparent [ buffer ]  creates  a  root  transparent	 back‐
	      ground.  To make this option work, you must use an Esetroot com‐
	      patible program, fvwm-root with the  --retain-pixmap  option  or
	      FvwmBacker  with	the RetainPixmap option (and colorset or solid
	      backgrounds).  The buffer keyword is useful only when  the  Tint
	      option is used too. This speeds up creation of windows which use
	      the colorset (useful for fvwm  menus)  at	 the  cost  of	memory
	      usage.   It  also	 speeds up opaque move and resize which can be
	      unacceptably slow without buffer.	 However, this option may  add
	      a	 lot  of memory to your X server (depending on the size of the
	      image used to set the background).  In  summary,	using  outline
	      move  and	 resize for modules which use such a colorset may be a
	      good idea.

	      Shape, TiledShape and AspectShape take a file name as  an	 argu‐
	      ment,  search  the  ImagePath  and  use  it as the shape bitmap.
	      TiledShape produces repeated copies of the bitmap with no	 scal‐
	      ing,  Shape  causes  the	bitmap to be stretched to fit whatever
	      object the colorset is applied to and AspectShape	 stretches  to
	      fit  but	retains	 the  bitmap  aspect  ratio.  If the file is a
	      pixmap in xpm format, the shape mask of the pixmap is used.

	      Warning: Due to the way X11 implements shapes and the  implemen‐
	      tation  of the FvwmTheme module you cannot take back making win‐
	      dows shaped.  You may have to restart fvwm or the shaped	appli‐
	      cation.

	      ?Gradient	 ... creates a pixmap and stretches it to fit the win‐
	      dow.  ?Gradient may be one of HGradient,	VGradient,  DGradient,
	      BGradient,  SGradient,  CGradient,  RGradient or YGradient.  The
	      gradient types are as follows:  H is horizontal; V is  vertical;
	      D	 is  diagonal  from top left to bottom right; B is a backwards
	      diagonal from bottom left to top right; S is concentric squares;
	      C	 is  concentric	 circles; R is a radar like pattern and Y is a
	      Yin Yang style (but without the dots,  we	 are  not  that	 mad).
	      Please refer to the COLOR GRADIENTS section in the fvwm man page
	      for the syntax of gradients.

	      Tint takes 2 arguments, a color and a percentage between	0  and
	      100.   It causes the image defined using ?Pixmap or ?Gradient to
	      be tinted with the specified color using the percentage.	If the
	      image  is	 transparent Tint tints only the image part.  Unfortu‐
	      nately, a colorset background specified  using  the  Transparent
	      option  can give strange results. See the Transparent option for
	      details.	With no arguments this option removes the tint.

	      fgTint takes 2 arguments, a color and a percentage between 0 and
	      100.  It causes the color defined using fg to be tinted with the
	      specified color using the percentage.  With  no  arguments  this
	      option removes the tint.

	      bgTint takes 2 arguments, a color and a percentage between 0 and
	      100.  It causes the color defined using bg to be tinted with the
	      specified	 color	using the percentage.  If the sh and hi colors
	      are not specified, they are recomputed from the tinted bg color.
	      With no arguments this option removes the tint.

	      Alpha  takes  a percentage between 0 and 100 as an argument.  It
	      causes fvwm to merge the image defined using ?Pixmap or  ?Gradi‐
	      ent with the bg color using the percentage. If the percentage is
	      0 the image is hidden and if it is 100 the image is displayed as
	      usual  (no  merge).  The default is 100 and it is restored if no
	      argument is given.

	      fgAlpha takes a percentage between 0 and 100 as an argument.  It
	      causes  fvwm to merge the text and the colorset background using
	      the percentage. If the percentage is 0 the text is hidden and if
	      it  is  100  the	text  is  displayed as usual (no merge).  This
	      option has an effect only with fonts loaded by Xft, see the FONT
	      NAMES AND FONT LOADING section of fvwm man page.	The default is
	      100 and it is restored if no argument is given.

	      Dither causes fvwm to dither the image defined using ?Pixmap  or
	      ?Gradient.   This	 is  useful only with displays with depth less
	      than or equal to 16 (i.e., on displays which  can	 only  display
	      less  than 65537 colors at once).	 The dithering effect lets you
	      simulate having more colors available that  you  actually	 have.
	      NoDither causes fvwm to do not dither the images.	 Dither is the
	      default if the depth is less than or equal to 8 (a  screen  with
	      256  colors  or less).  In depth 15 (32768 colors) and 16 (65536
	      colors), the default is NoDither, however	 this  effect  can  be
	      useful  with  images  which  contain  a lot of close colors. For
	      example a fine gradient will look more smooth.

	      IconTint takes 2 arguments, a color and a percentage  between  0
	      and  100.	  It causes fvwm or a module to tint the "icons" which
	      are rendered into the colorset  background  with	the  specified
	      color  using a percentage.  Here "icons" means, fvwm Icons, fvwm
	      menu icons, MiniIcons which represent  applications  in  various
	      modules, images loaded by modules (e.g., images specified by the
	      Icon FvwmButtons button option) ...etc.  With no arguments  this
	      option removes the icon tint.

	      IconAlpha	 takes	a percentage between 0 and 100 as an argument.
	      It causes fvwm to merge the "icons" which are rendered into  the
	      colorset	background  using this percentage.  The default is 100
	      and it is restored if no argument is given.

	      Note: It is equivalent to use "Tint a_color rate" and "Alpha  a"
	      if  a  =	100 and the bg color is a_color. This equivalence does
	      not hold for IconAlpha and IconTint as the background can be  an
	      image  or a gradient (and not a uniform color background).  How‐
	      ever, in some cases you can achieve (almost) the same effect  by
	      using IconTint in the place of IconAlpha. This is preferable as,
	      in general, IconAlpha generates more redrawing than IconTint.

	      NoShape removes the shape mask from  the	colorset  while	 Plain
	      removes the background pixmap or gradient.

COMMANDS
       The  following  fvwm  command  may be executed at any time to alter the
       colorsets.  It may be bound to a menu item or typed into a module  such
       as FvwmConsole.

       SendToModule FvwmTheme Colorset options
	      The syntax is the same as the configuration option.

EXAMPLES
       *FvwmTheme: Colorset 3 fg wheat, bg navy

       If necessary this creates colorsets 0, 1, 2 and 3 and then changes col‐
       orset 3 to have a foreground of wheat, a background of navy.

       *FvwmTheme: Colorset 3 bg "navy blue"

       changes the background color of colorset 3 to navy blue. The foreground
       and pixmap are unchanged.

       *FvwmTheme: Colorset 3 AspectPixmap large_murky_dungeon.xpm

       Causes depression.

       *FvwmTheme: Colorset 3 bg Average

       Sets the background color and the relief colors to match the background
       pixmap. This is the default setting but it must be used if a background
       color was specified and is now not required.

       *FvwmTheme: Colorset 3 YGradient 200 3 \
	 blue 1000 navy 1 blue 1000 navy

       Adds a Yin Yang gradient background pixmap to colorset 3.  If the back‐
       ground is set to average it is recomputed along with the foreground  if
       that is set to contrast.

	#!/bin/sh
	FvwmCommand "SendToModule FvwmTheme Colorset 7 fg navy, bg gray"
	while true
	do
	  FvwmCommand "SendToModule FvwmTheme Colorset 7 fg gray"
	  sleep 1
	  FvwmCommand "SendToModule FvwmTheme Colorset 7 fg navy"
	  sleep 1
	done

       Makes colorset 7 blink.

       The  color  names used in colorsets can be substituted in any fvwm com‐
       mand.  Please refer to the COMMAND EXPANSION section in	the  fvwm  man
       page and the example below for a description.

SAMPLE FVWM CONFIGURATION
       Below  you can find a fvwm configuration file that demonstrates the use
       of the FvwmTheme module.	 The order in which FvwmTheme  and  the	 other
       modules are configured and started is important.

	# where your images are
	ImagePath <put your image path here>

	#
	# FvwmTheme
	#
	# The FvwmTheme setup must be first in the config file,
	# right after the paths are set.
	#
	# Instead of the *FvwmTheme: Colorset... lines below you
	# could read in a file with these commands.  So to change
	# your color scheme you can simply copy a different file
	# over your palette file and restart fvwm:
	#
	# Read /home/my_user_name/.fvwm/.fvwm_palette
	#

	# 0 = Default colors
	# 1 = Inactive windows
	# 2 = Active windows
	# 3 = Inactive menu entry and menu background
	# 4 = Active menu entry
	# 5 = greyed out menu entry (only bg used)
	# 6 = module foreground and background
	# 7 = hilight colors
	*FvwmTheme: Colorset 0 fg black, bg rgb:b4/aa/94
	*FvwmTheme: Colorset 1 fg black, bg rgb:a1/b2/c8
	*FvwmTheme: Colorset 2 fg black, bg rgb:da/9a/68
	*FvwmTheme: Colorset 3 fg black, bg rgb:b4/aa/94, \
	  VGradient 100 dtcolor5 rgb:b4/aa/94
	*FvwmTheme: Colorset 4 fg black, bg rgb:b4/aa/94
	*FvwmTheme: Colorset 5 fg rgb:d2/bf/a8, \
	  bg rgb:b4/aa/94
	*FvwmTheme: Colorset 6 fg black, bg rgb:b4/aa/94, \
	  VGradient 100 dtcolor5 rgb:b4/aa/94
	*FvwmTheme: Colorset 7 fg black, bg rgb:94/ab/bf

	# run FvwmTheme before anything else is done
	ModuleSynchronous Timeout 5 FvwmTheme

	#
	# general setup
	#
	Style * Colorset 1
	Style * HilightColorset 2
	MenuStyle * MenuColorset 3
	MenuStyle * ActiveColorset 4
	MenuStyle * GreyedColorset 5

	#
	# Applications
	#
	AddToFunc InitFunction
	+ I Exec exec xterm -fg $[fg.cs0] -bg $[bg.cs0]

	#
	# module setup
	#

	# ... more FvwmPager config lines ...
	*FvwmPager: Colorset * 6
	*FvwmPager: BalloonColorset * 6
	*FvwmPager: HilightColorset * 7
	*FvwmPager: WindowColorsets 1 2

	# ... more FvwmIconMan config lines ...
	*FvwmIconMan: Colorset 6
	*FvwmIconMan: FocusColorset 2
	*FvwmIconMan: FocusAndSelectColorset 2
	*FvwmIconMan: PlainColorset 6
	*FvwmIconMan: SelectColorset 6
	*FvwmIconMan: TitleColorset 6

	# ... more FvwmButtons config lines ...
	*FvwmButtons: Colorset 6
	# sample button passing color to xterm
	*FvwmButtons: (Title xterm, \
	  Action "Exec exec xterm -fg $[fg.cs6] -bg[bg.cs6]")

	# ... more FvwmWharf config lines ...
	*FvwmWharf: Colorset 6

	# ... more FvwmIdent config lines ...
	*FvwmIdent: Colorset 6

	# ... more FvwmWinList config lines ...
	*FvwmWinList: Colorset	    1
	*FvwmWinList: FocusColorset 2
	*FvwmWinList: IconColorset  1

	# ... more FvwmTaskBar config lines ...
	*FvwmTaskBar: Colorset	   6
	*FvwmTaskBar: IconColorset 6
	*FvwmTaskBar: TipsColorset 0

       If  you	need to have more colors and don't want to reinvent the wheel,
       you may use the convention used in fvwm-themes, it defines the  meaning
       of the first 40 colorsets for nearly all purposes:

	http://fvwm-themes.sourceforge.net/doc/colorsets

BUGS
       Initialization  of  fvwm,  FvwmTheme  and  the other modules is tricky.
       Please pay close attention to the text in the INVOCATION section.   The
       example above demonstrates the proper way to get a FvwmTheme setup run‐
       ning.

AUTHOR
       Prefers to remain anonymous.  With help from Brad Giaccio  and  Dominik
       Vogt.

COPYRIGHT
       Copyright  (C)  1999  Joey Shutup.  No guarantees or warranties or any‐
       thing 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.

3rd Berkeley Distribution (not released yet) (2.5.20)		  FvwmTheme(1)
[top]

List of man pages available for Mandriva

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net