Plugin: JS9Statusbar

### JS9 Statusbar

The JS9 Statusbar plugin displays user-configurable status values for the currently displayed image such as zoom factor, scale, and/or colormap. Configuration is done via the JS9.globalOpts.statusbar format string, in which one or more clickable status areas are separated by semi-colons. Each status area consists of optional text (which can utilize html elements) and dollar-sign-delimited "macros" that will be expanded to the appropriate value for each image.

The macros can represent parameters values stored with each image, of which the most important ones are:

- colormap
- contrast
- bias
- flip
- rot90
- scale
- scalemin
- scalemax
- scaleclipping
- wcssys
- wcsunits
- zoom

See the JS9 Public API SetParam call for more information about image parameters.

In addition to image parameters, the following special parameters are available:

- colorbar: colorbar plugin without tick marks
- fliprot: flip and rot90 params in "(flip,rot)" format
- image: image name
- image0: image name (without [EVENTS] bracket extension, where present)
- mag: percent magnification (e.g. zoom 2 is "200%")
- img(pngfile | jpgfile): display the specified image

The png/jpg pathnames supplied to the $img macro should be relative to the web page, as usual. The $fliprot macro returns an empty string if neither flip or rot90 have been applied, otherwise it returns a parenthesized string containing the non-zero value(s) (e.g. "(x)", or "(y,90)").

For example, the current default value for the format string is:

      $colorbar; $colormap; $mag $fliprot; $scale ($scalemin,$scalemax); $wcssys; $image0

meaning to display a colorbar, followed by the colormap name, the current magnification, flip and rot90 if applicable, then the scale (including scale min and max), the wcs system, and the image name (without the [EVENTS] extension, if present). Note that the colorbar is the real JS9Colorbar plugin (with tick-marks turned off) and will change dynamically as the colormap or contrast/bias is changed. Alternatively, this configuration:

      $img(images/voyager/color_$colormap.png) $colormap; $mag; $scale($scalemin,$scalemax); $wcssys; $image

will display a static image of the current colormap, along with the other values. In this case, the image filename will include all bracket extensions.

The following status macros have clickable actions:

- image | image0: toggle the Binning plugin
- mag | zoom: toggle the Pan/Zoom plugin
- scale | scalemin | scalemax: toggle the Scale Controls plugin

Thus, for example, clicking in an area that contains one of the $scale macros will toggle the Scale plugin.

The status display will wrap onto the next line if necessary, and a scrollbar will become available on the right-hand side. Thus, if a long image filename is not displayed in the default setup, try the scrollbar ...

See Configuring JS9 Site Preferences and the JS9 User Preferences plugin for discussions of how to set preferences such as JS9.globalOpts.statusbar on a site-wide and an individual basis, respectively.