PRO qLine_XBase, state, xysize=xysize @compile_opt.pro ; On error, return to caller IF widget_info(state.wid_xbase, /valid) THEN $ widget_control, state.wid_xbase, /destroy state.wid_xbase = widget_base(state.wid_top, /column) dummy1 = widget_base(state.wid_xbase, /row) dummy2 = widget_base(dummy1, /column) dummy3 = widget_base(dummy2, /column) dummy4 = widget_base(dummy3, /column, /nonexclusive) state.wid_ymd = widget_button(dummy4, value='ymd' , uvalue=0B, sensitive=IsTime(*state.t)) state.wid_ydoy = widget_button(dummy4, value='ydoy', uvalue=0B, sensitive=IsTime(*state.t)) dummy3 = widget_base(dummy2, /row) dummy4 = widget_base(dummy3, /column) state.wid_degree = cw_field(dummy4, value=1, /integer, $ uvalue=replicate(BadValue(0.0),2), title='Fit Deg', /row, /return_ev, xsize=3) ;dummy4 = widget_base(dummy3) state.wid_scalefit = cw_field(dummy4, value=0, /float, $ title='Scale', /row, /return_ev, xsize=3) state.wid_badvalue = cw_field(dummy4, value='NaN', /string, $ title='Bad Value', /row, /return_ev, xsize=3) CASE IsType(xysize, /defined) OF 0: BEGIN widget_control, state.wid_xysize[0], get_value=xsize widget_control, state.wid_xysize[1], get_value=ysize END 1: BEGIN xsize = xysize[0] ysize = xysize[1] END ENDCASE state.wid_draw = widget_draw(dummy1, xsize=xsize, ysize=ysize, frame=4, /button_events, sensitive=0) RETURN & END