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, Fvwm-
     Form 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 performing
     a	certain action when the timeout occurs. The countdown is displayed simi-
     lar 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  ac-
     cepts  Emacs-style  cursor  movement  keys.  See FvwmFormInput for details.
     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 fea-
     ture.

     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 exe-
     cutes shell commands. The shell commands can contain the content of the in-
     put 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  example,  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" updates 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 directory, or  be  in  the  fvwm
     data  directory.  See  the  description of the read command in the fvwm man
     page for more information about the environment variable $FVWM_USERDIR.

     Then FvwmForm reads the rest of the configuration fvwm has stored up.  Fvwm
     stores  configuration  on an ongoing basis. The initial configuration 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  con-
     tain  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 al-
     low 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  dis-
     played  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 except
     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 Fvwm-
     Form (like this):

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

     Then all FvwmForm input commands undergo variable substitution.  The  vari-
     ables  from the command line are exported. Then every command gets expanded
     using the variables from the environment. For example, assuming  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 cre-
     ate a file in the read-only architecture-independent data directory,  [PRE-
     FIX/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
	 Separator
	 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 intermixed
     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 fea-
	 ture 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 Po-
	 sition option does but is more flexible.

     *FvwmForm: Position x y
	 Puts the FvwmForm window at location (x, y) on the screen.  By  conven-
	 tion,	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.

     *FvwmForm: Back color
	 Specifies the background color of the FvwmForm window and any	text  in
	 the  window.  The  first background color FvwmForm reads determines the
	 overall screen background color. Switches off the Colorset 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.

     *FvwmForm: ItemBack color
	 Specifies the background color for the text input windows, and the but-
	 tons.	Buttons are displayed as 3D depressable buttons. Inputs are dis-
	 played as 3D indented fields. Medium shade background colors work best.
	 Switches off the ItemColorset option. See DEFAULTS.

     *FvwmForm: ItemFore color
	 Specifies the foreground color for the text input  strings  and  button
	 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,  but-
	 tons  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 centered 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  message
	 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 containing text in-
	 termixed 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 pro-
	 vide 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 en-
	 closed  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  char-
	 acters  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 supported.

	 Emacs type keystrokes are supported.

	 Control-a,  Home  and	Begin  move to the front of an input field. Con-
	 trol-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 previous 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 control-n and Down, restore	previous
	 input value. Control-h moves backward in an input field erasing a char-
	 acter.  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: Separator
	 Draws a 2 pixel shaded line across the form as a visual indication of a
	 separate area.

     *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:	Command.
	 The string is displayed to the right of the choice button as a label.

	 The  choice  assumes  the specified initial state ("on" means selected)
	 when FvwmForm starts or resets. If the selections are	mutually  exclu-
	 sive, 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  la-
	 bel,  and executes a set of Fvwm command when it is activated. The com-
	 mands are the following *FvwmForm: Commands.

	 The optional key specifies a keyboard shortcut that activates the  but-
	 ton. 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 but-
	 tons, 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 commands.

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

	 quit
	     FvwmForm quits after sending the commands.

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

	 Commands starting with an exclamation mark (!) are  executed  by  Fvwm-
	 Form, all other commands are sent to Fvwm for execution. Before 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 in-
	 put 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 selected, 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 separated 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 re-
	 cursive variable substitution applied. If the choice is  not  selected,
	 the result is empty.

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

	 When using the "?" and "!" forms to pass a string, the string is delim-
	 ited  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  com-
	 mands that match the "leading" argument and an input, choice, or selec-
	 tion 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,  [PRE-
	 FIX/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.  Cur-
	 rently,  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 but-
	 ton. The pointername must be one of the names defined	in  the  include
	 file X11/cursorfont.h (without the XC_ prefix). See DEFAULTS.

     *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 defined  in  the
	 include file X11/cursorfont.h (without the XC_ prefix). 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 tenth_of_seconds command "text"
	 Set up FvwmForm to time out after the amount of tenth of seconds speci-
	 fied. When the timer hits zero, command executes.  The  text  field  is
	 displayed much like a Text field, except that a '%%' in the line is re-
	 placed automatically by the amount of time left on the timer. The value
	 gets  updated every tenth of 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  architec-
     ture-independent data directory, [PREFIX/share/fvwm], during fvwm installa-
     tion.

     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	   200 Quit "Automatic logout will occur in %% tenth of 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 x
	 term@$(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 Fvwm-
     Form line spacing assumes text is intermixed with buttons, help  forms  re-
     quire 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 input
     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.princeton.edu).

     Copyright Feb 1995, Thomas Zuwei Feng. No guarantees or warranties are pro-
     vided 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  un-
     limited  font  and color changing, form spacing control, configuration file
     reading, global control of appearance, synchronous command execution, Error
     message display, variable substitution, configurable pointers, and lots  of
     other damage. No additional copyright is imposed.

				   2026-06-27			     FVWMFORM(1)

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

home | help