1 /***********************************************************************/
2 /* Open Visualization Data Explorer                                    */
3 /* (C) Copyright IBM Corp. 1989,1999                                   */
4 /* ALL RIGHTS RESERVED                                                 */
5 /* This code licensed under the                                        */
6 /*    "IBM PUBLIC LICENSE - Open Visualization Data Explorer"          */
7 /***********************************************************************/
8 
9 #include <dxconfig.h>
10 
11 
12 
13 #ifndef _XmDX_H
14 #define _XmDX_H
15 
16 #include <Xm/Xm.h>
17 
18 #define MAX_POINTS 100
19 
20 /* Define resource strings for the ColorMapEditor Widget */
21 
22 
23 #define XmNdrawMode           "drawMode"
24 #define XmCDrawMode           "DrawMode"
25 #define XmNprintCP            "printCP"
26 #define XmCPrintCP            "PrintCP"
27 #define XmNbackgroundStyle "backgroundStyle"
28 #define XmCBackgroundStyle "BackgroundStyle"
29 #define XmNdisplayOpacity "displayOpacity"
30 #define XmCDisplayOpacity "DisplayOpacity"
31 #define XmNvalueMinimum	 "valueMinimum"
32 #define XmCValueMinimum	 "ValueMinimum"
33 #define XmNvalueMaximum	 "valueMaximum"
34 #define XmCValueMaximum	 "ValueMaximum"
35 #define XmNminEditable "minEditable"
36 #define XmNmaxEditable "maxEditable"
37 #ifndef XmCEditable
38     #define XmCEditable "Editable"
39 #endif
40 #define XmNdefaultColormap "defaultColormap"
41 #define XmCDefaultColormap "DefaultColormap"
42 #define XmNsaveFilename "saveFilename"
43 #define XmCSaveFilename "SaveFilename"
44 #define XmNopenFilename "openFilename"
45 #define XmCOpenFilename "OpenFilename"
46 #define XmCActivateCallback "ActivateCallback"
47 #define XmNconstrainVertical "constrainVertical"
48 #define XmCConstrainVertical "ConstrainVertical"
49 #define XmNconstrainHorizontal "constrainHorizontal"
50 #define XmCConstrainHorizontal "ConstrainHorizontal"
51 #define XmNtriggerCallback "triggerCallback"
52 #define XmCTriggerCallback "TriggerCallback"
53 
54 #define XmCR_MODIFIED	1
55 #define STRIPES 0
56 #define CHECKERBOARD 1
57 
58 /*
59  * Define resource strings for the Dial widget.
60  */
61 #define XmNincrementsPerMarker	"incrementsPerMarker"
62 
63 #define XmNnumMarkers		"numMarkers"
64 #define XmNmajorMarkerWidth	"majorMarkerWidth"
65 #define XmNminorMarkerWidth     "minorMarkerWidth"
66 #define XmNmajorPosition	"majorPosition"
67 #define XmNstartingMarkerPos	"startingMarkerPos"
68 #define XmNmajorMarkerColor    	"majorMarkerColor"
69 #define XmNminorMarkerColor     "minorMarkerColor"
70 #define XmNmajorMarkerThickness	"majorMarkerThickness"
71 #define XmNminorMarkerThickness "minorMarkerThickness"
72 
73 #define XmNindicatorWidth	"indicatorWidth"
74 #define XmNindicatorColor       "indicatorColor"
75 
76 #define XmNshading		"shading"
77 #define XmNshadePercentShadow	"shadePercentShadow"
78 #define XmNshadeIncreasingColor	"shadeIncreasingColor"
79 #define XmNshadeDecreasingColor "shadeDecreasingColor"
80 #define XmNincreasingDirection	"increasingDirection"
81 #define XmNdecimalPlaces	"decimalPlaces"
82 #define XmCDecimalPlaces	"DecimalPlaces"
83 
84 #define XmCMarkers		"Markers"
85 #define XmCMin			"Min"
86 #define XmCMax			"Max"
87 #define XmCInc			"Inc"
88 #define	XmCPos			"Pos"
89 #define XmCClockDirection	"ClockDirection"
90 
91 #define CLOCKWISE               0
92 #define COUNTERCLOCKWISE        1
93 
94 #define XmNstart	 "start"
95 #define XmCStart	 "Start"
96 #define XmNnext	 	 "next"
97 #define XmCNext	 	 "Next"
98 #define XmNcurrent	 "current"
99 #define XmCCurrent	 "Current"
100 #define XmNstop 	 "stop"
101 #define XmCStop 	 "Stop"
102 #define XmNvalueCallback "valueCallback"
103 #define XmCValueCallback "ValueCallback"
104 #define XmNlimitColor	 "limitColor"
105 #define XmCLimitColor	 "LimitColor"
106 #define XmNcurrentColor  "currentColor"
107 #define XmCCurrentColor  "CurrentColor"
108 #define XmNnextColor 	 "nextColor"
109 #define XmCNextColor     "NextColor"
110 #define XmNcurrentVisible "currentVisible"
111 #define XmCCurrentVisible "CurrentVisible"
112 
113 #define XmNframeBuffer		"frameBuffer"
114 #define XmCFrameBuffer		"FrameBuffer"
115 #define XmNmotionCallback	"motionCallback"
116 #define XmNsendMotion		"sendMotion"
117 #define XmCSendMotion		"SendMotion"
118 #define XmN8supported		"8supported"
119 #define XmN12supported		"12supported"
120 #define XmN15supported		"15supported"
121 #define XmN16supported		"16supported"
122 #define XmN24supported		"24supported"
123 #define XmN32supported		"32supported"
124 #define XmCSupported		"Supported"
125 
126 #define XmNdataType	 "dataType"
127 #define XmCDataType	 "DataType"
128 #define XmNcharPlaces	 "charPlaces"
129 #define XmCCharPlaces	 "CharPlaces"
130 #define XmNcenter	 "center"
131 #define XmCCenter	 "Center"
132 #define XmNnoEvents	 "noEvents"
133 #define XmCNoEvents	 "NoEvents"
134 #define XmNraised	 "raised"
135 #define XmCRaised	 "Raised"
136 #define XmNvisible	 "visible"
137 #define XmCVisible	 "Visible"
138 #define XmNfixedNotation "fixedNotation"
139 #define XmCFixedNotation "FixedNotation"
140 #define XmNoverflowCallback "overflowCallback"
141 
142 /*  Values given as double float or int  */
143 #define XmNdValue	 "dValue"
144 #define XmNfValue	 "fValue"
145 #define XmNiValue	 "iValue"
146 #define XmCDValue	 "DValue"
147 #define XmCFValue	 "FValue"
148 #define XmCIValue	 "IValue"
149 #define XmNdMinimum	 "dMinimum"
150 #define XmNfMinimum	 "fMinimum"
151 #define XmNiMinimum	 "iMinimum"
152 #define XmCDMinimum	 "DMinimum"
153 #define XmCFMinimum	 "FMinimum"
154 #define XmCIMinimum	 "IMinimum"
155 #define XmNdMaximum	 "dMaximum"
156 #define XmNfMaximum	 "fMaximum"
157 #define XmNiMaximum	 "iMaximum"
158 #define XmCDMaximum	 "DMaximum"
159 #define XmCFMaximum	 "FMaximum"
160 #define XmCIMaximum	 "IMaximum"
161 
162 #define INTEGER	0
163 #define FLOAT	1
164 #define	DOUBLE	2
165 
166 #define XmNtuples               "tuples"
167 #define XmNvectors              "vectors"
168 #define XmNreadonlyVectors      "readonlyVectors"
169 #define XmNvectorCount          "vectorCount"
170 #define XmNvectorSpacing        "vectorSpacing"
171 #define XmNscrolledWindow       "scrolledWindow"
172 #define XmNscrolledWindowWidget "scrolledWindowWidget"
173 #define XmNminColumnWidth	"minColumnWidth"
174 #define XmCMinColumnWidth	"MinColumnWidth"
175 #ifndef XmNselectCallback
176 #  define XmNselectCallback       "selectCallback"
177 #endif
178 
179 #define XmNdisplayGlobe			"displayGlobe"
180 #define XmCDisplayGlobe			"DisplayGlobe"
181 #define XmNlookAtAngle			"lookAtAngle"
182 #define XmCLookAtAngle			"LookAtAngle"
183 #define XmNlookAtDirection		"lookAtDirection"
184 #define XmCLookAtDirection		"LookAtDirection"
185 #define XmNnavigateDirection		"navigateDirection"
186 #define XmCNavigateDirection		"NavigateDirection"
187 #define XmNtranslateSpeed		"translateSpeed"
188 #define XmCTranslateSpeed		"TranslateSpeed"
189 #define XmNrotateSpeed			"rotateSpeed"
190 #define XmCRotateSpeed			"RotateSpeed"
191 #define XmNnewImage			"newImage"
192 #define XmCNewImage			"NewImage"
193 #define XmNconstrainCursor		"XmNconstrainCursor"
194 #define XmCConstrainCursor		"XmConstrainCursor"
195 #define XmNoverlayExposure		"XmNoverlayExposure"
196 #define XmCOverlayExposure		"XmCOverlayExposure"
197 #define XmNoverlayWid                   "overlayWid"
198 #define XmCOverlayWid                   "OverlayWid"
199 #define XmNmode				"mode"
200 #define XmCMode				"Mode"
201 #define XmNpicturePixmap		"picturePixmap"
202 #define XmCPicturePixmap		"PicturePixmap"
203 #define XmNshowRotatingBBox		"showRotatingBBox"
204 #define XmCShowRotatingBBox		"ShowRotatingBBox"
205 #define XmNrotationCenter		"rotationCenter"
206 #define XmCRotationCenter		"RotationCenter"
207 #define XmNbasis			"basis"
208 #define XmCBasis			"Basis"
209 #define XmNzIncrement			"zIncrement"
210 #define XmCZIncrement			"XIncrement"
211 #define XmNboxGrey			"boxGrey"
212 #define XmCBoxGrey			"BoxGrey"
213 #define XmNselectedInCursorColor	"selectedInCursorColor"
214 #define XmNselectedOutCursorColor	"selectedOutCursorColor"
215 #define XmCSelectedCursorColor		"SelectedCursorColor"
216 #define XmNunselectedInCursorColor	"unselectedInCursorColor"
217 #define XmNunselectedOutCursorColor	"unselectedOutCursorColor"
218 #define XmCUnselectedCursorColor	"UnselectedCursorColor"
219 #define XmNpictureTransformation        "pictureTransformation"
220 #define XmCPictureTransformation        "PictureTransformation"
221 #define XmNpictureCursorColors          "pictureCursorColors"
222 #define XmCPictureCursorColors          "PictureCursorColors"
223 #define XmNpictureCursorSize            "pictureCursorSize"
224 #define XmCPictureCursorSize            "PictureCursorSize"
225 #define XmNpictureCursorSpeed           "pictureCursorSpeed"
226 #define XmCPictureCursorSpeed           "PictureCursorSpeed"
227 #define XmNglobeRadius                  "globeRadius"
228 #define XmCGlobeRadius 	                "GlobeRadius"
229 #define XmNcursorShape                  "cursorShape"
230 #define XmCCursorShape                  "CursorShape"
231 #define XmNcursorCallback		"cursorCallback"
232 #define XmNpickCallback			"pickCallback"
233 #define XmNrotationCallback             "rotationCallback"
234 #define XmNzoomCallback       		"zoomCallback"
235 #define XmNroamCallback       		"roamCallback"
236 #define XmNnavigateCallback 		"navigateCallback"
237 #define XmNclientMessageCallback       	"clientMessageCallback"
238 #define XmNpropertyNotifyCallback      	"propertyNotifyCallback"
239 #define XmNmodeCallback       		"modeCallback"
240 #define XmNundoCallback       		"undoCallback"
241 #define XmNkeyCallback       		"keyCallback"
242 
243 #define XmNULL_MODE 	   	0
244 #define XmCURSOR_MODE      	1
245 #define XmROTATION_MODE    	2
246 #define XmZOOM_MODE	 	3
247 #define XmPANZOOM_MODE	 	4
248 #define XmROAM_MODE	   	5
249 #define XmNAVIGATE_MODE  	6
250 #define XmPICK_MODE 		7
251 
252 #define XmPCR_CREATE	   	0
253 #define XmPCR_DELETE	   	1
254 #define XmPCR_MOVE	   	2
255 #define XmPCR_SELECT	   	3
256 #define XmPCR_DRAG	   	4
257 #define XmPCR_TRANSLATE_SPEED	5
258 #define XmPCR_ROTATE_SPEED	6
259 #define XmPCR_MODE		7
260 #define XmPCR_UNDO		8
261 #define XmPCR_KEY		9
262 
263 #define XmCR_NUM_WARN_DP_INT		0
264 #define XmCR_NUM_WARN_NO_NEG		1
265 #define XmCR_NUM_WARN_INVALID_CHAR	2
266 #define XmCR_NUM_WARN_NO_FLOAT		3
267 #define XmCR_NUM_WARN_NO_EXPONENT	4
268 #define XmCR_NUM_WARN_EXCESS_PRECISION	5
269 #define XmCR_NUM_WARN_ABOVE_MAX		6
270 #define XmCR_NUM_WARN_BELOW_MIN		7
271 #define XmCR_NUM_WARN_BAD_INPUT		8
272 
273 #define XmCONSTRAIN_NONE   0
274 #define XmCONSTRAIN_X	   1
275 #define XmCONSTRAIN_Y	   2
276 #define XmCONSTRAIN_Z	   3
277 
278 #define XmSLOW_CURSOR	   0
279 #define XmMEDIUM_CURSOR	   1
280 #define XmFAST_CURSOR	   2
281 
282 #define FRONT		1
283 #define OFF_FRONT	2
284 #define BACK		3
285 #define OFF_BACK	4
286 #define TOP		5
287 #define OFF_TOP		6
288 #define BOTTOM		7
289 #define OFF_BOTTOM	8
290 #define RIGHT		9
291 #define OFF_RIGHT	10
292 #define LEFT		11
293 #define OFF_LEFT	12
294 #define DIAGONAL	13
295 #define OFF_DIAGONAL	14
296 
297 #define XmFORWARD	0
298 #define XmBACKWARD	1
299 
300 #define XmTURN_LEFT	0
301 #define XmTURN_RIGHT	1
302 #define XmTURN_UP	2
303 #define XmTURN_DOWN	3
304 #define XmTURN_BACK	4
305 
306 #define XmLOOK_LEFT	0
307 #define XmLOOK_RIGHT	1
308 #define XmLOOK_UP	2
309 #define XmLOOK_DOWN	3
310 #define XmLOOK_BACKWARD	4
311 #define XmLOOK_FORWARD	5
312 
313 #define XmNmarkColor	"markColor"
314 #define XmNminValue	"minValue"
315 #define XmCMinValue	"MinValue"
316 #define XmNmaxValue	"maxValue"
317 #define XmNxMargin	"xMargin"
318 #define XmCXMargin	"XMargin"
319 #define XmNyMargin	"yMargin"
320 #define XmCYMargin	"YMargin"
321 #define XmNalignOnDrop	"alignOnDrop"
322 #define XmCAlignOnDrop	"AlignOnDrop"
323 #define XmNjumpToGrab	"jumpToGrab"
324 #define XmCJumpToGrab	"JumpToGrab"
325 #define XmNallowInput	"allowInput"
326 #define XmCAllowInput	"AllowInput"
327 
328 /*
329  * Define new resource strings for the Number widget.
330  */
331 #define XmNwarningCallback "warningCallback"
332 #define XmNcrossOver		"crossOver"
333 #define XmCCrossOver		"CrossOver"
334 #define XmNcrossUnder		"crossUnder"
335 #define XmCCrossUnder		"CrossUnder"
336 
337 /*
338  * Define new resource strings for the Stepper widget.
339  */
340 #define XmNdValueStep	 "dValueStep"
341 #define XmCDValueStep	 "DValueStep"
342 #define XmNfValueStep	 "fValueStep"
343 #define XmCFValueStep	 "FValueStep"
344 #define XmNiValueStep	 "iValueStep"
345 #define XmCIValueStep	 "IValueStep"
346 #define XmNdigits	 "digits"
347 #define XmCDigits	 "Digits"
348 #define XmNtime		 "time"
349 #define XmCTime		 "Time"
350 #define XmNtimeDelta	 "timeDelta"
351 #define XmCTimeDelta	 "TimeDelta"
352 #define XmNrollOver	 "rollOver"
353 #define XmCRollOver	 "RollOver"
354 /*  Directions use Xm.h Xm_ARROW_UP, etc.  */
355 #define XmNincreaseDirection "increaseDirection"
356 #define XmCIncreaseDirection "IncreaseDirection"
357 #define XmNstepCallback	 "stepCAllback"
358 #define XmCStepCallback	 "StepCAllback"
359 
360 #define	VCR_FORWARD	0
361 #define	VCR_BACKWARD 	1
362 #define	VCR_LOOP 	2
363 #define	VCR_PALINDROME 	3
364 #define	VCR_STEP 	4
365 #define	VCR_COUNT 	5
366 #define	VCR_STOP 	6
367 #define	VCR_PAUSE 	7
368 #define	VCR_FORWARD_STEP  8
369 #define	VCR_BACKWARD_STEP 9
370 
371 #define	VCR_NOTHING	100
372 
373 #define	XmCR_NEXT	0
374 #define XmCR_CURRENT	1
375 #define	XmCR_START	2
376 #define	XmCR_STOP	4
377 #define	XmCR_MIN	5
378 #define	XmCR_MAX	6
379 
380 /* define resource strings */
381 
382 #define	XmNactionCallback	"action_callback"
383 #define	XmNframeCallback	"frame_callback"
384 #define	XmNframeSensitive	"frameSensitive"
385 #define	XmNminSensitive		"minSensitive"
386 #define	XmNmaxSensitive		"maxSensitive"
387 #define	XmNincSensitive		"incSensitive"
388 
389 #define	XmCActionCallback	"Action_callback"
390 #define	XmCFrameCallback	"Frame_callback"
391 #define	XmCFrameSensitive	"FrameSensitive"
392 #define	XmCMinSensitive		"MinSensitive"
393 #define	XmCMaxSensitive		"MaxSensitive"
394 #define	XmCIncSensitive		"IncSensitive"
395 
396 #define XmNforwardButtonState	"forwardButtonState"
397 #define XmCForwardButtonState	"ForwardButtonState"
398 #define XmNbackwardButtonState	"backwardButtonState"
399 #define XmCBackwardButtonState	"BackwardButtonState"
400 #define XmNloopButtonState	"loopButtonState"
401 #define XmCLoopButtonState	"LoopButtonState"
402 #define XmNpalindromeButtonState	"palindromeButtonState"
403 #define XmCPalindromeButtonState	"PalindromeButtonState"
404 #define XmNstepButtonState	"stepButtonState"
405 #define XmCStepButtonState	"StepButtonState"
406 #define XmNcountButtonState	"countButtonState"
407 #define XmCCountButtonState	"CountButtonState"
408 
409 #define XmRWorkspaceType        "WorkspaceType"
410 
411 #define XmALIGNMENT_NONE	100
412 
413 #define XmNautoArrange		"autoArrange"
414 #define XmCAutoArrange		"AutoArrange"
415 #define XmNforceRoute    	"forceRoute"
416 #define XmCForceRoute    	"ForceRoute"
417 #define XmNcollisionSpacing    "collisionSpacing"
418 #define XmCCollisionSpacing    "CollisionSpacing"
419 #define XmNhaloThickness       "haloThickness"
420 #define XmCHaloThickness       "HaloThickness"
421 #define XmNpositionChangeCallback       "positionChangeCallback"
422 #define XmCPositionChangeCallback       "PositionChangeCallback"
423 #define XmNerrorCallback       "errorCallback"
424 #define XmCErrorCallback       "ErrorCallback"
425 #define XmNaccentCallback       "accentCallback"
426 #define XmCAccentCallback       "AccentCallback"
427 #define XmNaccentColor          "accentColor"
428 #define XmCAccentColor          "AccentColor"
429 #define XmNaccentPolicy         "accentPolicy"
430 #define XmCAccentPolicy         "AccentPolicy"
431 #define XmNallowMovement        "allowMovement"
432 #define XmCAllowMovement        "AllowMovement"
433 #define XmNallowVerticalResizing        "allowVerticalResizing"
434 #define XmNallowHorizontalResizing      "allowHorizontalResizing"
435 #define XmNstretchOnResize      "stretchOnResize"
436 #define XmCStretchOnResize      "StretchOnResize"
437 #define XmNpinLeftRight   	"pinLeftRight"
438 #define XmNpinTopBottom   	"pinTopBottom"
439 #define XmCPinSides	        "PinSides"
440 #define XmCAllowResizing        "AllowResizing"
441 #define XmNbackgroundCallback   "backgroundCallback"
442 #define XmCDrawGrid             "DrawGrid"
443 #define XmNgridHeight           "gridHeight"
444 #define XmCGridHeight           "GridHeight"
445 #define XmNgridWidth            "gridWidth"
446 #define XmCGridWidth            "GridWidth"
447 #define XmNhorizontalAlignment  "horizontalAlignment"
448 #define XmNhorizontalDrawGrid   "horizontalDrawGrid"
449 #define XmNid                   "id"
450 #define XmCId                   "Id"
451 #define XmNinclusionPolicy      "inclusionPolicy"
452 #define XmCInclusionPolicy      "InclusionPolicy"
453 #define XmNlineThickness        "lineThickness"
454 #define XmCLineThickness        "LineThickness"
455 #define XmNmanhattanRoute       "manhattanRoute"
456 #define XmCManhattanRoute       "ManhattanRoute"
457 #define XmNoutlineType          "outlineType"
458 #define XmCOutlineType          "OutlineType"
459 #define XmNplacementPolicy      "placementPolicy"
460 #define XmCPlacementPolicy      "PlacementPolicy"
461 #define XmNresizingCallback     "resizingCallback"
462 #define XmCResizingCallback     "ResizingCallback"
463 #define XmCSelectionCallback    "SelectionCallback"
464 #define XmNselectable           "selectable"
465 #define XmCSelectable           "Selectable"
466 #define XmNselected             "selected"
467 #define XmCSelected             "Selected"
468 #define XmNsnapToGrid           "snapToGrid"
469 #define XmCSnapToGrid           "SnapToGrid"
470 #define XmNsortPolicy           "sortPolicy"
471 #define XmNuserCallback         "userCallback"
472 #define XmCUserCallback         "UserCallback"
473 #define XmNverticalAlignment    "verticalAlignment"
474 #define XmNverticalDrawGrid     "verticalDrawGrid"
475 #define XmNbutton1PressMode	"button1PressMode"
476 #define XmCButton1PressMode	"Button1PressMode"
477 #define XmNwidgetTolerance	"widgetTolerance"
478 #define XmCWidgetTolerance	"WidgetTolerance"
479 #define XmNlineTolerance	"lineTolerance"
480 #define XmCLineTolerance	"LineTolerance"
481 #define XmNlineDrawingEnabled	"lineDrawingEnabled"
482 #define XmCLineDrawingEnabled	"LineDrawingEnabled"
483 #define XmNpreventOverlap	"preventOverlap"
484 
485 #if !defined(XmNselectionCallback)
486 #define XmNselectionCallback    "selectionCallback"
487 #endif
488 #if !defined(XmNposition)
489 #define XmNposition		"position"
490 #endif
491 #if !defined(XmNarrowSize)
492 #define XmNarrowSize	"arrowSize"
493 #endif
494 #if !defined(XmCArrowSize)
495 #define XmCArrowSize	"ArrowSize"
496 #endif
497 /*
498  * Workspace placement policy constants.
499  * ...added 3/95 to replace integers used.  The values
500  * 0,1,2 were hardcoded throughout WorkspaceW.c, making the code difficult to read.
501  * XmSPACE_WARS_SELECTED_STAYS is the default and is used in the vpe.
502  * The use of these constants is for deciding who should move if there is overlap
503  * among child widgets in the Workspace.
504  * - Martin
505  */
506 #define XmSPACE_WARS_SELECTED_STAYS             2
507 #define XmSPACE_WARS_LEFT_MOST_STAYS            1
508 #define XmSPACE_WARS_SELECTED_MIGRATE           0
509 
510 /*
511  * constraint resources provided by the workspace widget which hold on to the
512  * form constraints.  The values are stuck into the form class when turning
513  * autoArrange on.
514  */
515 #define XmNwwLeftAttachment   "wwLeftAttachment"
516 #define XmNwwRightAttachment  "wwRightAttachment"
517 #define XmNwwTopAttachment    "wwTopAttachment"
518 #define XmNwwBottomAttachment "wwBottomAttachment"
519 #define XmNwwLeftPosition     "wwLeftPosition"
520 #define XmNwwRightPosition    "wwRightPosition"
521 #define XmNwwTopPosition      "wwTopPosition"
522 #define XmNwwBottomPosition   "wwBottomPosition"
523 #define XmNwwLeftOffset       "wwLeftOffset"
524 #define XmNwwRightOffset      "wwRightOffset"
525 #define XmNwwTopOffset        "wwTopOffset"
526 #define XmNwwBottomOffset     "wwBottomOffset"
527 #define XmNwwLeftWidget       "wwLeftWidget"
528 #define XmNwwRightWidget      "wwRightWidget"
529 #define XmNwwTopWidget        "wwTopWidget"
530 #define XmNwwBottomWidget     "wwBottomWidget"
531 
532 #define OFF     0
533 #define ON      1
534 
535 #define XmINCLUDE_ALL           0
536 #define XmINCLUDE_ANY           1
537 #define XmINCLUDE_CENTER        2
538 #define XmACCENT_BACKGROUND     2
539 #define XmACCENT_BORDER         1
540 #define XmACCENT_NONE           0
541 #define XmCR_SELECT             90
542 #define XmCR_ACCENT             91
543 #define XmCR_BACKGROUND         92
544 #define XmCR_ERROR		93
545 #define XmCR_USER_NOTIFY	94
546 #define XmOUTLINE_EACH          70
547 #define XmOUTLINE_ALL           71
548 #define XmOUTLINE_PLUS          72
549 #define XmDRAW_NONE             0
550 #define XmDRAW_HASH             1
551 #define XmDRAW_LINE             2
552 #define XmDRAW_OUTLINE          3
553 
554 
555 /*
556 // For alpha (and any other architecture where sizeof(double) <= sizeof(long)),
557 // pass double resources by value.
558 // For all others, pass by reference. Xt checks to see if XtArgType
559 // (usually defined as a long) is shorter than the type being passed in.  If
560 // it is, it does a "pass by reference", else "pass by value"
561 //
562 // XtDoubleSetArg is to be used in place of XtSetArg when a double resource
563 //                is being set.
564 // DoubleVal is to be used in XtVaSetValues, for example:
565 //	XtVaSetValues(w, XmNdValue, DoubleVal(dval, l), NULL);
566 //
567 // Note DoubleVal needs an XtArgVal as it's second parameter in case we
568 // are using it twice in the same XtVaSetValues.  In this case, two
569 // separate and distinct XtArgVal params should be supplied
570 //
571 */
572 #if defined(alphax) || defined(__ia64__) || defined(__LP64__)
573 #define PASSDOUBLEVALUE 1
574 #endif
575 
576 #if PASSDOUBLEVALUE
577 #define DoubleSetArg(a, b, c)				\
578 	(a).name = (b);					\
579 	memcpy(&((a).value), &c, sizeof(double));
580 
581 #define DoubleVal(a, dx_l)				\
582 	(memcpy(&dx_l, &a, sizeof(double)), dx_l)
583 #else
584 #define DoubleSetArg(a, b, c)				\
585 	(a).name = (b);					\
586 	(a).value =  (XtArgVal)&(c);
587 
588 #define DoubleVal(a, l) &a
589 
590 #endif
591 #endif
592