Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
FvwmForm(1)			 FVWM Modules			   FvwmForm(1)

NAME
       FvwmForm	- input	form module for	Fvwm

SYNOPSIS
       Module FvwmForm [ Alias ]

       FvwmForm	 must  be  spawned by Fvwm.  If	invoked	from the command line,
       FvwmForm	prints its version number and exits.

DESCRIPTION
       FvwmForm	provides a mechanism to	get user input	and  act  accordingly.
       This  is	 achieved  by  means of	a form that the	user can fill out, and
       from which the user can select actions he wants Fvwm to take.   A  form
       consists	 of five types of items: text labels, single-line text inputs,
       mutually-exclusive selections, multiple-choice selections,  and	action
       buttons.	  These	 items	are  arranged  into several lines, with	a very
       flexible	layout.

       A text label only serves	the purpose of explanation.  It	cannot	accept
       any input.

       A  timeout  entry provides a mechanism for timing out the form and per-
       forming a certain action	when the timeout  occurs.   The	 countdown  is
       displayed  similar  to  a  text	label  except that it updates with the
       amount of time left.

       A text input field can be used to edit a	single-line string.   FvwmForm
       accepts	Emacs-style  cursor  movement keys.  See FvwmFormInput for de-
       tails.  Mouse copy is not supported, but	you can	paste.

       A selection consists of several choices.

       The selection itself is a logical entity	that doesn't have any  display
       feature.

       Each  choice  is	 displayed  as a push-button followed by a explanatory
       text label.  When selected, an exclusive	choice shows a circle  in  the
       middle, while a multiple	choice shows a check.

       An  action button, when activated sends one or more commands to Fvwm or
       executes	shell commands.	 The shell commands can	contain	the content of
       the  input fields on the	form and reflect the setting of	choices	on the
       form.

       The action buttons can be activated thru	keyboard or mouse.

INITIALIZATION
       FvwmForm	invoked	without	an alias uses configuration commands  starting
       with "*FvwmForm".

       Normally	 you would invoke FvwmForm with	an alias representing the name
       of a form, its configuration commands and configuration file.  For  ex-
       ample, the command "Module FvwmForm Rlogin" uses	configuration commands
       starting	with "*Rlogin",	and  reads  the	 optional  configuration  file
       "Rlogin".

       All  forms, regardless of alias,	 scan first for	configuration commands
       that start with	"*FvwmFormDefault".   These  commands	normally  come
       from  the builtin form "FvwmForm-Form" which saves commands to the file
       ".FvwmForm".

       The physical reading of the optional input file,	".FvwmForm",  is  done
       only  the  first	time FvwmForm is invoked, or after "FvwmForm-Form" up-
       dates the file.

       When the	file ".FvwmForm" is read,  it is done  by sending the  command
       "Read  .FvwmForm	  Quiet"   to fvwm.  Because of	 the   way the	"read"
       command works, the file can  reside in your personal fvwm  user	direc-
       tory,  or  be  in  the fvwm data	directory.  See	the description	of the
       read command in the fvwm	man page for more information about the	 envi-
       ronment variable	$FVWM_USERDIR.

       Then  FvwmForm  reads the rest of the configuration fvwm	has stored up.
       Fvwm stores configuration on an ongoing basis.  The initial  configura-
       tion  comes  from  the  .fvwm2rc	file.  Other sources, including	"Read"
       commands	can define a form.

       When letting  FvwmForm and fvwm	read files, remember that these	 files
       contain	commands  that can  execute shell commands,  so	 you should be
       careful about setting permissions on these files.

       When FvwmForm is	invoked	with a window  context,	 e.g.  from  a	window
       menu,  all  commands  it	 sends	to Fvwm	will have that window context.
       This would allow	FvwmForm to control the	window it is invoked from.

       After all the configuration commands have been read, FvwmForm  displays
       the form	defined	by the commands.

