pro shape,event ;Author: Rick Pernak, NASA Goddard Space Flight Center ;get widget values (data structure) widget_control,event.top,get_uvalue=datptr dat = *datptr ;get shape names (strings) widget_control,dat.shape1,get_value=s1 widget_control,dat.shape2,get_value=s2 widget_control,dat.shape3,get_value=s3 ;determine what shape the user selects (0 or 1) value1 = fix(widget_info(dat.shape1,/button_set)) value2 = fix(widget_info(dat.shape2,/button_set)) value3 = fix(widget_info(dat.shape3,/button_set)) ;assign shape string based on user selection if (value1 eq 1) then begin shape = s1 endif else if (value2 eq 1) then begin shape = s2 ;hsi_vis_fwdfit can only fit to a single elliptical gaussian widget_control,dat.n,set_value='1' endif else begin shape = s3 ;hsi_vis_fwdfit can only fit to a single loop widget_control,dat.n,set_value='1' endelse ;save shape dat.shape = shape *datptr = dat end