[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/inspector 838b08706a 02/39: tree-inspector work
From: |
ELPA Syncer |
Subject: |
[elpa] externals/inspector 838b08706a 02/39: tree-inspector work |
Date: |
Sat, 10 Sep 2022 17:57:46 -0400 (EDT) |
branch: externals/inspector
commit 838b08706a44a096a0dd7f1cda4b454abafbd267
Author: Mariano Montone <marianomontone@gmail.com>
Commit: Mariano Montone <marianomontone@gmail.com>
tree-inspector work
---
tree-inspector.el | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 51 insertions(+), 5 deletions(-)
diff --git a/tree-inspector.el b/tree-inspector.el
index d69389e0b5..5ce8a12df6 100644
--- a/tree-inspector.el
+++ b/tree-inspector.el
@@ -59,9 +59,43 @@
(treeview-set-node-children node
(mapcar (lambda (item)
(let ((child (tree-inspector--make-node item)))
- (treeview-set-node-parent child node)
+ ;;(treeview-set-node-parent child node)
child))
- object))))))
+ object))
+ node))))
+
+(defgroup tree-inspector nil
+ "tree-inspector"
+ :group 'applications)
+
+(defcustom tree-inspector-control-keymap
+ '(("<mouse-1>" . treeview-toggle-node-state-at-event)
+ ("<mouse-2>" . treeview-toggle-node-state-at-event)
+ ("<mouse-3>" . dir-treeview-popup-node-menu-at-mouse)
+ ("RET" . treeview-toggle-node-state-at-point)
+ ("SPC" . treeview-toggle-node-state-at-point)
+ ("e" . tree-inspector-popup-node-menu-at-point))
+ "Keymap of the control symbols.
+A list of assignments of key sequences to commands. Key sequences are strings
+in a format understood by `kbd'. Commands a names of Lisp functions."
+ :group 'tree-inspector
+ :type '(repeat (cons (string :tag "Key ") (function :tag "Command"))))
+
+(defcustom tree-inspector-label-keymap
+ '(("<mouse-1>" . tree-inspector-inspect-object-at-event)
+ ("<mouse-2>" . tree-inspector-inspect-object-at-event)
+ ("<mouse-3>" . tree-inspector-popup-node-menu-at-mouse)
+ ("RET" . tree-inspector-inspect-object-at-point)
+ ("e" . tree-inspector-popup-node-menu-at-point)
+ ("<C-down-mouse-1>" . ignore)
+ ("<C-mouse-1>" . treeview-toggle-select-node-at-event)
+ ("<S-down-mouse-1>" . ignore)
+ ("<S-mouse-1>" . treeview-select-gap-above-node-at-event))
+ "Keymap of the labels.
+A list of assignments of key sequences to commands. Key sequences are strings
+in a format understood by `kbd'. Commands a names of Lisp functions."
+ :group 'tree-inspector
+ :type '(repeat (cons (string :tag "Key ") (function :tag "Command"))))
(defun tree-inspector-inspect (data)
(let ((buffer (get-buffer-create (format "*tree-inspector: %s*" data))))
@@ -70,16 +104,28 @@
;; (lambda () (tree-inspector--make-node data)))
(setq-local treeview-get-indent-function
(lambda (node) (list " ")))
- (setq-local treeview-get-label-function
- #'first)
+ (setq-local treeview-get-label-function #'first)
(setq-local treeview-get-control-function
(lambda (node)
(if (treeview-get-node-children node)
"[+]"
nil)))
+ (setq-local treeview-update-node-children-function
+ (cl-constantly nil))
+ (setq-local treeview-after-node-expanded-function
+ (cl-constantly nil))
+ (setq-local treeview-after-node-folded-function
+ (cl-constantly nil))
+ (setq-local treeview-get-control-keymap-function
+ (lambda (node)
+ (treeview-make-keymap tree-inspector-control-keymap)))
+ (setq-local treeview-get-label-keymap-function
+ (lambda (node)
+ (treeview-make-keymap tree-inspector-label-keymap)))
(treeview-display-node (tree-inspector--make-node data))
-
+ (setq buffer-read-only t)
(display-buffer buffer))))
+
(tree-inspector-inspect 2)
(tree-inspector-inspect (list 1 2 3))
- [elpa] externals/inspector updated (f04c60a5d3 -> 0b213e931c), ELPA Syncer, 2022/09/10
- [elpa] externals/inspector e2e56201a0 01/39: Starting a tree-inspector with treeview, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 06eb60bcff 03/39: tree-inspector: indentation, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 56579dae8a 05/39: tree-inspector: hash-table inspector, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 838b08706a 02/39: tree-inspector work,
ELPA Syncer <=
- [elpa] externals/inspector faf590dded 06/39: tree-inspector: alist inspector, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 068b754a0a 07/39: tree-inspector: vectors, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector d43bb09ae9 11/39: tree-inspector: housekeeping, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 4066d7b441 13/39: Starting some tree-inspector tests, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 8b000e4e4e 15/39: tree-inspector: tests, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 130c43c6b6 19/39: tree-inspector: records, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 394fb22811 09/39: ..., ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 98d3d56723 10/39: tree-inspector: provide, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector 236ef196a0 24/39: tree-inspector: fixes, ELPA Syncer, 2022/09/10
- [elpa] externals/inspector fc9712651c 36/39: More complete package commentary, ELPA Syncer, 2022/09/10