DEFAULTS
       FvwmForm	 creates  a built-in form named	"FvwmForm-Form"	that creates a
       file called ".FvwmForm".	 This file contains saved default form	colors
       and  fonts.   Other forms use these defaults unless they	are overridden
       within the form.

       The default creating form would normally	 be  invoked  from  a  "module
       menu".	For  example, if you call your module menu "Module-Popup", you
       would add the line:
       AddToMenu "Module-Popup"	"FvwmForm Defaults" FvwmForm FvwmForm-Form
       When you	select "FvwmForm Defaults" from	your module menu,  a  form  is
       displayed  that	shows  the  current  defaults and allows you to	change
       them.  If you activate the "Save	Restart	Me"  button,  the  ".FvwmForm"
       file  is	written	and "FvwmForm-Form" exits and restarts to show the new
       defaults.

       An example of what this file might contain after	a save is:
	 # This	file last created by FvwmForm-Form on Sun Nov 28 11:18:26 EST 1999.
	 *FvwmFormDefault: Font	10x20
	 *FvwmFormDefault: InputFont 8x13bold
	 *FvwmFormDefault: ButtonFont 10x20
	 *FvwmFormDefault: TimeoutFont 10x20
	 *FvwmFormDefault: Fore	white
	 *FvwmFormDefault: Back	cornflowerblue
	 *FvwmFormDefault: Colorset -1
	 *FvwmFormDefault: ItemFore green
	 *FvwmFormDefault: ItemBack gray40
	 *FvwmFormDefault: ItemColorset	-1
	 *FvwmFormDefault: ButtonPointer hand2
	 *FvwmFormDefault: ButtonInPointer star
	 *FvwmFormDefault: InputPointer	gumby
	 *FvwmFormDefault: ButtonPointerFore blue
	 *FvwmFormDefault: ButtonPointerBack gray
	 *FvwmFormDefault: ButtonInPointerFore gray
	 *FvwmFormDefault: ButtonInPointerBack blue
	 *FvwmFormDefault: InputPointerFore
	 *FvwmFormDefault: InputPointerBack
       The commands in this file are just like any other FvwmForm command  ex-
       cept that they start with "*FvwmFormDefault".

       FvwmForm	 only  reads the file ".FvwmForm" the first time it is started
       or after	the file is changed by "FvwmForm-Form".	 It does so by sending
       the  command  "*FvwmFormDefault:	 Read  x". With	"x" set	to "y" or "n".
       "n" makes FvwmForm send a "read .FvwmForm quiet"	command	to fvwm.

VARIABLE SUBSTITUTION
       If you supply variables and values on the command line  used  to	 start
       FvwmForm	(like this):

       Module FvwmForm MyForm ACTION=Browse "TITLE=Browse Form"

       Then  all  FvwmForm  input commands undergo variable substitution.  The
       variables from the command line are exported.  Then every command  gets
       expanded	using the variables from the environment.  For example,	assum-
       ing the above invocation	of "MyForm", commands would  be	 changed  like
       this:

       Before  *MyForm:	Text "$TITLE, Home $HOME, Going	to $ACTION"
       After   *MyForm:	TEXT "Browse Form, Home	/home/me, Going	to Browse"

       Using this facility should make it possible for one form	to be used for
       different sets of input data.

