   
PRO Wbox_event,event

COMMON sort, sv

WIDGET_CONTROL,event.id,GET_UVALUE=uval
WIDGET_CONTROL,event.id,GET_VALUE=val
WIDGET_CONTROL,event.top,GET_UVALUE=uvs

CASE uval OF

     "OK": BEGIN

            WIDGET_CONTROL,uvs.sp1,GET_VALUE=sx0
            WIDGET_CONTROL,uvs.sp2,GET_VALUE=sxbl  
            WIDGET_CONTROL,uvs.sp3,GET_VALUE=sy0
            WIDGET_CONTROL,uvs.sp4,GET_VALUE=sybl  

            sv.x0 = STRCOMPRESS(sx0(0),/REMOVE_ALL)
            sv.xbl = STRCOMPRESS(sxbl(0),/REMOVE_ALL)
            sv.y0 = STRCOMPRESS(sy0(0),/REMOVE_ALL)
            sv.ybh = STRCOMPRESS(sybl(0),/REMOVE_ALL)
            sv.yn = 'Ok'
            WIDGET_CONTROL,event.top,/DESTROY
           END
           
   "RC": BEGIN

            WIDGET_CONTROL,uvs.sp1,GET_VALUE=sx0
            WIDGET_CONTROL,uvs.sp2,GET_VALUE=sxbl  
            WIDGET_CONTROL,uvs.sp3,GET_VALUE=sy0
            WIDGET_CONTROL,uvs.sp4,GET_VALUE=sybl  

            sv.x0 = STRCOMPRESS(sx0(0),/REMOVE_ALL)
            sv.xbl = STRCOMPRESS(sxbl(0),/REMOVE_ALL)
            sv.y0 = STRCOMPRESS(sy0(0),/REMOVE_ALL)
            sv.ybh = STRCOMPRESS(sybl(0),/REMOVE_ALL)

	    END

      "NO": BEGIN

            WIDGET_CONTROL,event.top,/DESTROY
            sv.yn = 'No'
            res = wbox(sv.x0,sv.y0,sv.xbl,sv.ybh)
           END

 "CANCEL": BEGIN

            WIDGET_CONTROL,event.top,/DESTROY
            sv.yn = 'Cancel'
           END

ELSE: donothing=0
ENDCASE


END

function Wbox,x0,y0,xbl,ybh

COMMON sort, sv

IF XRegistered("Wbox") NE 0 THEN RETURN,-1

sv = { x0:x0, y0:y0, xbl:xbl, ybh:ybh, yn:'Ok'}

Wbox_Base = WIDGET_BASE(TITLE = ' Wbox',/FRAME,/COLUMN)

bc = WIDGET_BASE(Wbox_Base,/COLUMN,/FRAME)
w63 = WIDGET_BASE(bc, /ROW)
box_image = " Box_Image("+STRCOMPRESS(STRING(xbl),/REMOVE_ALL)+","+ $ 
			  STRCOMPRESS(STRING(ybh),/REMOVE_ALL)+")"
w_label = WIDGET_LABEL(w63,VALUE=box_image)

w64 = WIDGET_BASE(bc, /ROW)
w_label = WIDGET_LABEL(w64,VALUE="  x0:  ")
sp1 = WIDGET_TEXT(w64,XSIZE=5,/EDITABLE,VALUE=STRCOMPRESS(STRING(sv.x0),/REMOVE_ALL), UVALUE="RC")
w_label = WIDGET_LABEL(w64,VALUE="  xl:  ")
sp2 = WIDGET_TEXT(w64,XSIZE=5,/EDITABLE,VALUE=STRCOMPRESS(STRING(sv.xbl),/REMOVE_ALL),UVALUE="RC")

w65 = WIDGET_BASE(bc, /ROW)
w_label = WIDGET_LABEL(w65,VALUE="  y0:  ")
sp3 = WIDGET_TEXT(w65,XSIZE=5,/EDITABLE,VALUE=STRCOMPRESS(STRING(sv.y0),/REMOVE_ALL), UVALUE="RC")
w_label = WIDGET_LABEL(w65,VALUE="  yl:  ")
sp4 = WIDGET_TEXT(w65,XSIZE=5,/EDITABLE,VALUE=STRCOMPRESS(STRING(sv.ybh),/REMOVE_ALL),UVALUE="RC")

bb = WIDGET_BASE(Wbox_Base,/ROW)
b0 = WIDGET_BUTTON(bb,VALUE=' Yes  ',UVALUE='OK')
b1 = WIDGET_BUTTON(bb,VALUE=' No   ',UVALUE='NO')
b2 = WIDGET_BUTTON(bb,VALUE=' Cancel ',UVALUE='CANCEL')

ids = { sp1:sp1, $
        sp2:sp2, $
        sp3:sp3, $
        sp4:sp4  $
      }

WIDGET_CONTROL,Wbox_Base,/REALIZE

WIDGET_CONTROL, Wbox_Base, SET_UVALUE = ids, /NO_COPY

XMANAGER,"Wbox",Wbox_Base, $
		GROUP_LEADER=GROUP,/MODAL

return,sv
END
