pro DIcal_GUI ;;----------------------------------------------------------------------------- ;; PURPOSE: ;; Runs a GUI front end to the Deep Impact image calibration tool. ;; ;; CALLING SEQUENCE: ;; DIcal_GUI ;; ;; REQUIRED INPUTS: ;; ;; OUTPUTS: ;; ;; OPTIONAL INPUT KEYWORDS: ;; ;; EXAMPLE: ;; IDL> DIcal_GUI ;; ;; PROCEDURES USED (i.e. called directly!): ;; ;; MODIFICATION HISTORY: ;; 2004-07-27 M. Desnoyer Created ;; ;;----------------------------------------------------------------------------- @version ;; Create the main container main = widget_base(mbar=menu, title='Deep Impact Calibration Utility v'+string(version,format='(F4.2)'), row=2, $ uname='main', uvalue={guiOptions}) ;; Create the menu bar file_menu = widget_button(menu, value='File', /MENU) open_but = widget_button(file_menu, value='Open...', uname='openbut') close_but = widget_button(file_menu, value='Close', uname='closebut') cal_but = widget_button(file_menu, value='Calibrate', uname='calbut', $ /separator) reset_but = widget_button(file_menu, value='Reset', uname='resetbut') exit_but = widget_button(file_menu, value='Exit', uname='exitbut', $ /separator) display_menu = widget_button(menu, value='Display', /MENU) colchange_but = widget_button(display_menu, value='Change Colors...', $ uname='colchangebut') help_menu = widget_button(menu, value='Help', /HELP, /MENU) modhelp_but = widget_button(help_menu, value='Module Help', uname='modhelp') about_but = widget_button(help_menu, value='About...', uname='aboutbut') ;; Create the container for module manipulation modCont = widget_base(main, column=2) ;; Create the list of modules modList = widget_list(modCont, uname='modlist', ysize=17, $ value='*Calibrate Temps & Voltages') ;; Create the section to choose options for each module maingeom = widget_info( main, /geometry) listgeom = widget_info( modList, /geometry) optionPane = widget_base(modCont, xsize=(maingeom.xsize-listgeom.xsize)>300, $ /base_align_center, /column, uname='optionpane', /align_center) ena = cw_bgroup(optionPane, ['Module Enabled'], uname='ena', /nonexclusive) widget_control, ena, map=0 gui_reset, main widget_control, main, /realize xmanager, 'optionPane', optionPane, /just_reg, event_handler='gui_optEvent' xmanager, 'dical_gui', main, /no_block, event_handler='gui_event' END