CONFIGURATION
       The following commands can be set in the	.fvwm2rc file or thru  any  of
       the  other  ways	that fvwm can accept commands.	The simplest technique
       is to create a file in the read-only architecture-independent data  di-
       rectory,	  [PREFIX/share/fvwm]	or   your   personal   fvwm  directory
       [$HOME/.fvwm], that matches the form alias.

       In the following	paragraphs the string "FvwmForm" would normally	be the
       form alias.

       FvwmForm	 reads	commands  before the form is ever displayed, and while
       the form	is being displayed.

       The following commands are accepted before the form is displayed:
       Back
       Button
       ButtonFont
       ButtonInPointer
       ButtonInPointerFore
       ButtonInPointerBack
       ButtonPointer
       ButtonPointerFore
       ButtonPointerBack
       Choice
       Command
       Colorset
       Font
       Fore
       GrabServer
       Input
       InputFont
       InputPointer
       ItemBack
       ItemColorset
       ItemFore
       InputPointerFore
       InputPointerBack
       Line
       Message
       PadVText
       Position
       Selection
       Text
       Timeout
       TimeoutFont
       Title
       UseData
       WarpPointer

       The following commands are accepted while the form is displayed:
       Map
       Stop
       UnMap

       The "Map", "UnMap" and "Stop" facility is under development and is cur-
       rently not explained in this document, since it is likely to change.

       The order of the	options	DOES matter.  The first	background text	color,
       "*FvwmFormBack",	encountered before a displayable item sets the default
       background color	for the	entire form.

       Other than that,	colors,	fonts, text, choices and buttons can be	inter-
       mixed in	any order.  The	are no builtin limits on form size, number  of
       items on	a form,	or number of fonts or colors used.

       *FvwmForm: GrabServer
	   This	option makes FvwmForm grab the mouse pointer on	startup.  This
	   feature is useful for things	like logout verification.

       *FvwmForm: WarpPointer
	   This	option makes FvwmForm warp the mouse pointer into  its	window
	   on startup.	It saves the user some mouse-travelling.

       *FvwmForm: Geometry geometry
	   Specifies  the  FvwmForm  window location.  This is similar to what
	   the Position	option does but	is more	flexible.

       *FvwmForm: Position x y
	   Puts	the FvwmForm window at location	(x, y) on the screen.  By con-
	   vention,  a	negative  x (y)	value measures distance	from the right
	   (bottom) of the screen.

	   If this option is omitted, FvwmForm starts at  the  center  of  the
	   screen.

       *FvwmForm: Colorset n
	   Tells the module to use colorset n. See FvwmTheme.

       *FvwmForm: Back color
	   Specifies  the background color of the FvwmForm window and any text
	   in the window.  The first background	color  FvwmForm	 reads	deter-
	   mines  the  overall	screen background color. Switches off the Col-
	   orset option.  See DEFAULTS.

       *FvwmForm: Fore color
	   Specifies  the  foreground  color  for  displaying	text   labels.
	   Switches off	the Colorset option.  See DEFAULTS.

       *FvwmForm: ItemColorset n
	   Tells the module to use colorset n for items. See FvwmTheme.

       *FvwmForm: ItemBack color
	   Specifies  the background color for the text	input windows, and the
	   buttons.  Buttons are displayed as 3D depressable buttons.	Inputs
	   are	displayed as 3D	indented fields.  Medium shade background col-
	   ors work best.  Switches off	 the  ItemColorset  option.   See  DE-
	   FAULTS.

       *FvwmForm: ItemFore color
	   Specifies  the foreground color for the text	input strings and but-
	   ton text. Switches off the ItemColorset option.  See	DEFAULTS.

       *FvwmForm: Font font
	   Specifies the font for displaying plain text.  See DEFAULTS.

       *FvwmForm: ButtonFont font
	   Specifies the font for text in the action buttons.  See DEFAULTS.

       *FvwmForm: InputFont font
	   Specifies the font for text input.  See DEFAULTS.

       *FvwmForm: TimeoutFont font
	   Specifies the font for display  the	timeout	 counter  and  related
	   text.  See DEFAULTS.

       *FvwmForm: Line justification
	   Starts  a  new line.	 A line	can contain any	number of text,	input,
	   buttons and choice items.  A	FvwmForm window	can have any number of
	   lines.  The width of	the window is that of the longest line.

	   Justification  of  items in the line	is specified by	justification,
	   which can be	one of the following:

       left	       Items are justified to the left of the window.

       right	       Items are justified to the right	of the window.

       center	       Items are placed	in the center of the window.

       expand	       If there	is only	one item in the	line, the item is cen-
		       tered in	the window.  If	two or more items are present,
		       they are	spread to fill the whole width of the window.

       *FvwmForm: Message
	   Defines a text area on the form that	contains the last  error  mes-
	   sage	from fvwm.  For	purposes of determining	form size, the message
	   area	is considered to be 80 bytes long.  Its	actual length  is  the
	   same	as the message received.  If the message exceeds 80 bytes, you
	   can see the rest of the message by resizing the form.

	   You should not attempt to put any text, buttons or input fields  on
	   the	same  line  after  a  message field.  Messages greater than 80
	   bytes will overlay the remainder of the line.

       *FvwmForm: PadVText Pixels
	   The number of pixels	used as	vertical padding between  text	items,
	   line	 to line.  The default is 6 which looks	good on	lines contain-
	   ing text intermixed with input boxes, choices or buttons.

	   For straight	text, such as might appear on a	help form, padding  of
	   zero	looks better.

	   (There  are	lots of	other padding values used in form layout which
	   can't currently be changed with commands.)

       *FvwmForm: Text string
	   Displays string as plain text.  Line	breaks	must  be  achieved  by
	   multiple  *FvwmForm:	 Line and *FvwmForm: Text options.  Blanks may
	   be used to provide extra padding between items.

       *FvwmForm: Title	string
	   Displays string as the window's title.  The string must be enclosed
	   in  double  quotes.	 Using this command with anything other	than a
	   string enclosed in quotes creates a blank title.  If	 this  command
	   is not used,	the window title is the	form alias.

       *FvwmForm: Input	name size init_string
	   Specifies  a	 text input item with name name.  A sub	window of size
	   characters in  width	 is  used  for	editing.   If  init_string  is
	   present,  it	 is  the initial string	when FvwmForm starts or	resets
	   itself.  The	default	initial	string is "".

	   You can mouse paste into an input field using button	2.  Buttons  1
	   and 3 move the cursor in an input field.

	   Input  fields  are  always  in  insert mode,	overtyping is not sup-
	   ported.

	   Emacs type keystrokes are supported.

	   Control-a, Home and Begin move to the  front	 of  an	 input	field.
	   Control-e and End move to the end of	an input field.	 Control-b and
	   Left	move left in an	input field.  Control-f	and Right  move	 right
	   in an input field.  Control-p, Up, and Shift-Tab move to a previous
	   input field if any, if the form has one input field,	recall	previ-
	   ous	value.	Control-n, Down, Return, Line-feed and Tab move	to the
	   next	input field if any, if the form	has one	input field, for  con-
	   trol-n  and	Down,  restore	previous input value.  Control-h moves
	   backward in an input	field  erasing	a  character.	Control-d  and
	   Delete  delete  the	next  character	 in an input field.  Control-k
	   erases for the cursor to the	end  of	 an  input  field.   Control-u
	   erases the entire input field.

	   When	a form executes	a command, all the input values	are saved in a
	   ring	of input history 50 items deep.

	   Meta(mod2)-"<" retrieves the	previous  value	 of  an	 input	field.
	   Meta(mod2)-">" retrieves the	next value of an input field.

	   (For	forms with one input field, use	the much easier	arrow keys.)

       *FvwmForm: Selection name type
	   This	 option	 starts	 a selection item with name name.  Its choices
	   are specified in following configuration commands.  The option type
	   is one of the following:

       single	       The selections are mutually exclusive.

       multiple	       This is a multiple-choice selection.

       *FvwmForm: Choice name value on | off string
	   Specifies a choice for a proceeding selection.  The choice item has
	   a name and a	value these are	used in	commands.  See *FvwmForm: Com-
	   mand.  The string is	displayed to the right of the choice button as
	   a label.

	   The choice assumes the specified  initial  state  ("on"  means  se-
	   lected)  when FvwmForm starts or resets.  If	the selections are mu-
	   tually exclusive, FvwmForm does NOT detect inconsistencies  in  the
	   initial  states of the choices, i.e.	two or none of the choices can
	   be selected.	 However, once the user	 selects  a  choice,  FvwmForm
	   assures only	one is selected.

       *FvwmForm: Button type string [key]
	   This	option specifies an action button.  The	button has string as a
	   label, and executes a set of	Fvwm command  when  it	is  activated.
	   The commands	are the	following *FvwmForm: Commands.

	   The	optional  key specifies	a keyboard shortcut that activates the
	   button.  It is in either a control character, specified as ^@,  ^A,
	   ...,	^_, or a function key, specified as F1,	F2, ..., F35.  Control
	   keys	that are used for cursor movement in text input	fields	cannot
	   activate  any buttons, with the exception of	TAB (^I), RETURN (^M),
	   LINEFEED (^J), which	can activate a button when the	cursor	is  in
	   the last text input field.

	   The behavior	of the button is determined by type:

       continue	       FvwmForm	 continues  execution  after  sending the com-
		       mands.

       restart	       After sending the commands,  FvwmForm  resets  all  the
		       values  to  the initial ones, and then continues	execu-
		       tion.

       quit	       FvwmForm	quits after sending the	commands.

       *FvwmForm: Command command
	   This	option specifies an Fvwm command associated with  the  current
	   button.   There  can	be more	than one command attached to a button.
	   Commands that appear	before any *FvwmForm: Button option  are  exe-
	   cuted  at  start-up	time.	This  is  usually a beep that gets the
	   user's attention.

	   Commands starting with an exclamation  mark	(!)  are  executed  by
	   FvwmForm,  all  other commands are sent to Fvwm for execution.  Be-
	   fore	sending	each command to	Fvwm, FvwmForm recognizes variables of
	   the following forms,	and supply values to them.

       $(name)	       If  name	 corresponds to	a text input field, the	result
		       is the user's input string.  The	special	chars  single-
		       quote,  double-quote  and  backslash  are preceded by a
		       backslash.

		       If name corresponds to a	 choice,  the  result  is  the
		       value of	the choice (as specified in *FvwmForm: Choice)
		       if the choice is	selected.  If the choice  is  not  se-
		       lected, the result is a blank string.

		       If  name	corresponds to a selection, the	result will be
		       a list of the selected values of	all its	choices	 sepa-
		       rated by	spaces.

       $(name?string)  If  name	 is a text input field and its value is	not an
		       empty string, the  result  is  string,  with  recursive
		       variable	 substitution  applied.	 If the	input value is
		       empty, the result is empty.

		       If name is a choice and it is selected, the  result  is
		       string,	with  recursive	variable substitution applied.
		       If the choice is	not selected, the result is empty.

       $(name!string)  The same	as the above, except that the converse	condi-
		       tions are taken.

		       When  using the "?" and "!" forms to pass a string, the
		       string is delimited by a	 right	parenthesis.   If  you
		       need  to	 put  a	right parenthesis in a string, precede
		       the right parenthesis with a backslash.

       *FvwmForm: UseData datafile leading
	   Tells FvwmForm to read a data file and  extract  data  from	module
	   commands that match the "leading" argument and an input, choice, or
	   selection variable in a form.

	   This	lets a form display current fvwm  module  configuration	 data.
	   For	an  example  of	 how  this  works, examine the file "FvwmForm-
	   Rlogin" which is installed  in  read-only  architecture-independent
	   data	directory, [PREFIX/share/fvwm] and shown below.

	   For	choices,  the setting of the button is represented as the word
	   "on",  all other values for a setting are treated as	off.

	   For selections, the setting of each choice button is	determined  by
	   matching  the  current  value of the	selection against each choice.
	   Currently, this only	works correctly	for selections	that  allow  a
	   single choice.

       *FvwmForm: ButtonPointer	pointername
	   Change  the default mouse pointer (hand2) used when hovering	over a
	   button.  The	pointername must be one	of the names  defined  in  the
	   include  file  X11/cursorfont.h  (without the XC_ prefix).  See DE-
	   FAULTS.

       *FvwmForm: ButtonInPointer pointername
	   Change the default mouse pointer (hand1) used  while	 a  button  is
	   pressed  in.	  The  pointername must	be one of the names defined in
	   the include file X11/cursorfont.h (without the  XC_	prefix).   See
	   DEFAULTS.

       *FvwmForm: InputPointer pointername
	   Change  the default mouse pointer (xterm) used while	the pointer is
	   over	a text field.  The pointername must be one of  the  names  de-
	   fined  in  the  include file	X11/cursorfont.h (without the XC_ pre-
	   fix).  See DEFAULTS.

       *FvwmForm: ButtonPointerFore|Back color
	   Change the default mouse pointer foreground and  background	colors
	   used	when hovering over a button.  See DEFAULTS.

       *FvwmForm: ButtonInPointerFore|Back color
	   Change  the	default	mouse pointer foreground and background	colors
	   used	while a	button is pressed in.  See DEFAULTS.

       *FvwmForm: InputPointerFore|Back	color
	   Change the default mouse pointer foreground and  background	colors
	   used	while the pointer is over a text field.	 See DEFAULTS.

       *FvwmForm: Timeout seconds command "text"
	   Set	up FvwmForm to time out	after the amount of seconds specified.
	   When	the timer hits zero, command executes.	The text field is dis-
	   played  much	 like  a Text field, except that a '%%'	in the line is
	   replaced automatically by the amount	of time	 left  on  the	timer.
	   The	value  gets  updated  every  second  as	the timer counts down.
	   There can only be one timeout field per form.

EXAMPLES
       All of the following "examples" are installed in	the  read-only	archi-
       tecture-independent  data  directory,  [PREFIX/share/fvwm], during fvwm
       installation.

       The following commands create a menu to invoke the examples:

       DestroyMenu Forms
       AddToMenu Forms "&Q. QuitVerify"	Module FvwmForm	FvwmForm-QuitVerify
       AddToMenu Forms "&C. Capture"	Module FvwmForm	FvwmForm-Capture
       AddToMenu Forms "&R. Rlogin"	Module FvwmForm	FvwmForm-Rlogin
       AddToMenu Forms "&T. Talk"	Module FvwmForm	FvwmForm-Talk

EXAMPLE	1 - Quit Verify
       This example simulates the mwm way of confirming	logout.	  Return  does
       the  logout,  Escape cancels logout.  It	times out after	20 seconds and
       performs	the equivalent of the 'Logout' button.
       DestroyModuleConfig  FvwmForm-QuitVerify: *
       *FvwmForm-QuitVerify: GrabServer
       *FvwmForm-QuitVerify: WarpPointer
       *FvwmForm-QuitVerify: Command	 Beep
       *FvwmForm-QuitVerify: Line	 center
       *FvwmForm-QuitVerify: Text	 "Do you really	want to	logout?"
       *FvwmForm-QuitVerify: Line	 expand
       *FvwmForm-QuitVerify: Button	 quit "Logout" ^M
       *FvwmForm-QuitVerify: Command	 Quit
       *FvwmForm-QuitVerify: Button	 restart   "Restart" ^R
       *FvwmForm-QuitVerify: Command	 Restart
       *FvwmForm-QuitVerify: Button	 quit "Cancel" ^[
       *FvwmForm-QuitVerify: Command	 Nop
       *FvwmForm-QuitVerify: Timeout	 20 Quit "Automatic logout will	occur in %% seconds."

EXAMPLE	2 - Remote Login
       This example lets the user type in a host name, an optional user	 name,
       and opens an xterm window from the remote host.
       DestroyModuleConfig  FvwmForm-Rlogin: *
       *FvwmForm-Rlogin: WarpPointer
       *FvwmForm-Rlogin: Line	      center
       *FvwmForm-Rlogin: Text	      "Login to	Remote Host"
       *FvwmForm-Rlogin: Line	      center
       *FvwmForm-Rlogin: Text	      "Host:"
       *FvwmForm-Rlogin: Input	      HostName	      20      ""
       *FvwmForm-Rlogin: Line	      center
       *FvwmForm-Rlogin: Selection    UserSel single
       *FvwmForm-Rlogin: Choice	      Default Default on      "same user"
       *FvwmForm-Rlogin: Choice	      Custom  Custom  off     "user:"
       *FvwmForm-Rlogin: Input	      UserName	      10      ""
       *FvwmForm-Rlogin: Line	      expand
       *FvwmForm-Rlogin: Button	      quit    "Login"	      ^M
       *FvwmForm-Rlogin: Command      Exec exec	ssh $(Custom?-l	$(UserName)) $(HostName) xterm -T xterm@$(HostName) -display $HOSTDISPLAY &
       # Before	saving the data, remove	any previously saved data:
       *FvwmForm-Rlogin: Command DestroyModuleConfig FvwmForm-RloginDefault: *
       # The "Login" button causes a login and a saving	of the current data:
       *FvwmForm-Rlogin: Command !(			   /bin/echo \
	 "# Created by FvwmForm-Rlogin on: `/bin/date`.";  /bin/echo \
	 '*FvwmForm-RloginDefault: HostName $(HostName)';  /bin/echo \
	 '*FvwmForm-RloginDefault: UserName $(UserName)';  /bin/echo \
	 '*FvwmForm-RloginDefault: Default $(Default?on)'; /bin/echo \
	 '*FvwmForm-RloginDefault: Custom $(Custom?on)'	\
       ) > ${FVWM_USERDIR}/.FvwmForm-Rlogin
       *FvwmForm-Rlogin: Button	      restart "Reset"
       *FvwmForm-Rlogin: Button	      quit    "Cancel"	      ^[
       *FvwmForm-Rlogin: Command      Nop
       # Tell FvwmForm to read vars from the .FvwmForm-RloginDefault file:
       *FvwmForm-Rlogin: UseData .FvwmForm-Rlogin *FvwmForm-RloginDefault

EXAMPLE	3 - Capture Window
       This example provides a front-end to xwd, xwud, and xpr.
       DestroyModuleConfig  FvwmForm-Capture: *
       *FvwmForm-Capture: Line	     center
       *FvwmForm-Capture: Text	     "Capture Window"
       *FvwmForm-Capture: Line	     left
       *FvwmForm-Capture: Text	     "File: "
       *FvwmForm-Capture: Input	     file	     25	     "/tmp/Capture"
       *FvwmForm-Capture: Line	     left
       *FvwmForm-Capture: Text	     "Printer: "
       *FvwmForm-Capture: Input	     printer	     20	     "$PRINTER"
       *FvwmForm-Capture: Line	     expand
       *FvwmForm-Capture: Selection  PtrType single
       *FvwmForm-Capture: Choice     PS	     ps	     on	     "PostScript"
       *FvwmForm-Capture: Choice     Ljet    ljet    off     "HP LaserJet"
       *FvwmForm-Capture: Line	     left
       *FvwmForm-Capture: Text	     "xwd options:"
       *FvwmForm-Capture: Line	     expand
       *FvwmForm-Capture: Selection  Options multiple
       *FvwmForm-Capture: Choice     Brd     -nobdrs off     "No border"
       *FvwmForm-Capture: Choice     Frm     -frame  on	     "With frame"
       *FvwmForm-Capture: Choice     XYZ     -xy     off     "XY format"
       *FvwmForm-Capture: Line	     expand
       *FvwmForm-Capture: Button     continue	     "Capture"	     ^M
       *FvwmForm-Capture: Command    Exec exec xwd -out	$(file)	$(Options) &
       *FvwmForm-Capture: Button     continue	     "Preview"
       *FvwmForm-Capture: Command    Exec exec xwud -in	$(file)	&
       *FvwmForm-Capture: Button     continue	     "Print"
       *FvwmForm-Capture: Command    Exec exec xpr -device $(PtrType) $(file) |	lpr -P $(printer) &
       *FvwmForm-Capture: Button     quit	     "Quit"

EXAMPLE	4 - Talk Form
       This example provides a replacement for the module FvwmTalk.  There are
       2 forms,	"FvwmForm-Talk." which executes	commands, or sends commands to
       fvwm for	execution, and "FvwmForm-TalkHelp."  which is a	help form.

       In  the help form, notice how vertical line spacing is changed.	Normal
       FvwmForm	line spacing assumes text is  intermixed  with	buttons,  help
       forms require different spacing.

       # FvwmForm-Talk - Basic replacement for FvwmTalk
       DestroyModuleConfig  FvwmForm-Talk: *
       *FvwmForm-Talk: WarpPointer
       # Layout
       *FvwmForm-Talk: Line	    center
       *FvwmForm-Talk: Text	    "Talk to Fvwm"
       *FvwmForm-Talk: Line	    left
       *FvwmForm-Talk: Text	    "Command:"
       *FvwmForm-Talk: Input	    Command 80 ""
       *FvwmForm-Talk: Line	    left
       *FvwmForm-Talk: Text	    "Msg:"
       *FvwmForm-Talk: Message
       *FvwmForm-Talk: Line	    center
       # Buttons
       *FvwmForm-Talk: Button	    restart    "Return - Execute"	  ^M
       *FvwmForm-Talk: Command	      $(Command)
       *FvwmForm-Talk: Button	    continue	"F1 - Help" F1
       *FvwmForm-Talk: Command	      Module FvwmForm FvwmForm-TalkHelp
       *FvwmForm-Talk: Button	    restart	"F3 - Reset input" F3
       *FvwmForm-Talk: Command	      Nop
       *FvwmForm-Talk: Button	    quit	"F4 - Dismiss"	F4
       *FvwmForm-Talk: Command	      Nop

       # FvwmForm-TalkHelp - Help Text for FvwmForm-Talk
       DestroyModuleConfig  FvwmForm-TalkHelp: *
       *FvwmForm-TalkHelp: WarpPointer
       # Layout
       *FvwmForm-TalkHelp: Line	   center
       *FvwmForm-TalkHelp: Text	   "Talk to Fvwm - Help"
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   " "
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: PadVText 0
       *FvwmForm-TalkHelp: Text	   "Enter commands in the
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   "Commands beginning with
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   "shell as a sub-process of the form."
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   "All	other commands are sent	to fvwm	for execution."
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   ""
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   "Fvwm error messages	are shown on the
       *FvwmForm-TalkHelp: Line	   left
       *FvwmForm-TalkHelp: Text	   ""
       # Buttons
       *FvwmForm-TalkHelp: Line	   center
       *FvwmForm-TalkHelp: Button  quit	   "Return - Dismiss"	      ^M
       *FvwmForm-TalkHelp: Command   Nop

BUGS AND LIMITATIONS
       FvwmForm	is a fairly simple method of providing input.  There is	no in-
       put validation facility.	 FvwmForm has no way of	dealing	with lists.

       Report bugs to the fvwm-workers list.

COPYRIGHTS
       FvwmForm	is original work of  Thomas  Zuwei  Feng  (ztfeng@math.prince-
       ton.edu).

       Copyright Feb 1995, Thomas Zuwei	Feng.  No guarantees or	warranties are
       provided	or implied in any way whatsoever.  Use this  program  at  your
       own  risk.  Permission to use, modify, and redistribute this program is
       hereby given, provided that this	copyright is kept intact.

CHANGES
       During the fall of 1998,	Dan Espen removed all form size	limits,	 added
       unlimited  font and color changing, form	spacing	control, configuration
       file reading, global control of appearance, synchronous command	execu-
       tion, Error message display, variable substitution, configurable	point-
       ers, and	lots of	other damage.  No additional copyright is imposed.

FVWM			  (not released	yet) (2.5.20)		   FvwmForm(1)

NAME | SYNOPSIS | DESCRIPTION | INITIALIZATION | DEFAULTS | VARIABLE SUBSTITUTION | CONFIGURATION | EXAMPLES | EXAMPLE 1 - Quit Verify | EXAMPLE 2 - Remote Login | EXAMPLE 3 - Capture Window | EXAMPLE 4 - Talk Form | BUGS AND LIMITATIONS | COPYRIGHTS | CHANGES

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=FvwmForm&sektion=1&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help