]> git.eshelyaron.com Git - emacs.git/commitdiff
(calc-modes-menu): Clean up two's complement entries.
authorJay Belanger <jay.p.belanger@gmail.com>
Fri, 20 Nov 2009 00:59:24 +0000 (00:59 +0000)
committerJay Belanger <jay.p.belanger@gmail.com>
Fri, 20 Nov 2009 00:59:24 +0000 (00:59 +0000)
lisp/calc/calc-menu.el

index b3b54fc1c86b063a61773da773b5a97a8326eaa4..01a820c75fee5cb0a42cb0ead8ecf3fee47933d7 100644 (file)
                  (call-interactively 'calc-decimal-radix))
                :keys "d 0"
                :style radio
-               :selected (= calc-number-radix 10)]
+               :selected (and (= calc-number-radix 10)
+                              (not calc-twos-complement-mode))]
               ["Binary"
                (progn
                  (require 'calc-bin)
                  (call-interactively 'calc-binary-radix))
                :keys "d 2"
                :style radio
-               :selected (= calc-number-radix 2)]
-              ["Twos complement"
-               (progn
-                 (require 'calc-bin)
-                 (call-interactively 
-                  (lambda () (interactive) (calc-binary-radix t))))
-               :keys "C-u d 2"
-               :style radio
-               :selected calc-complement-signed-mode]
+               :selected (and (= calc-number-radix 2)
+                              (not calc-twos-complement-mode))]
               ["Octal"
                (progn
                  (require 'calc-bin)
                  (call-interactively 'calc-octal-radix))
                :keys "d 8"
                :style radio
-               :selected (= calc-number-radix 8)]
+               :selected (and (= calc-number-radix 8)
+                              (not calc-twos-complement-mode))]
               ["Hexadecimal"
                (progn
                  (require 'calc-bin)
                  (call-interactively 'calc-hex-radix))
                :keys "d 6"
                :style radio
-               :selected (= calc-number-radix 16)]
+               :selected (and (= calc-number-radix 16)
+                              (not calc-twos-complement-mode))]
               ["Other"
                (progn
                  (require 'calc-bin)
                  (call-interactively 'calc-radix))
                :keys "d r"
                :style radio
-               :selected (not
-                          (or
-                           (= calc-number-radix 10)
-                           (= calc-number-radix 2)
-                           (= calc-number-radix 8)
-                           (= calc-number-radix 16)))])
+               :selected (and
+                          (not calc-twos-complement-mode)
+                          (not
+                           (or
+                            (= calc-number-radix 10)
+                            (= calc-number-radix 2)
+                            (= calc-number-radix 8)
+                            (= calc-number-radix 16))))]
+              ["--Two's Complement--"
+               (lambda () ())
+               :style radio
+               :selected nil]
+              ["Binary"
+               (progn
+                 (require 'calc-bin)
+                 (call-interactively 
+                  (lambda () (interactive) (calc-binary-radix t))))
+               :keys "C-u d 2"
+               :style radio
+               :selected (and (= calc-number-radix 2)
+                              calc-twos-complement-mode)]
+              ["Octal"
+               (progn
+                 (require 'calc-bin)
+                 (call-interactively
+                  (lambda () (interactive) (calc-octal-radix t))))
+               :keys "C-u d 8"
+               :style radio
+               :selected (and (= calc-number-radix 8)
+                              calc-twos-complement-mode)]
+              ["Hexadecimal"
+               (progn
+                 (require 'calc-bin)
+                 (call-interactively
+                  (lambda () (interactive) (calc-hex-radix t))))
+               :keys "C-u d 6"
+               :style radio
+               :selected (and (= calc-number-radix 16)
+                              calc-twos-complement-mode)])
         (list "Float Format"
               ["Normal"
                (progn