Function: calc-embedded-restore-original-modes

calc-embedded-restore-original-modes is a byte-compiled function defined in calc-embed.el.gz.

Signature

(calc-embedded-restore-original-modes CALCBUF)

Documentation

Restore the original Calc modes when leaving embedded mode.

Source Code

;; Defined in /usr/src/emacs/lisp/calc/calc-embed.el.gz
(defun calc-embedded-restore-original-modes (calcbuf)
  "Restore the original Calc modes when leaving embedded mode."
  (let ((changed nil)
        (lang (car calc-embedded-original-modes))
        (modes (cdr calc-embedded-original-modes)))
    (if (and calcbuf calc-embedded-original-modes)
        (with-current-buffer calcbuf
          (unless (and
                   (equal calc-language (car lang))
                   (equal calc-language-option (cdr lang)))
            (calc-set-language (car lang) (cdr lang))
            (setq changed t))
          (while modes
            (let ((mode (car modes)))
              (unless (equal (symbol-value (car mode)) (cdr mode))
                (set (car mode) (cdr mode))
                (setq changed t)))
            (setq modes (cdr modes)))
          (when changed
            (calc-refresh)
            (calc-set-mode-line))))
    (setq calc-embedded-original-modes nil)))