aboutsummaryrefslogtreecommitdiff
path: root/vendor/x11iraf/ximtool/OLD/ximtool-0.5.info
diff options
context:
space:
mode:
authorJoe Hunkeler <jhunkeler@gmail.com>2015-08-11 16:51:37 -0400
committerJoe Hunkeler <jhunkeler@gmail.com>2015-08-11 16:51:37 -0400
commit40e5a5811c6ffce9b0974e93cdd927cbcf60c157 (patch)
tree4464880c571602d54f6ae114729bf62a89518057 /vendor/x11iraf/ximtool/OLD/ximtool-0.5.info
downloadiraf-osx-40e5a5811c6ffce9b0974e93cdd927cbcf60c157.tar.gz
Repatch (from linux) of OSX IRAF
Diffstat (limited to 'vendor/x11iraf/ximtool/OLD/ximtool-0.5.info')
-rw-r--r--vendor/x11iraf/ximtool/OLD/ximtool-0.5.info798
1 files changed, 798 insertions, 0 deletions
diff --git a/vendor/x11iraf/ximtool/OLD/ximtool-0.5.info b/vendor/x11iraf/ximtool/OLD/ximtool-0.5.info
new file mode 100644
index 00000000..c9346675
--- /dev/null
+++ b/vendor/x11iraf/ximtool/OLD/ximtool-0.5.info
@@ -0,0 +1,798 @@
+Path: iraf!irafmail-gateway
+From: tody@noao.edu (Doug Tody)
+Newsgroups: adass.iraf.announce
+Subject: XImtool version 0.5 released
+Date: 24 May 1994 00:26:46 -0700
+Organization: IRAF Project, National Optical Astronomy Observatories
+Lines: 787
+Sender: daemon@iraf.noao.edu
+Message-ID: <9405240726.AA11099@lepus.tuc.noao.edu>
+NNTP-Posting-Host: tucana.tuc.noao.edu
+
+ XIMTOOL VERSION 0.5
+ May 22 1994
+
+
+Version 0.5 of the alpha test ximtool is now available in pub/v2103-beta
+on iraf.noao.edu and consists of the following files:
+
+ 1589248 May 22 15:14 ximtool-0.5 # executable
+
+Anyone using an earlier version of ximtool is encouraged to update to the
+new version, which is a major new version. Keep the old version around in
+case you run into any problems.
+
+This is ALPHA TEST software. This means that the software is still under
+development and may lack planned features. The software is only partially
+tested and can be expected to have some bugs. Anyone using an alpha test
+version of ximtool is asked to update to version 1.0 when it becomes
+available.
+
+
+INSTALLATION
+
+To install ximtool, download the executable, rename it "ximtool" and place
+it somewhere in your search path (e.g. /usr/bin/X11 or /usr/local/bin).
+An app-defaults file is not required to run ximtool.
+
+Don't install the new version while someone is using ximtool, or you will
+crash their session. The simplest way to avoid this is to "mv" the old
+executable to change the name, e.g. "mv ximtool ximtool.old".
+
+Since this is still alpha test software, all we are releasing is a snapshot
+from our development system, which is a Sun sparc running SunOS. Hence only
+a Sun binary is available at this time (unless someone wants to hack the
+sources and generate their own binary for a new platform).
+
+
+BASIC USAGE
+
+Ximtool is an image display server. To view images with it you need some
+client software, such as IRAF, to load images into the display. Ximtool is
+upwards compatible with older display servers such as SAOimage and imtool.
+For example, to use ximtool instead of SAOimage, start up ximtool instead of
+SAOimage and display in the usual fashion.
+
+You shouldn't need much documentation to be able to use ximtool effectively.
+Just start it up, load images into one or more frames, and experiment with
+the GUI to see what can be done to manipulate the display. Most of the
+controls are obvious, but here are a few things which might not be obvious:
+
+ o Clicking and dragging MB1 (mouse button 1) in the main image
+ window creates a rectangular region marker, used to select a
+ region of the image. If you do this accidentally and don't want
+ the marker, put the pointer in the marker and type DELETE or
+ BACKSPACE to delete the marker. With the pointer in the marker,
+ MB3 will call up a menu listing some thing you can do with the
+ marker, like zoom the outlined region. MB1 can be used to drag
+ or resize the marker.
+
+ o Clicking on MB2 in the main image window pans (one click) or
+ zooms (two clicks) the image. Further clicks cycle through the
+ builtin zoom factors. Moving the pointer to a new location and
+ clicking moves the feature under the pointer to the center of
+ the display window.
+
+ o MB3 is used to adjust the contrast and brightness of the displayed
+ image. The position of the pointer within the display window
+ determines the contrast and brightness values. Click once to
+ set the values corresponding to the pointer location, or click
+ and drag to continuously adjust the display.
+
+ o Ctrl-f, Ctrl-b can be used to move forward or backward through
+ the current set of frame buffers.
+
+ A frame buffer is an image (picture) stored in the display server.
+ Ximtool supports up to four frame buffers. Frame buffers can be any
+ size; the size is set by the client when an image is loaded into a
+ frame. For example, in IRAF "set stdimage = imt800" would set the
+ frame buffer size to 800x800 pixels. Changing the frame buffer size
+ forces an initialize of the display server. In IRAF the command
+ "gdev" will list the frame buffer configurations defined on your
+ system.
+
+Ximtool has a control panel which can be used to exercise most the
+capabilities the program has for image display. The control panel can be
+accessed either via the Options menu from the main window menubar, or by
+pressing the leftmost button in the row of buttons at the upper right side
+of the display.
+
+A more detailed overview of the ximtool capabilities and usage is given
+below.
+
+
+THINGS TO WATCH OUT FOR
+
+ o It is possible to run multiple ximtools, or ximtool and other
+ display servers such as saoimage, imtool, skyview, etc.,
+ simultaneously on the same computer, but don't attempt this unless
+ you know how to set the servers up on different i/o ports. In the
+ default configuration there will be conflicts with multiple servers
+ trying to listen on the same port.
+
+ o Most workstations have a single 8 bit, 256 element colortable per
+ screen. This means that only 256 unique colors can be displayed at
+ any one time. Image display programs like ximtool (or SAOimage, or
+ xv, xloadimage, mosaic, etc.) need a lot of colortable entries in
+ order to display smoothly varying images. If you try to run
+ multiple image display programs at the same time you are likely to
+ run out of colortable space. This may result in warning messages
+ when a program starts up, cause images to be displayed funny,
+ causing flashing when the pointer moves in and out of image display
+ windows, and so on.
+
+ It is best to avoid these problems by killing off any other display
+ programs when running ximtool. If you do run out of colortable
+ space when using ximtool this is harmless, but the image won't be
+ displayed correctly when the pointer is not in the image window. To
+ correct this condition, free up some colortable space (by killing
+ off some other X programs, especially any display programs) and then
+ move the pointer into the ximtool image window and back out. This
+ will cause ximtool to update the default colormap of the display and
+ in most cases will make the ximtool image display correctly.
+ Ximtool will always display correctly when the pointer is in the
+ image window, the problem occurs only when the pointer (colormap
+ focus) is in other windows.
+
+
+WHAT'S NEW?
+
+Ximtool 0.5, while still incomplete, is a major new version, probably the
+first really usable version of ximtool. Major new features in this version
+include the following:
+
+ o A popup control panel, providing control over frame selection,
+ zoom and pan, colortable selection from a list (including user
+ defined colortables), contrast and brightness display and controls,
+ blink control, including blink frames and blink rate, and option
+ control. (The ximtool control panel uses the new widgets and other
+ OBM enhancements discussed in the Xgterm 0.11 announcement.)
+
+ o An option called the "panner". The panner displays a reduced
+ version of the entire frame buffer, with the region currently
+ displayed outlined with a marker. One can pan and zoom within
+ the panner window, e.g. by dragging the panner region marker,
+ to pan or zoom the main image window. This is useful when viewing
+ images too large to fit on the screen.
+
+ o Autoscale option. If autoscale is enabled then at zoom=1, the
+ frame buffer will be automatically scaled to fit within the display
+ window. With autoscale disabled (the default), the image scale
+ is more predictable, but the image may be clipped by the display
+ window, or may not fill the display window.
+
+ o Integer zoom. Ximtool supports both fractional zoom and integer
+ zoom. Fractional zoom uses a non-integer scale factor to scale an
+ image region as necessary to fill the display window. Integer zoom
+ ensures that each frame buffer pixel is displayed as exactly N
+ display pixels. Integer zoom is slightly faster than a fractional
+ zoom.
+
+ o Antialiasing. When dezooming an image, i.e., displaying a large
+ image in a smaller display window, antialiasing causes all the
+ data to be used to compute the displayed image. If antialiasing
+ is disabled then image is subsampled to compute the displayed image.
+ Antialiasing can prevent subsampling from omitting image features
+ that don't fall in the sample grid, but it is significantly slower
+ than dezooming via subsampling. The default is no antialising.
+
+ o Tile frames. The default display mode is to view one frame at a
+ time. In tile frames mode, 2 or 4 frames may be viewed
+ simultaneously in the display window. All the usual operations
+ (zoom and pan, colortable enhancement, cursor readback, etc.)
+ still work for each frame even when in tile frames mode.
+
+ o Fitframe now works. Fitframe resizes the display window to the
+ same size as the frame buffer.
+
+ o Ximtool allows clients to connect in any of the following ways:
+
+ fifo pipes The traditional approach. The default,
+ global /dev/imt1[io] pipes may be used,
+ or a private set of fifos.
+
+ tcp/ip socket Clients connect via a tcp/ip socket.
+ There is a default port, or a custom port
+ may be specified. This permits connecting
+ to the server over a remote network
+ connection anywhere on the Internet.
+
+ unix domain socket Like a tcp/ip socket, but limited to a
+ single host system. Usually faster than a
+ tcp/ip socket, and comparable to a fifo. By
+ default each user gets their own unix domain
+ socket, so this option allows multiple users
+ to run ximtools on the same host without
+ having to customize things.
+
+ By default ximtool listens simultaneously for client connctions on
+ all three types of ports.
+
+ o Ximtool now supports multiple simultaneous client connections.
+ For example, one can be using the IRAF imexamine task to interact
+ with the image displayed in frame 1, while some other program
+ simultaneously displays an image in frame 2 (or any frame, including
+ the frame being examined).
+
+ o An improved set of builtin colormaps are now provided. The user
+ can define additional custom colormaps when ximtool is started.
+
+There were many additional minor changes and bug fixes not worth going into
+here.
+
+
+TECHNICAL NOTES
+
+This isn't the place to write a detailed comprehensive reference manual for
+ximtool, but since there isn't any such manual yet (this is still prerelease
+software) some additional information on a few selected topics will probably
+be useful.
+
+
+COMMAND LINE OPTIONS
+
+This prerelease version of ximtool doesn't support general command line
+options yet (except for the -defgui option described below). However, one
+can accomplish the same thing by setting resources on the command line. For
+example,
+
+ ximtool \
+ -xrm "*port:0" \
+ -xrm "*input_fifo:none" \
+ -xrm "*userCmapDir1:/user/smith/cmaps" \
+ -xrm "*displayPanner:false"
+
+would start up ximtool with tcp/ip sockets and fifos disabled (leaving
+only unix sockets for client connections). Ximtool will look for user
+colormaps in the directory /user/smith/cmaps. The panner option will be
+disabled at startup.
+
+
+RESOURCES
+
+Ximtool has a ton of resources (hundreds of them), but in practice only a
+few are likely to be useful at the user level.
+
+BUILTIN RESOURCES
+
+ Resource Name Default Value
+
+ defConfig: 1
+ defNFrames: 0
+ tileBorderWidth: 3
+ tileBorderColor: 9
+ autoscale: false
+ antialias: false
+ tileFrames: false
+ highlightFrames: true
+ gui: default
+ imtoolrc: /usr/local/lib/imtoolrc
+ memModel: fast
+ cmap1: none
+ cmap2: none
+ cmapDir1: none
+ cmapDir2: /usr/local/lib/imtoolcmap
+ input_fifo: /dev/imt1i
+ output_fifo: /dev/imt1o
+ unixaddr: /tmp/.IMT%d
+ port: 5137
+
+All of these are application resources, hence they would be specified in
+the .Xdefaults file as, e.g., "XImtool.autoscale: true", etc.
+
+
+Description of ximtool client resources:
+
+ defConfig Default frame buffer configuration on startup.
+
+ defNFrames Default number of frames on startup. Set to zero
+ to use value from imtoolrc file. There isn't a
+ whole lot of reason to preallocate frames here,
+ since new frames will be created on demand if needed.
+
+ tileBorderWidth Used by the tile frames option. Specifies how far
+ tileBorderColor apart to space the frames in tile frames mode.
+ Color "9" refers to the Gterm widget resource color9,
+ which is assigned a color with its own resource.
+
+ autoscale Enable/disable the autoscale option.
+ antialias Enable/disable the antialias option.
+ tileFrames Enable/disable the tile frames option.
+
+ highlightFrames Determines whether the current frame is highlighted
+ when in tile frames mode.
+
+ gui The GUI to be executed. "default" refers to the
+ default, builtin ximtool GUI. You can replace this
+ with your own GUI file if you are bold enough, and
+ completely change the look and functionality of
+ the GUI if desired.
+
+ imtoolrc Where to find the imtoolrc file. This defines the
+ recognized frame buffer configurations.
+
+ memModel Determines how ximtool uses memory in the ximtool
+ client and the X server. The options are "fast",
+ "beNiceToServer", and "small". The default is fast,
+ which uses server pixmaps to make frame blink fast.
+ This is recommended unless server memory is very
+ limited. Note that even in fast mode, the server
+ pixmap is only the size of the display window, so
+ memory usage is reasonable even if the frame buffer
+ is very large.
+
+ cmap1 User colormap files. The intent here is to allow
+ cmap2 individual colormaps to be conveniently specified
+ on the command line.
+
+ cmapDir1 User or system colormap directories. By default
+ cmapDir2 cmapDir2 points to the system directory
+ /usr/local/lib/imtoolcmap, allowing a set of site
+ default colormaps to be defined here. This leaves
+ cmapDir1 available to a user colormap directory.
+
+ input_fifo The input and output fifos for fifo i/o. "Input"
+ output_fifo and "output" are from the client's point of view.
+ Note that only one display server can use a
+ fifo-pair at one time.
+
+ unixaddr Template address for unix domain socket. The user
+ must have write permission on this directory, or
+ the file must already exist. %d, if given, is
+ replaced by the user's UID.
+
+ port TCP/IP port for the server. Note that only one
+ server can listen on a port at one time, so if
+ multiple ximtool servers are desired on the same
+ machine, they should be given different ports.
+
+
+GUI RESOURCES
+
+In principle ximtool can have any number of different GUIs, each of which
+defines its own set of resources. GUIs typically define a great many
+resources, but most of these are not really intended for modification by
+the user (although one can modify them if desired).
+
+The following are some of the more useful resources used by the default
+ximtool GUI.
+
+ Resource Name Default Value
+
+ .geometry:
+ *controlShell.geometry:
+ *info.geometry: 420x120
+
+ *cmapName: image
+ *basePixel: 64
+ *maxColors: 216
+
+ *imagewin.warpCursor: true
+ *imagewin.raiseWindow: true
+ *imagewin.deiconifyWindow: true
+ *imagewin.ginmodeCursor: circle
+ *imagewin.ginmodeBlinkInterval: 500
+ *imagewin.color8: #7c8498
+ *imagewin.color9: steelblue
+
+ *autoscale: True
+ *zoomfactors: 1 2 4 8
+ *displayCoords: True
+ *displayPanner: True
+ *blinkRate: 1.0
+ *pannerArea: 150*150
+ *pannerGeom: -5+5
+ *wcsboxGeom: -5-5
+ *maxContrast: 5.0
+ *warnings: True
+
+
+Description of selected resources:
+
+ .geometry Geometry of main image window
+ *controlShell.geometry Geometry of control panel shell
+ *info.geometry Geometry of info box
+
+ *cmapName Name used for private colormap.
+ The default for all IRAF imaging
+ applications is "image". Gterm
+ widget based imaging applications
+ which have the same value of cmapName
+ will share the same colormap,
+ minimizing colormap flashing and
+ allowing multiple applications to be
+ run at the same time.
+
+ *basePixel These two resources determine the
+ *maxColors region of colormap space used to
+ render image pixels.
+
+ *imagewin.warpCursor Warp pointer into image window when
+ initiating a cursor read.
+ *imagewin.raiseWindow Raise image window when initiating
+ a cursor read.
+ *imagewin.deiconifyWindow Deiconify image window if necessary
+ when initiating a cursor read.
+
+ *imagewin.ginmodeCursor Type of cursor when a cursor read
+ is in progress. The default is a
+ circle. Any selection from the X
+ cursor font can be used. A special
+ case is "full_crosshair" which is
+ the full crosshair cursor of the
+ Gterm widget.
+
+ *imagewin.ginmodeBlinkInterval Determines whether the cursor blinks
+ when a cursor read is in progress.
+ The value is given in milliseconds.
+
+ *imagewin.color8 Color assigned the panner window.
+ *imagewin.color9 Color used for the tileFrames highlight.
+
+ *pannerArea Area in pixels of the panner window.
+ *pannerGeom Where to place the panner window.
+ *wcsboxGeom Where to place the coords box.
+ *maxContrast Maximum contrast value.
+
+For a complete description of the ximtool resources, refer to the GUI file.
+The "appInitialize" command contains the full resource list for the GUI.
+
+
+CONTROL PANEL NOTES
+
+VIEW CONTROLS
+
+ o The "Frame" box will list only the frame buffers you currently have
+ defined. Currently, the only way to destroy a frame buffer is to
+ change the frame buffer configuration.
+
+ o The text display gives the field X,Y center, X,Y scale factors, and
+ the X,Y zoom factors. The scale factor and the zoom factor will be
+ the same unless autoscale is enabled. The scale is in units of
+ display pixels per frame buffer pixel, and is an absolute measure
+ (it doesn't matter whether or not autoscale is enabled). Zoom is
+ relative to the autoscale factor, which is 1.0 if autoscaling is
+ disabled.
+
+ o The numbers in the Zoom box are zoom factors. Blue numbers zoom,
+ red numbers dezoom. Zoom In and Zoom Out may be used to go to
+ larger or smaller zoom factors, e.g. "5" followed by "Zoom In" will
+ get you to zoom factor 10. Center centers the field. Toggle Zoom
+ toggles between the current zoom/center values, and the unzoomed
+ image.
+
+ o Aspect recomputes the view so that the aspect ratio is 1.0. Aspect
+ also integerizes the zoom factor (use the version in the View menu
+ if you don't want integerization).
+
+ o Fit Frame makes the display window the same size as the frame buffer.
+ Note that autoscale has much the same effect, and allows you to
+ resize the display window to any size you want, or view images to
+ large to fit on the screen.
+
+
+ENHANCEMENT CONTROLS
+
+ o At the top is a scrolled list of all the available colormaps. Click
+ on the one you want to load it. You can add your own custom colormaps
+ to this list.
+
+ o The two sliders adjust the contrast (upper slider) and brightness
+ (lower slider) of the display. The Invert button inverts the
+ colormap (multiples the contrast by -1.0). Note that due to the use
+ of the private colormap the sliders are a bit sluggish when dragged
+ to window the display. If this is annoying, using MB3 in the
+ display window is faster.
+
+ o The Normalize button (on the bottom of the control panel) will
+ normalize the enhancement, i.e. set the contrast and brightness to
+ the default one-to-one values (1.0, 0.5). This is the preferred
+ setting for many of the pseudocolor colortables.
+
+
+BLINK CONTROLS
+
+ o Blink frames is the list of frames to be blink. When blink mode is
+ in effect ximtool just cycles through these frames endlessly,
+ pausing "blink rate" seconds between each frame. The same frame
+ can be entered in the list more than once. To program an arbitrary
+ list of blink frames, hit the Reset button and click on each blink
+ frame button until it is set to the desired frame number.
+
+ o The blink rate can be adjusted as slow or as fast as you want using
+ the arrow buttons. If you set the blink rate small enough it will
+ go to zero, enabling single step mode (see below).
+
+ o The Register button registers all the blink frames with the current
+ display frame. Frames not in the blink list are not affected.
+
+ o The Match LUTs button sets the enhancement of all blink frames to
+ the same values as the display frame. Frames not in the blink list
+ are not affected.
+
+ o The Blink button turns blink on and off. When the blink rate is
+ set to zero the Blink button will single step through the blink
+ frames, one frame per button press.
+
+ NOTE: you can blink no matter what ximtool options are in effect, but
+ many of these will slow blink down. To get the fastest blink you may
+ want to turn off the panner and coords box, and match the LUTs of all
+ the blink frames. All the ximtool controls are fully active during
+ blink mode, plus you can load frames etc.
+
+
+OPTIONS CONTROLS
+
+ o The options box contains a set of option toggles. If the toggle
+ is yellow the option is in effect.
+
+
+OTHER
+
+ o Initialize initializes ximtool. This resets a lot of things, but
+ tries to not change the view. Select Reset in the File menu on the
+ main window menubar to fully reset things.
+
+ o Normalize normalizes the view for the current display frame.
+
+ o Done makes the control panel go away.
+
+
+CUSTOM COLOR TABLES
+
+The cmap[12] and cmapDir[12] resources are used to tell ximtool where to
+look for colortables. The colortables are loaded when ximtool starts up, or
+when it is reinitialized (e.g. by pressing the Initialize button in the
+control panel). Ximtool will ignore any files in the colormap directory
+which do not look like colortables.
+
+The format of a user lookup table is very simple: each row defines one
+colortable entry, and consists of three columns defining the red, green,
+and blue values scaled to the range 0.0 (off) to 1.0 (full intensity).
+
+ R G B
+ R G B
+ (etc.)
+
+Blank lines and comment lines (# ...) are ignored.
+
+Usually 256 rows are provided, but the number may actually be anything in
+the range 1 to 256. Ximtool will interpolate the table as necessary to
+compute the colortable values used in Ximtool. Ximtool uses only 201 colors
+to render pixel data, so it is usually necessary to interpolate the table
+when it is loaded.
+
+Tables are loaded into Ximtool by setting one of the user colormap directory
+resources. When Ximtool starts up it will read all the files in the
+colormap directory, disregarding any files that are unreadable or that do
+not appear to be colortables. The name of the colortable as it will appear
+in the Ximtool control panel is the root name of the file, e.g., if the file
+is "rainbow.lut" the colortable name will be "rainbow". Lower case names
+are suggested to avoid name collisions with the builtin colortables. If the
+same colortable file appears in multiple user colortable directories, the
+first one will be used.
+
+The directory "luts" in the ximtool source directory contains a sample set
+of colortable files. This can be installed as /usr/local/lib/imtoolcmap
+when ximtool is installed.
+
+
+THE MARKER MENU
+
+ o MB3 (mouse button 3) calls up the marker menu (by default).
+
+ o Zoom does an equal aspect zoom of the region outlined by the marker.
+ In this way you can mark a region of the image and zoom it up.
+
+ o Fill exactly zooms the area outlined by the marker, making it fill
+ the display window. Since the marker is not likely to be exactly
+ square, the aspect ratio of the resultant image will not be unitary.
+
+ o Print prints a description of the marked region. The text is printed
+ in the Info box.
+
+ o Unrotate unrotates a rotated marker.
+
+ o Color is a menu of possible marker colors.
+
+ o Type is a menu of possible marker types. This is still a little
+ buggy and it isn't very useful, but you can use it to play with
+ different types of markers.
+
+ o Destroy destroys the marker. You can also hit the delete or
+ backspace key in a marker to destroy the marker.
+
+
+MORE ON GRAPHICS MARKERS
+
+Although ximtool doesn't do much with markers currently, they are a general
+feature of the Gterm widget and are used more extensively in other programs
+(e.g. the prototype IRAF science GUI applications). Ximtool uses markers
+for the marker zoom feature discussed above, and also for the panner and the
+coords box. All markers share some of the same characteristics, so it is
+worthwhile learning basic marker manipulation keystrokes.
+
+ o MB1 anywhere inside a marker may be used to drag the marker.
+
+ o MB1 near a marker corner or edge, depending on the type of marker,
+ resizes the marker.
+
+ o Shift-MB1 on the corner of most markers will rotate the marker.
+
+ o Markers stack, if you have several markers and you put one on top
+ of the other. The active marker is highlighted to tell you which
+ of the stacked markers is active. If the markers overlap, this
+ will be marker "on top" in the stacking order.
+
+ o MB2 in the body of a marker "lowers" the marker, i.e. moves it to
+ the bottom of the stacking order.
+
+ o Delete or backspace in a marker deletes the marker.
+
+For example, try placing the pointer anywhere in the coords box, then press
+MB1 and hold it down, and drag the coords box marker somewhere else on the
+screen. You can also resize the coords box by dragging a corner, or delete
+it with the delete or backspace key. (The Initialize button will get the
+original coords box back).
+
+
+NOTES ON THE PANNER
+
+The panner window always displays the full frame buffer. Try setting the
+frame buffer configuration to a nonsquare frame buffer (e.g. imtcryo) and
+then displaying a square image (e.g. dev$pix) and the panner will show you
+exactly where the image has been loaded into the frame.
+
+The panner window uses two markers, one for the window border and one to
+mark the displayed region of the frame. Most of the usual marker keystrokes
+mentioned above apply to these markers as well, e.g. you can use MB1 to
+reposition on the panner window within the main image display window, or to
+drag the region marker within the panner (pan the image). Resizing the
+region marker zooms the image; this is a non-aspect constrained zoom.
+The panner window itself can be resized by dragging a corner with MB1.
+Typing delete or backspace anywhere in the panner window deletes the panner.
+
+A special case is MB2. Typing MB2 anywhere in the panner window pans the
+image to that point. This is analogous to typing MB2 in the main display
+window to pan the image.
+
+
+THE COORDS BOX
+
+Ximtool provides a limited notion of world coordinates, allowing frame
+buffer pixel coordinates and pixel values to be converted to some arbitrary
+client defined coordinate system. The coords box feature is used to display
+these world coordinates as the pointer is moved about in the image window.
+
+The quantities displayed in the coords box are X, Y, and Z: the X,Y world
+coordinates of the pointer, and Z, the world equivalent of the pixel value
+under the pointer. All coordinate systems are linear. The precision of a
+displayed quantity is limited by the range of values of the associated raw
+frame buffer value. For example, if the display window is 512x512 only 512
+coordinate values are possible in either axis (the positional precision can
+be increased however by zooming the image). More seriously, at most about
+200 pixel values can be displayed since this is the limit on the range of
+pixel values loaded into the frame buffer. If a display pixel is saturated
+a "+" will be displayed after the intensity value.
+
+The coords box is a marker (text marker) and it can be moved and resized
+with the pointer like any other marker.
+
+
+VIEWING THE IMAGE TITLE
+
+The title of the image loaded into the current display frame is displayed
+centered in the control area at the top of the main display window. If the
+title string is too long to be fully displayed it will be clipped at either
+end. To see the full title string, either resize the display window, or
+pop up the Info box. The Info box always displays the full image title.
+
+
+NOTES ON CLIENT-SERVER I/O
+
+As mentioned earlier ximtool allows clients to connect using any of three
+different communications domains: fifos, tcp/ip sockets, and unix domain
+sockets.
+
+By default ximtool will listen and accept connections on all three types of
+ports. This is fine if there is only one display server running on a host,
+but conflicts arise if multiple display servers try to listen on the same
+port. If this happens one needs to either disable a port, or change the
+address.
+
+ FIFOs The default fifos are /dev/imt1i and /dev/imt1o.
+ The resources input_fifo and output_fifo may be
+ set to use a different set of fifos. To disable
+ the fifo port entirely set input_fifo=none. The
+ fifos must be created and must have read and write
+ permission, before starting ximtool.
+
+ TCP/IP socket The default tcp/ip port is 5137. The resource
+ "port" may be set to set a different port. To
+ disable tcp/ip sockets completely set port=0.
+ If ximtool is terminated it may take a couple of
+ minutes before unix allows ximtool to use the
+ port again.
+
+ UNIX socket The default unix domain socket is /tmp/.IMT%d,
+ where %d is the user's UID number. Hence, each user
+ has a private unix domain socket, allowing multiple
+ ximtools to be run on the same host (but only one
+ per user unless the addresss is changed). To
+ disable unix domain sockets set unixaddr=none. The
+ server will automatically create and delete the unix
+ domain socket if none exists.
+
+In 2.10.3 beta-3 and later versions of IRAF the default action when
+connecting to the display server is to first try a unix domain socket
+connection using the socket /tmp/.IMT%d. If this fails the IRAF client
+tries to connect via the old style FIFOs /dev/imt1[io]. Hence, if ximtool
+is being used with only newer versions of IRAF and all connections are
+local, FIFOs and tcp/ip sockets can be disabled and different users can
+transparently run ximtool on the same host system.
+
+IRAF 2.10.3 or later uses the new ZFIOND network driver (described
+elsewhere) to connect to the server. The graphcap file defines how to
+connect to the server. This can be overridden however, by defining IMTDEV
+in the host environment. For example to connect to a TCP/IP socket on host
+foo.bar.edu, one could define
+
+ setenv IMTDEV inet:5137:foo.bar.edu
+
+before logging into IRAF.
+
+
+CUSTOM GUIs
+
+The default GUI of ximtool can be viewed by running ximtool as follows:
+
+ ximtool -defgui
+
+This will print the default builtin GUI to the standard output. If this
+output is saved in a file one can set the "gui" resource to point to this
+file, and when ximtool starts up it will use this GUI file instead of the
+builtin default GUI. The user can modify the GUI file as desired to
+customize the GUI. Since the full GUI of ximtool is encapsulated in the GUI
+file, ths is a very powerful option; one can generate quite a different
+program merely by modifying the GUI file, without need to recompile any code.
+
+
+PLANNED FUTURE WORK
+
+The following items are on the near term TODO list for ximtool.
+
+ o Print dialog. Will be used to print whatever is displayed in the
+ main image window, generating a variety of types of output.
+
+ o File load/save. For standalone use it is desirable to be able to
+ load the display from a disk file. The plan is to support at least
+ FITS for file input.
+
+ o Info box. The info box is due for a major rewrite (the existing
+ one isn't very useful).
+
+ o TclShell. This will allow experienced users to type Tcl commands
+ directly into the OBM interpreter at the heart of ximtool.
+
+ o Add global translation actions for a variety of GUI functions, so
+ that the user can bind keystrokes and function keys to these actions.
+
+ o Implement online help (question mark button in main window).
+
+ o "Snap to equal aspect" feature for use when resizing panner.
+
+There are still quite a few useful features that could be implemented.
+For example, a magnifier window (similar to the panner but displays a
+magnified view of the region under the cursor). Similarly, one could have
+a magnifier which pops up under the pointer. Split screen would be useful
+for comparing multiple frame buffers. A window into an alternate frame
+would be a useful alternative to frame blink. The Optimize button in the
+Enhancement portion of the control panel will be used to automatically
+compute the optimum contrast and brightness valus for the region for the
+image in the main display window.
+
+More dramatically, alternate, completely different GUIs for ximtool are
+possible, merely by loading a different GUI file. The planned SAOtng user
+interface (being developed by SAO) is an example of this. SAOtng will
+also provide enhanced client-server communications via an alternative,
+more general communications protocol based on the X selection mechanism.