# tkgoodstuff

Screenshots:

> A few sample configurations
> Eric Kahler's desktop
> CoffeeNet Help Page

Tkgoodstuff for the X Window System is a utility panel---normally, a button bar. It is easily configured and modified using a GUI preferences manager. Some "clients" are included: analog/digital alarm clock, new-mail indicator, log file watcher, WWW browser launcher, dialup network dialer and status indicator, note taker/manager, calendar program alarm daemon, POP/IMAP mail fetching scheduler, system load display, system menu, and fvwm (window manager) support, including a window list (buttons for all running applications) and virtual desktop pager. See below for details about the clients. In addition to the clients, you can configure buttons to run commands, and you can embed any X program window in your bar (such as xosview, FvwmPager, etc.).

Tkgoodstuff, especially when used with the fvwm window manager, can be set up to behave in many ways like the Win95 taskbar (spanning any edge of the screen, containing buttons for every running application, with the ability to "hide" along the side of the screen and to be "dragged" to another side, with a GUI-configurable menu, etc.). But it is not a taskbar "clone" and is considerably more customizable.

## Included Clients

- Clock: analog and/or digital time and/or date alarm clock.
- Biff: a feature-rich mail checker.
- Net: indicates the status of a PPP or SLIP connection and allows you to bring the connection up or down with a click. Also can display net uptime, and can periodically "ping" so that the remote host won't close an inactive connection. Included is a GUI Dialer program, which you can call from Net to dial your modem (with nice repeat-dial features), log you in, and start your network software while you watch.
- Jots: A tool for writing, editing, and searching for notes: diary entries, addresses, ftp sources, ideas, etc. Support for easy shuffling between multiple "folders" of entries.
- WWW: Launch your web browser or instruct the browser to visit the URL in the current X selection.
- Watch: This client watches one or more files (e.g., log files) for changes with configurable alerts (and can display the files).
- Load: An xload-like system load-average display (auto-scaling graphical, digital, or both). Button 1 launches an xterm running (for example) "top".
- Menu: A button that produces a menu, which is easily configured in the GUI preferences manager.
- Webster: Retrieve (over the net) the dictionary definition of a word (the current X selection).
- Ical: The program ical (as opposed to this client) is a nice calendar program. The client reads your ical calendar and serves as an alarm daemon, posting alarm notices to your screen when ical would if you had it running.
- PopImap: periodically run pop or imap client to get any new mail on remote mail server. Don't get too excited: the fetching is done by a program or script that you provide (e.g., fetchmail). No button is produced by this client (though it produces some stuff in the tkgoodstuff popup menu).
- WindowList: For use with Fvwm, produces buttons for open/iconified windows (like the Win95 taskbar).
- Pager: For negotiating desktops with Fvwm.
- Chooser: (by Eric Kahler) This client, at tkgoodstuff start-up, posts a list of tkgoodstuff configuration files to choose from.
- TkMan: (by Gary Dezern) The program tkman is a very nice man-page browser. Start tkman, or tell tkman to look up the man page for the word in the current X selection.

## Customizing Features

### User-defined buttons

The "standard" user-defined buttons can be configured to show either icons or (multi-line) text labels or both at once (with the icon on any side or in the background), and global options can request no labels or no icons. Among the unlimited possibilities here are use of the current X selection in your command, execution of unix and/or Tcl commands, and more. See the documentation on configuration for more.

### "Swallow" Windows

If you really like xosview or xdaliclock or whatever, you can embed it within your panel as a Swallow item (tkgoodstuff "swallows" the application window).

### Label boxes

A label box contains text, e.g., to label a group of related buttons.

### Stacks

You can form vertical or horizontal stacks of elements (e.g., buttons and labels or other stacks), that can be nested indefinitely. If you're not careful, you might get something like the large example above (or worse).

### Panels

You can create multiple panels (of buttons, labels, etc.) to place at different parts of the screen or to call up (like a menu) from a "PanelButton".

## Documentation

The only documentation for tkgoodstuff is in these html pages, which are included in the distribution's "doc" subdirectory. From the "About tkgoodstuff (help)" window accessed from the popup menu, you can launch a built-in help browser or your web browser (by default, netscape) to read these pages (either your local copy, installed automatically during tkgoodstuff installation, or the latest copy on the net).