# In this file you can find some functions used in FVWM-Crystal to launch
# applications. They are provided here for easier global change (you don't
# need to edit, for example, every entry in ApplicationDatabase to change
# a terminal type). You can use those commands in FvwmConsole window (by
# default in the bottom-left corner of the screen, accesible by pressing
# Alt+;).
# Near the functions you can find commented out entries, from which you can
# choosed a preffered command.

# Functions:

# A
# Launches a terminal with optional program as an argument. Terminal settings
# should be set using ~/.Xresources file or (in Eterm) theme file.

# AA
# A special version of the 'A' function. It just opens a terminal without
# additional application launched in it. It exists because certain terminal
# emulators (xterm, Eterm, something else?) won't run with '-e' argument being
# null.

# X
# Launches a command in the background. Typically this function is used to
# launch some X application without additional terminal window.

# S
# Launch a command using 'sudo'. You need to have provileges in /etc/sudoers
# file to execute choosen command - consult your administrator or man sudo,
# man sudoers, man visudo. Usually 'sudo' asks for a password, so it's a good
# choice to launch it in a terminal window (otherwise you should use
# a specialized program for password verification).

# SX
# It does the same thing as 'S', but instead of opening a terminal with sudo
# it uses graphical client called 'gksudo' to execute a command. Unfortunately
# this variant is only usable with graphical applications.

SetEnv DefaultTerminal NO_DEFAULT_TERMINAL_FOUND
#FindCommand DefaultTerminal urxvt aterm xterm
CheckPreferences DefaultTerminal "SavePreferences DefaultTerminal 'FindCommand DefaultTerminal urxvt aterm xterm'"
LoadPreferences DefaultTerminal

# Usage: A [command] [command options]
DestroyFunc A
AddToFunc A
+ I	Window-SetPlacementPolicy
+ I	Exec exec $[DefaultTerminal] -e $*

DestroyFunc AA
AddToFunc AA
+ I	Window-SetPlacementPolicy
+ I	Exec exec $[DefaultTerminal]

# Usage: X [command] [command options]
DestroyFunc X
AddToFunc X
+ I	Window-SetPlacementPolicy
+ I	Exec exec $*

# Usage: S [command] [command options]
DestroyFunc S
AddToFunc S
+ I	A sudo $*

# Usage: SX [command]
DestroyFunc SX
AddToFunc SX
+ I	X gksudo $*

# Dummy function created to avoid the error messages.
# If the real function is used, this does nothing.
AddToFunc Window-SetPlacementPolicy I Nop

# vim:ft=fvwm
