1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222
|
XIMTOOL GUI
1. CONTROL PANEL
1.1 View
current frame: radio button
next frame button
prev frame button
center: button
fitframe: button
flip X: toggle
flip Y: toggle
flip XY: button
zoom factor: buttons for -8 -4 -2 1 +2 +4 +8 in out
or unzoom, zoom in, zoom out (buttons)
-- Frame 1 --
X center: 123.45
Y center: 123.45
X scale: 4
Y scale: 4
1.2 Enhancement
enhancement: string scrolled list or 2 level menu
1.3 Blink
blink frames: several cycle buttons, reset button
blink rate: numeric display, menu select
register: button
match: button
blink: toggle on/off
1.4 Options
panner: toggle on/off
coords box: toggle on/off
autoscale: toggle on/off
antialias: toggle on/off
1.5 Other
initialize: button
normalize: button
done: button
2. INFO BOX
version number
gui identification
configuration: number of frames, frame size
image title: string
help: scrolled text
messages: text line
output: scrolled text
3. COMMAND ENTRY
command entry: text (Tcl commands)
control: user assignable buttons, text output
---------------------------
Original Notes
XIMTOOL
Specifications
1 - 4 frame buffers
frame buffers any size, selected from config file
all N frames are the same size
frame buffers are 8 bits deep
each frame buffer has its own independent zoom/pan, colortable, wcs, etc.
attributes
Frame Buffer Strategy
Frame buffer pixel array is a gterm raster (ximage)
Memory model: fast nice-to-server small
If server pixmaps are being used the frame raster is mapped to a gterm
server pixmap raster the size of the display window
The server pixmap raster is mapped to the screen with a 1-1 mapping
Zoom and pan are controlled by the ximage->pixmap mapping
The frame being displayed is controlled by the pixmap->screen mapping
If server pixmaps are not used the first raster will be mapped
either to another ximage raster, or directly to the screen.
The first option still provides a reasonable blink capability,
the second will be slow if zoom is in effect.
Program Structure
main
obm <- gui file
gui program
widget tree
iisio
gterm widget
The GUI program handles:
keyboard and function key input
pointer input
frame selection, blink, zoom/pan, colortable selection, windowing
control panel options
The IISIO section handles:
communication with the client
frame buffer configuration
read/write frame buffer
frame selection
cursor readback
Optional features
Magnifier - region under the cursor
Split screen - controlled by popup control panel
Split region - display alternate frame in region under cursor
Zoom box - display de-zoomed or zoomed subregion in a marker
Load/save file (sunraster or fits)
CLIENT STATE
nframes number of frame buffers
frame size frame buffer width, height
frame depth frame buffer depth, bits
frame number current display frame
frame event something frame related changed (string)
frame title title of current frame
enhancement color enhancement selected (name offset slope)
cursor mode cursor mode on/off
GUI SPECIFICATION
Menu bar
File ->
View ->
Options ->
File menu
Load
Save
Print
Quit
View menu
Next frame
Prev frame
Zoom
Unzoom
Normalize
Flip X
Flip Y
Blink [on|off] **
Options menu
Enhancement ->
grayscale
pseudocolor
(etc.)
Fitframe
Match colortables
Autoscale {on off}
Coords {on off}
Locator {on off} **
Other (popup) **
Exit cursor mode
Initialize
Title display **
horiz scrolled text
button to popup full label
Buttons
forward
back
flip X
flip Y
zoom/dezoom
Help **
Marker menu
Zoom
Fill
Print
Attributes -> **
Destroy
Image menu
Zoom
Dezoom
Unzoom
Pan
Marker ->
marker type
Enhancement ->
grayscale
pseudocolor
(etc.)
Next
Prev
oo
|