Mri.wcChildren:        BooleanTransform
Mri.geometry:         300x400

! see LinearTransform for additional comments on why things are the
! way they are.


!*BooleanTransform.wcConstructor:     XtCreateTopLevelShell
*BooleanTransform.wcConstructor:     XtCreateTransientShell
*BooleanTransform.wcChildren:      bb
*BooleanTransform.title:           Boolean Transformation

*BooleanTransform.bb.wcClassName:  XmBulletinBoard
*BooleanTransform.bb.wcChildren:   table

*BooleanTransform.bb.table.wcConstructor:     CreateTable
*BooleanTransform.bb.table.wcChildren:       lab1, lab2, bmenu, constant, ok, \
						cancel
!*BooleanTransform.bb.table.layout:       lab1 0 2 1 2; bmenu 1 0 1 5; \
!	                                 lab2 2 2 1 1; constant 2 3 1 1;\
!					 ok 1 6 1 1;  cancel 2 6 1 1
!
*BooleanTransform.bb.table.layout:       lab1 0 2 2 2; bmenu 2 0 2 5; \
	                                 lab2 4 2 2 1 Hhw; constant 4 3 2 1 Hhw;\
					 ok  0 5 3 1 Hh;  cancel 4 5 3 1 Hh


*BooleanTransform.bb.table.lab1.wcClassName:     XmLabel
*BooleanTransform.bb.table.lab1.labelString:     Data Value

*BooleanTransform.bb.table.lab2.wcClassName:     XmLabel
*BooleanTransform.bb.table.lab2.labelString:     Constant Value

*BooleanTransform.bb.table.constant.wcClassName:     XmText
*BooleanTransform.bb.table.constant.value:  	0
*BooleanTransform.bb.table.constant.losingFocusCallback:  	\
	     	     UpdateTransformDefaultCB


*BooleanTransform.bb.table.bmenu.wcConstructor:  XmCreateRadioBox
*BooleanTransform.bb.table.bmenu.wcChildren:     b0, b1, b2, b3, b4, b5

! Here we are pulling the same stunt as in TransformFunctionMenu: reading
! the number of the selected function (X) from the widget name, of the form
! bX.

*BooleanTransform.bb.table.bmenu.b0.wcClassName:  XmToggleButtonGadget
*BooleanTransform.bb.table.bmenu.b0.labelString:  ==
*BooleanTransform.bb.table.bmenu.b0.armCallback:  \
	UpdateTransformDefaultCB

*BooleanTransform.bb.table.bmenu.b1.wcClassName:  XmToggleButtonGadget
*BooleanTransform.bb.table.bmenu.b1.labelString:  <
*BooleanTransform.bb.table.bmenu.b1.armCallback:  \
	UpdateTransformDefaultCB

*BooleanTransform.bb.table.bmenu.b2.wcClassName:  XmToggleButtonGadget
*BooleanTransform.bb.table.bmenu.b2.labelString:  >
*BooleanTransform.bb.table.bmenu.b2.armCallback:  \
	UpdateTransformDefaultCB

*BooleanTransform.bb.table.bmenu.b3.wcClassName:  XmToggleButtonGadget
*BooleanTransform.bb.table.bmenu.b3.labelString:  <=
*BooleanTransform.bb.table.bmenu.b3.armCallback:  \
	UpdateTransformDefaultCB

*BooleanTransform.bb.table.bmenu.b4.wcClassName:  XmToggleButtonGadget
*BooleanTransform.bb.table.bmenu.b4.labelString:  >=
*BooleanTransform.bb.table.bmenu.b4.armCallback:  \
	UpdateTransformDefaultCB

*BooleanTransform.bb.table.bmenu.b5.wcClassName:  XmToggleButtonGadget
*BooleanTransform.bb.table.bmenu.b5.labelString:  !=
*BooleanTransform.bb.table.bmenu.b5.armCallback:  \
	UpdateTransformDefaultCB

*BooleanTransform.bb.table.ok.wcConstructor:      XmCreatePushButton
*BooleanTransform.bb.table.ok.labelString:        OK
*BooleanTransform.bb.table.ok.activateCallback:   doneRunningCB, \
	WcPopdownCB(*BooleanTransform),\
	 WcPopdownCB(*TransformFunctionMenu),\
	 WcSetSensitiveCB(*TransformFunctionMenu),\
	WcSetValueCB(*BooleanTransform.bb.table.constant.value:  	0),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b0.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b1.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b2.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b3.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b4.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b5.set: False)


*BooleanTransform.bb.table.cancel.wcConstructor:      XmCreatePushButton
*BooleanTransform.bb.table.cancel.labelString:        Cancel
! set all values back to originals
*BooleanTransform.bb.table.cancel.activateCallback:   \
	CancelledCB,\
	WcPopdownCB(*BooleanTransform),\
	WcSetSensitiveCB(*TransformFunctionMenu),\
	WcSetValueCB(*BooleanTransform.bb.table.constant.value:  	0),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b0.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b1.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b2.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b3.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b4.set: False),\
	WcSetValueCB(*BooleanTransform.bb.table.bmenu.b5.set: False)

