
pro input_menu,icont,n_x,n_y,ffb1,ffb2,ffa1,ffa2,em_flag
;
done = 0
while(done eq 0) do begin
   Lcont = ['Continue?', 'Yes', 'No']
   Lsizex = ['N-point X','16','32','64','128','256','260','user input']
   Lsizey = ['N-point Y','16','32','64','128','256','260','user input']
   Lff = string(indgen(7))
   Lfb1 = ['ffb-1',Lff(1:6)]
   Lfb2 = ['ffb-2',Lff(1:6)]
   Lfa1 = ['ffa-1',Lff(1:6)]
   Lfa2 = ['ffa-2',Lff(1:6)]
   Lem  = ['EM calculation', 'Yes', 'No']
   Ldone = ['Done?', 'Yes','No']
;
   base = widget_base(title='Input Menu',/row)
   row0 = widget_base(base, xsize=150,/frame, /row)
   col0 = widget_base(base, /frame, /column)
   col1 = widget_base(base, /frame, /column)
   col2 = widget_base(base, /frame, /column)
   col3 = widget_base(base, /frame, /column)
   col4 = widget_base(base, /frame, /column)
;
   w00 = widget_button(row0, value="INSTRUCTION")
   c0 = widget_button(col0, value = "PROGRAM")
   c1 = widget_button(col1, value = "SIZE")
   c2 = widget_button(col2, value = "FILTER B")
   c3 = widget_button(col3, value = "FILTER A")
   c41 = widget_button(col4, value = "EM")
;
   xmenu, Lcont, col0, buttons=b0, /column,/exclusive,/frame
   xmenu, Lsizex, col1, buttons=b11, /column,/exclusive,/frame
   xmenu, Lsizey, col1, buttons=b12, /column,/exclusive,/frame
   xmenu, Lfb1, col2, buttons=b21, /column,/exclusive,/frame
   xmenu, Lfb2, col2, buttons=b22, /column,/exclusive,/frame
   xmenu, Lfa1, col3, buttons=b31, /column,/exclusive,/frame
   xmenu, Lfa2, col3, buttons=b32, /column,/exclusive,/frame
   xmenu, Lem, col4, buttons=b41, /column,/exclusive,/frame
;
   c42 = widget_button(col4, value = "INPUT")
   xmenu, Ldone, col4, buttons=b42, /column,/exclusive,/frame
;
   widget_control, base, /realize
;
   w0 = widget_button(row0, value="Click PROGRAM column                ")
   event0 = widget_event(col0)
   if(event0.id eq b0(1)) then icont=1 else begin
      icont=0 
      widget_control, base, /destroy
      return
   endelse
   w1 = widget_button(row0, value="Click SIZE column                   ")
   event11 = widget_event(col1)
   ss = where(b11 eq event11.id)
   if((ss(0) eq 0) or (Lsizex(ss(0)) eq 'user input')) then begin
      n_x = 0 & read,'* enter number of points in X array:', n_x
   endif else n_x=fix(Lsizex(ss(0)))
   event12 = widget_event(col1)
   ss = where(b12 eq event12.id)
   if((ss(0) eq 0) or (Lsizey(ss(0)) eq 'user input')) then begin
      n_y = 0 & read,'* enter number of points in Y array:', n_y
   endif else n_y=fix(Lsizey(ss(0)))
   w2 = widget_button(row0, value="Click FILTER B column               ")
   event21 = widget_event(col2)
   ss = where(b21 eq event21.id)
   ffb1 = fix(Lfb1(ss(0)))
   event22 = widget_event(col2)
   ss = where(b22 eq event22.id)
   ffb2 = fix(Lfb2(ss(0)))
   w3 = widget_button(row0, value="Click FILTER A column               ")
   event31 = widget_event(col3)
   ss = where(b31 eq event31.id)
   ffa1 = fix(Lfa1(ss(0)))
   event32 = widget_event(col3)
   ss = where(b32 eq event32.id)
   ffa2 = fix(Lfa2(ss(0)))
   w41 = widget_button(row0, value="Click EM      column                ")
   event41 = widget_event(col4)
   if(event41.id eq b41(1)) then em_flag = 1 else em_flag = 0
   w42 = widget_button(row0, value="Click INPUT   column                ")
   event42 = widget_event(col4)
   if(event42.id eq b42(1)) then done=1 else done= 0
   widget_control, base, /destroy
endwhile
print, 'Input completed'
end



