summaryrefslogtreecommitdiff
path: root/lisp/calc/calc-menu.el
diff options
context:
space:
mode:
authorJay Belanger <jay.p.belanger@gmail.com>2007-11-27 01:08:24 +0000
committerJay Belanger <jay.p.belanger@gmail.com>2007-11-27 01:08:24 +0000
commit84df9db88a894bf2ae743d26117ba9ff733813a4 (patch)
tree18e57f17265652fa0d4f27c957efe830a2f6ff9a /lisp/calc/calc-menu.el
parent61e216073765f9808eee55bc15c5f4e4c61323a0 (diff)
downloademacs-84df9db88a894bf2ae743d26117ba9ff733813a4.tar.gz
(calc-modes-menu): Add normal and incomplete algebraic modes.
Diffstat (limited to 'lisp/calc/calc-menu.el')
-rw-r--r--lisp/calc/calc-menu.el30
1 files changed, 27 insertions, 3 deletions
diff --git a/lisp/calc/calc-menu.el b/lisp/calc/calc-menu.el
index e826da2ab34..22c42adc124 100644
--- a/lisp/calc/calc-menu.el
+++ b/lisp/calc/calc-menu.el
@@ -1052,18 +1052,42 @@
:style radio
:selected (eq (car-safe calc-float-format) 'eng)])
(list "Algebraic"
+ ["Normal"
+ (progn
+ (require 'calc-mode)
+ (cond
+ (calc-incomplete-algebraic-mode
+ (calc-algebraic-mode t))
+ (calc-algebraic-mode
+ (calc-algebraic-mode nil))))
+ :style radio
+ :selected (not calc-algebraic-mode)]
["Algebraic mode"
(progn
(require 'calc-mode)
- (call-interactively 'calc-algebraic-mode))
+ (if (or
+ calc-incomplete-algebraic-mode
+ (not calc-algebraic-mode))
+ (calc-algebraic-mode nil)))
:keys "m a"
:style radio
- :selected (eq calc-algebraic-mode t)
+ :selected (and calc-algebraic-mode
+ (not calc-incomplete-algebraic-mode))
:help "Keys which start numeric entry also start algebraic entry"]
+ ["Incomplete algebraic mode"
+ (progn
+ (require 'calc-mode)
+ (unless calc-incomplete-algebraic-mode
+ (calc-algebraic-mode t)))
+ :keys "C-u m a"
+ :style radio
+ :selected calc-incomplete-algebraic-mode
+ :help "Only ( and [ begin algebraic entry"]
["Total algebraic mode"
(progn
(require 'calc-mode)
- (call-interactively 'calc-total-algebraic-mode))
+ (unless (eq calc-algebraic-mode 'total)
+ (calc-total-algebraic-mode nil)))
:keys "m t"
:style radio
:selected (eq calc-algebraic-mode 'total)