XICON(1) SysV XICON(1)
NAME
xicon - creates "inactive" icons that will start an application.
SYNOPSIS
xicon
DESCRIPTION
Xicon is an X Window System Version 11 application which presents tools
or user-defined applications as "inactive" icons. These icons can be
selected with a pointing device in the normal fashion to start up the
indicated program. They are inactive because they are only xicon
representations of the program. The program is not really running; it is
not using system resources until it is activated.
This allows a window system environment to be set up for the user in
which the interaction with the computer is graphical. This is in
contrast to that of the typical terminal interface which requires the
user to type in a command line with its various parameters.
Whenever a user selects one of the inactive icons a brief startup message
is displayed and the actual application is started. If the application
program exits or is `closed' (or dies), the window with the running
application is replaced by the inactive icon. The icon is then available
to the user for re-starting. In contrast, if an application that wasn't
started by xicon is closed, it is removed from the window session.
The inactive icon is a bit reversal of the bitmap specified. This will
differ from the appearance of an `active' icon which represents an
application that is still running.
X RESOURCES
Xicon is configured from the X11 defaults files:
/usr/lib/X11/app-defaults/XIcon
$HOME/.Xdefaults or "xrdb" defaults loaded on the server
The apps-defaults file sets up the system-wide xicon configuration. The
user's personal $HOME/.Xdefaults will modify the system-wide defaults by
adding, deleting, or modifying the configuration of xicon.
Xicon recognizes resources which allow you to set:
* initial list of programs to start.
* additional programs to add to the initial list.
* programs to be deleted from the initial list.
* programs that are not to be used.
In addition, xicon recognizes resources which allow you to control the
individual program startup details, including:
* icon name.
* icon bitmap.
* actual command line to be executed.
* command line to be used the first time if "go" is True.
* maximum number of simultaneous copies of the program allowed to run.
* disappearance of icon when the max number of copies are running.
* automatic running (go), rather than starting as an inactive icon.
X RESOURCE OPTIONS
The first set of resources specify which programs and commands are
started by xicon at login. This can be customized for each user.
XIcon*initialPrograms: <list>
Provides the initial list of programs to be shown in each
user's window session. This is set in /usr/lib/X11/app-defaults
for the whole system, but can be set in each user's
$HOME/.Xdefaults to over-ride the system-wide defaults.
XIcon*addPrograms: <list>
Adds the given list of programs to the initial set of programs
which are shown at login. This is typically set in the user's
$HOME/.Xdefaults.
XIcon*deletePrograms: <list>
Deletes the given list of programs from the programs specified
with initialPrograms:, or added in addPrograms:. This is
typically set in the user's $HOME/.Xdefaults for his own
individual choices.
The second set of resources specify the attributes of the programs which
are started. In the following discussion the identifier has no real
relationship to the actual program name or the icon name. It is only used
in the resource file (on the initialPrograms: and addPrograms: line) to
identify additional resources used to specify the inactive icons and
command lines. However, it is suggested that meaningful names be used,
such as xcalc for the calculator program.
XIcon*<identifier>.iconName:
The name to be displayed under the icon image.
XIcon*<identifier>.iconBitmap:
The absolute path to the bitmap to be used to display the icon
image. This bitmap is bit-reversed to indicate that it is
inactive.
XIcon*<identifier>.iconGeometry:
x & y location values are used to tell (hint to) the window
manager where the icon should be placed on the screen. Not all
window managers will honor this hint.
XIcon*<identifier>.geometry:
Sets the location and size of the startup message window for
this icon. The default is to use a window placed at the
XIcon*iconGeometry location (if specified) or at +0-0 if no
XIcon*iconGeometry is specified.
XIcon*<identifier>.commandLine:
The actual command line to be executed whenever the user
selects the icon (starts the application). This line is
executed using "/bin/sh -c exec <commandLine>", so normal
command lines will work as expected. Because the `exec'
precedes the <commandLine>, you will need to specify "env
DISPLAY=funny:0.0 command_to_execute" if you are attempting to
set "DISPLAY=funny:0.0 (or to set any other shell variables).
You may not chain commands together with ";" as the first of
the commands on the line is `exec'ed and there is no shell to
interpret the rest of the command line. `pipe'ing (|) commands
together works correctly. Exec is used to reduce the number of
processes running.
XIcon*<identifier>.goLine:
This line is similar to "commandLine:" except that it is used
(if specified) when the "go: True" option is used. This allows
an application to start differently if it is to come up running
at login. An example of this is the "console" terminal window
which comes up running but iconified at login.
XIcon*<identifier>.off:
An alternate way of deleting a program from the identifier
list. For example "XIcon*xcal.off: True" in your personal
$HOME/.Xdefaults file turns off the default startup of xcal at
your login.
(default = FALSE)
XIcon*<identifier>.copies:
The number of simultaneous copies of this program to allow
running from the inactive starter. Default number is one.
XIcon*<identifier>.disappear:
Specifies whether the icon should disappear when the permitted
number of copies of the program are running. If "disappear:"
is set to FALSE, and the permitted number of copies for that
program have been met, then a message stating the number of
copies being run and the name of the icon is displayed instead
of actually starting the application.
(default = TRUE)
XIcon*<identifier>.go:
If set to true, the xicon program will actually start the
program specified instead of presenting an inactive icon. If
this program ever exits (or dies) the inactive icon will then
be presented.
(default = FALSE)
XIcon*<identifier>.startMessage:
Specifies the message to be displayed when the inactive icon
image has been selected, and before the program actually starts
running.
(default = display a default message)
EXAMPLES
HP supplies the following defaults in the file /usr/lib/X11/app-
defaults/XIcon. You can copy them to your personal $HOME/.Xdefaults file
and customize them to override the provided defaults.
Initial Programs Invoked at Login
XIcon*initialPrograms: xcalc hpterm clock calendar xload
Xcalc resources (calculator program)
XIcon*xcalc.iconName: XCALC
XIcon*xcalc.iconBitmap: /usr/lib/X11/bitmaps/xcalc
XIcon*xcalc.commandLine: xcalc -geometry -0-0
Xclock resources (analog clock program)
XIcon*clock.iconName: xclock
XIcon*clock.iconBitmap: /usr/lib/X11/bitmaps/xclock
XIcon*clock.commandLine: /usr/bin/X11/xclock
XIcon*clock.go: True
Xcalendar resources (calendar program)
XIcon*calendar.iconName: xcal
XIcon*calendar.iconBitmap: /usr/lib/X11/bitmaps/xcal
XIcon*calendar.commandLine: /usr/bin/X11/xcal 2>/dev/null
XIcon*calendar.go: True
Xload resources (load indication program)
XIcon*xload.iconName: xload
XIcon*xload.iconBitmap: /tmp/bitmaps/xload
XIcon*xload.commandLine: /usr/bin/X11/xload -geometry -0+200
HPterm resources (additional terminal windows)
XIcon*hpterm.iconName: HPTERM
XIcon*hpterm.commandLine: /usr/bin/X11/hpterm -ls -i -fn hp8.10x20.EE
FILES
/usr/lib/X11/app-defaults/XIcon
${HOME}/.Xdefaults
SEE ALSO
xlogin(1), Programming with Xlib.