PRO PSCLOSE
;
    COMMON PS_FILE, PS_FILENAME, LAST_DEVICE, CONFIGS, CUR_CONFIG,  $
        SAVE_CONFIG
;
;  Close any PostScript files.
;
    DEVICE = !D.NAME
    IF N_ELEMENTS(LAST_DEVICE) EQ 0 THEN LAST_DEVICE = !D.NAME
    IF !D.NAME NE 'PS' THEN SETPLOT,'PS'
    DEVICE,/CLOSE_FILE
    PS_FILENAME = ""
;
;  Save the parameters for the current configuration.
;
    IF CUR_CONFIG NE '' THEN BEGIN
        NCONFIG = WHERE(CONFIGS EQ CUR_CONFIG)
        SAVE_CONFIG(NCONFIG).POSITION = !P.POSITION
        SAVE_CONFIG(NCONFIG).XMARGIN = !X.MARGIN
        SAVE_CONFIG(NCONFIG).XWINDOW = !X.WINDOW
        SAVE_CONFIG(NCONFIG).YMARGIN = !Y.MARGIN
        SAVE_CONFIG(NCONFIG).YWINDOW = !Y.WINDOW
        SAVE_CONFIG(NCONFIG).ZMARGIN = !Z.MARGIN
        SAVE_CONFIG(NCONFIG).ZWINDOW = !Z.WINDOW
        SAVE_CONFIG(NCONFIG).THICK   = !P.THICK
        SAVE_CONFIG(NCONFIG).CHARTHICK = !P.CHARTHICK
        SAVE_CONFIG(NCONFIG).XTHICK  = !X.THICK
        SAVE_CONFIG(NCONFIG).YTHICK  = !Y.THICK
    ENDIF
;
;  Reset the plotting device.
;
    IF DEVICE NE 'PS' THEN SETPLOT,DEVICE ELSE SETPLOT,LAST_DEVICE
    PRINT, 'The plotting device is now set to ' + TRIM(LAST_DEVICE) + '.'
;
    RETURN
    END