emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/git-commit a2ef67a415 4/7: magit--git-variable:boolean: Ne


From: ELPA Syncer
Subject: [nongnu] elpa/git-commit a2ef67a415 4/7: magit--git-variable:boolean: New class
Date: Tue, 1 Mar 2022 08:58:18 -0500 (EST)

branch: elpa/git-commit
commit a2ef67a415cadf36976eba7b2898f04300435555
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Jonas Bernoulli <jonas@bernoul.li>

    magit--git-variable:boolean: New class
---
 lisp/magit-transient.el | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/lisp/magit-transient.el b/lisp/magit-transient.el
index 3b9873a7e6..2ac82782c6 100644
--- a/lisp/magit-transient.el
+++ b/lisp/magit-transient.el
@@ -47,6 +47,9 @@
    (fallback    :initarg :fallback    :initform nil)
    (default     :initarg :default     :initform nil)))
 
+(defclass magit--git-variable:boolean (magit--git-variable:choices)
+  ((choices     :initarg :choices     :initform '("true" "false"))))
+
 (defclass magit--git-variable:urls (magit--git-variable)
   ((seturl-arg  :initarg :seturl-arg  :initform nil)))
 
@@ -71,6 +74,13 @@
                 (t
                  (magit-get arg variable))))))
 
+(cl-defmethod transient-init-value ((obj magit--git-variable:boolean))
+  (let ((variable (format (oref obj variable)
+                          (oref obj scope)))
+        (arg (if (oref obj global) "--global" "--local")))
+    (oset obj variable variable)
+    (oset obj value (if (magit-get-boolean arg variable) "true" "false"))))
+
 ;;;; Read
 
 (cl-defmethod transient-infix-read :around ((obj magit--git-variable:urls))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]