Function: calc-embedded-var-change
calc-embedded-var-change is an autoloaded and byte-compiled function
defined in calc-embed.el.gz.
Signature
(calc-embedded-var-change VAR &optional BUF)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-embed.el.gz
(defun calc-embedded-var-change (var &optional buf)
(if (symbolp var)
(setq var (list 'var
(if (string-match "\\`var-.+\\'"
(symbol-name var))
(intern (substring (symbol-name var) 4))
var)
var)))
(save-excursion
(let ((manual (not calc-auto-recompute))
(bp calc-embedded-active)
(first t))
(if buf (setq bp (memq (assq buf bp) bp)))
(while bp
(let ((calc-embedded-no-reselect t)
(p (and (buffer-name (car (car bp)))
(cdr (car bp)))))
(while p
(if (assoc var (aref (car p) 10))
(if manual
(if (aref (car p) 11)
(progn
(aset (car p) 11 nil)
(if (aref (car p) 9)
(calc-embedded-var-change (aref (car p) 9)))))
(set-buffer (aref (car p) 0))
(if (equal (buffer-substring (aref (car p) 2)
(aref (car p) 3))
(aref (car p) 6))
(let ((calc-embedded-info nil))
(or calc-embedded-quiet
(message "Recomputing..."))
(setq first nil)
(calc-wrapper
(set-buffer (aref (car p) 0))
(calc-embedded-update (car p) 14 t nil)))
(setcdr (car bp) (delq (car p) (cdr (car bp))))
(message
"(Tried to recompute but formula was changed or missing)"))))
(setq p (cdr p))))
(setq bp (if buf nil (cdr bp))))
(or first calc-embedded-quiet (message "")))))