;+
; NAME:
;	SMEI_SEQUENCE::SAVE
;
;
; PURPOSE:
;	Save a SMEI sequence to an IDL save file.
;
;
; CATEGORY:
;	SMEI_SEQUENCE
;
;
; CALLING SEQUENCE:
;	seqref -> save[, file]
;
;
; INPUTS:
;
;
;
; OPTIONAL INPUTS:
;	file	string	The file to which to save the sequence.
;
;
; KEYWORD PARAMETERS:
;	/menu		If set, then use a dialogue box to choose the
;			file. (If file is provided it will be treated
;			as a filter).
;	group	long	A possible group leader (strictly dialogue
;			parent) for the menu.
;
;
; MODIFICATION HISTORY:
;	Original: 16/12/02; SJT
;-

pro smei_sequence::save, file, menu = menu, group = group

if n_elements(file) eq 0 then file = ''
if keyword_set(menu) or $
  (file eq '' and self -> get_file() eq "") then begin
    if n_params() eq 1 then filter = file $
    else filter = '*.sav'
    sfile = dialog_pickfile(dialog_parent = group,  $
                            filter = filter, $
                            file = self -> get_file(), $
                            title = "Select file to which to save", $
                            /overwrite_prompt, $
                            /write)
    if (sfile eq "") then return
endif else if file eq '' then sfile = self -> get_file() $
else sfile = file

self -> set_file, sfile

seqref = self

if keyword_set(group) then widget_control, /hourglass
save, file = sfile, seqref
if keyword_set(group) then widget_control, hourglass = 0

end
