pro spd_ui_save,info
compile_opt idl2
if info.marking ne 0 || info.rubberbanding ne 0 then begin
return
endif
info.ctrl = 0
activeWindow=info.windowStorage->GetActive()
activeWindow->GetProperty, Name=name
filename=info.mainFileName
reset_filename_flag = 0
IF NOT Is_String(filename) then filename=''
IF filename EQ '' THEN BEGIN
xt = Time_String(systime(/sec))
timeString = Strmid(xt, 0, 4)+Strmid(xt, 5, 2)+Strmid(xt, 8, 2)+$
'_'+Strmid(xt,11,2)+Strmid(xt,14,2)+Strmid(xt,17,2)
fileString = 'spedas_saved_'+timeString+'.tgd'
filename = spd_ui_dialog_pickfile_save_wrapper(Title='Save SPEDAS Document:', $
Filter='*.tgd', File = fileString, /Write, Dialog_Parent=info.master)
reset_filename_flag=1
ENDIF
IF(Is_String(filename)) THEN BEGIN
If(!version.os_family Eq 'Windows') Then Begin
test_tgd = strpos(filename, '.tgd')
If(test_tgd[0] Eq -1) Then filename = filename+'.tgd'
Endif
widget_control,/hourglass
save_document,windowstorage=info.windowstorage,filename=filename,$
statusmsg=statusmsg,statuscode=statuscode
IF (statuscode LT 0) THEN BEGIN
IF (statuscode NE -6) THEN dummy=dialog_message(statusmsg,/ERROR,/CENTER)
ENDIF ELSE BEGIN
if (reset_filename_flag EQ 1) then begin
activeWindow->GetProperty, Name=name
info.mainFileName=filename
info.gui_title = filename
endif
ENDELSE
info.statusBar->Update, statusmsg
info.historywin->Update,statusmsg
ENDIF ELSE BEGIN
info.statusBar->Update, 'Operation Cancelled'
ENDELSE
end