; ;------------------------------------------------------------------- ; pro wrfiles_event,ev @pltdat.h common wrfiles, cgmbase,psbase,wtxt_sunname common com_mkcgm, wtxt_cgmname,wbgp_opencgm,wbgp_wrcgm common com_mkps, wtxt_psname,wbgp_openps,wbgp_wrps ; parentbase = widget_info(ev.id,/parent) case parentbase of cgmbase: begin cgm_event,ev return end psbase: begin ps_event,ev return end else: endcase widget_control,ev.id,get_uvalue=uval case uval of "DONE": begin widget_control,/DESTROY,ev.top ; quit button return end "PAGEVIEW": begin cmd = 'pageview -dir ' + !tmpdir + ' ' + psdev.psname + ' &' print,cmd spawn,cmd return end "XLOADIM": begin cmd = 'xloadimage ' + sunname + ' &' print,cmd spawn,cmd return end "HELP": begin uval = '' widget_control,helpbase,show=1,get_uvalue=uval,bad_id=badid if badid eq 0 and uval eq 'WRITE FILES' then begin print,'>>> there is already a help window (write files) on your screen' return endif print,'help (write files)' popup_help,!srcdir+'/wrfiles.hlp','WRITE FILES' return end "TXT_SRF": begin widget_control,ev.id,get_value=value sunfiles = findfile(value(0),count=nf) case nf of 0: begin sunname = value(0) print,'Will write sun raster frame to file ',sunname end 1: begin sunname = value(0) print,'>>> WARNING: file ',sunname,' already exists -- print,' It will be overwritten if you write sun raster frame' end else: begin print,'>>> Too many file names (',nf,') match path ',value(0) print,' Please specify a unique file name for sun raster frame' end endcase end "WRSRF": begin ; if (cdfid lt 0 and ihwm93 le 0 and ims90 le 0) then begin ; print,'>>> valid netcdf file has not been read -- ',$ ; 'raster file NOT made' ; return ; endif mksrf,sunname,ifrsun,/invert return end else: print,'wrfiles: unknown user value=',uval endcase return end ; ;------------------------------------------------------------------- ; pro popup_wrfiles,top @pltdat.h common wrfiles, cgmbase,psbase,wtxt_sunname common com_mkcgm, wtxt_cgmname,wbgp_opencgm,wbgp_wrcgm common com_mkps, wtxt_psname,wbgp_openps,wbgp_wrps ; wrfilesbase = widget_base(title='WRITE FILES',/column) ; ; Sun Raster: ; base = widget_base(wrfilesbase,/frame,/column) wlab_ps = widget_label(base,value="Sun Raster File Path:") wtxt_sunname = widget_text(base,/editable,value=sunname,xsize=50,$ uvalue="TXT_SRF") wbut_sun = widget_button(base,value="WRITE SUN RASTER FILE (single frame)",$ uvalue="WRSRF") ; ; CGM: ; cgmbase = widget_base(wrfilesbase,/frame,/column) wlab_mkcgm = widget_label(cgmbase,value="CGM Metacode File Path:") wtxt_cgmname = widget_text(cgmbase,/editable,/no_newline,xsize=50,$ value=cgmname,uvalue="TXT_CGMNAME") ival = 1 & if opencgm then ival = 0 wbgp_opencgm = cw_bgroup(cgmbase,/exclusive,/row,uvalue="BGP_OPENCGM",$ ["OPEN CGM FILE","CLOSE CGM FILE"],set_value=ival) ival = 1 & if writecgm then ival = 0 wbgp_wrcgm = cw_bgroup(cgmbase,/exclusive,/row,uvalue="BGP_WRCGM",$ ["WRITE TO CGM FILE","NO WRITE TO CGM FILE"],set_value=ival) ; ; Postscript: ; psbase = widget_base(wrfilesbase,/frame,/column) wlab_mkps = widget_label(psbase,value="Postscript File Path:") if psdev.psname eq !tmpdir+'/tgcmidl.ps' and psdev.encap gt 0 then $ psdev.psname = !tmpdir+'/tgcmidl.eps' $ else if psdev.psname eq !tmpdir+'/tgcmidl.eps' and psdev.encap le 0 then $ psdev.psname = !tmpdir+'/tgcmidl.ps' wtxt_psname = widget_text(psbase,/editable,/no_newline,xsize=50,$ value=psdev.psname,uvalue="TXT_PSNAME") ival = 1 & if psdev.openps then ival = 0 wbgp_openps = cw_bgroup(psbase,/exclusive,/row,uvalue="BGP_OPENPS",$ ["OPEN POSTSCRIPT FILE","CLOSE POSTSCRIPT FILE"],set_value=ival) ival = 1 & if psdev.writeps then ival = 0 wbgp_wrps = cw_bgroup(psbase,/exclusive,/row,uvalue="BGP_WRPS",$ ["WRITE TO POSTSCRIPT FILE","NO WRITE TO POSTSCRIPT FILE"],set_value=ival) wbgp_encap = cw_bgroup(psbase,/nonexclusive,uvalue='BGP_ENCAP',$ ["ENCAPSULATE PS"],/return_name,/row,ids=ids_encap,set_value=psdev.encap) ; ; Controls: ; base = widget_base(wrfilesbase,/frame,/row) done = widget_button(base,value="DONE",uvalue="DONE") pageview = widget_button(base,value="PAGEVIEW (PS)",uvalue="PAGEVIEW") xloadimage = widget_button(base,value="XLOADIMAGE (SUN)",uvalue="XLOADIM") help = widget_button(base,value="HELP",uvalue="HELP") ; widget_control,wrfilesbase,/realize offxy = offset(top,wrfilesbase) widget_control,wrfilesbase,tlb_set_xoffset=offxy(0),tlb_set_yoffset=offxy(1) xmanager,'wrfiles',wrfilesbase return end