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

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

[elpa] externals/inspector 1f1469ec9d 22/39: tree-inspector: buffers, wi


From: ELPA Syncer
Subject: [elpa] externals/inspector 1f1469ec9d 22/39: tree-inspector: buffers, windows, frames
Date: Sat, 10 Sep 2022 17:57:48 -0400 (EDT)

branch: externals/inspector
commit 1f1469ec9d66dd6353a9129519815fd53b01215e
Author: Mariano Montone <marianomontone@gmail.com>
Commit: Mariano Montone <marianomontone@gmail.com>

    tree-inspector: buffers, windows, frames
---
 tree-inspector-tests.el |  9 +++++----
 tree-inspector.el       | 39 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 4 deletions(-)

diff --git a/tree-inspector-tests.el b/tree-inspector-tests.el
index f7913d9a03..e0a034fbbd 100644
--- a/tree-inspector-tests.el
+++ b/tree-inspector-tests.el
@@ -195,11 +195,12 @@
     (should (cl-search "23" buffer-string))
     (should (cl-search "rats" buffer-string))))
 
-(ert-deftest inspector-tests--inspect-finalizer-test ()
-  (inspector-inspect (make-finalizer #'print)))
+(ert-deftest tree-inspector-tests--inspect-finalizer-test ()
+  (tree-inspector-tests--with-tree-inspector-contents
+   (buffer-string (make-finalizer #'print))))
 
-(ert-deftest inspector-tests--overlays-test ()
-  (inspector-inspect (make-button 0 10))
+(ert-deftest tree-inspector-tests--overlays-test ()
+  (tree-inspector-inspect (make-button 0 10))
   (let ((buffer-string (buffer-string)))
     (should (cl-search "overlay" buffer-string)))
   (inspector-quit)
diff --git a/tree-inspector.el b/tree-inspector.el
index 3304344734..c16303bbda 100644
--- a/tree-inspector.el
+++ b/tree-inspector.el
@@ -383,6 +383,44 @@ in a format understood by `kbd'.  Commands a names of Lisp 
functions."
       (tree-inspector--set-node-children node children)
       node)))
 
+(cl-defmethod tree-inspector--make-node ((object buffer))
+  "tree-inspector for buffers."
+  (let ((node (treeview-new-node)))
+    (treeview-set-node-name node (prin1-to-string object))
+    (tree-inspector--set-node-children
+     node (list (tree-inspector--make-node (get-buffer-window object))
+               (tree-inspector--make-node
+                (format "cursor pos: %s" (with-current-buffer object
+                                           (what-cursor-position))))))
+    node))
+
+(cl-defmethod tree-inspector--make-node ((object window))
+  "tree-inspector for windows."
+  (let ((node (treeview-new-node)))
+    (treeview-set-node-name node (prin1-to-string object))
+    (tree-inspector--set-node-children
+     node (list (tree-inspector--make-node (window-parent object))
+               (tree-inspector--make-node (window-buffer object))
+               (tree-inspector--make-node (window-frame object))
+               (tree-inspector--make-node (window-parameters object))))
+    node))
+
+(cl-defmethod tree-inspector--make-node ((object frame))
+  (let ((node (treeview-new-node)))
+    (treeview-set-node-name node (prin1-to-string object))
+    (tree-inspector--set-node-children
+     node (mapcar #'tree-inspector--make-node (frame-parameters object)))
+    node))
+
+(cl-defmethod tree-inspector--make-node ((object overlay))
+  "tree-inspector node for overlays."
+  (let ((node (treeview-new-node)))
+    (treeview-set-node-name node (prin1-to-string object))
+    (tree-inspector--set-node-children
+     node (list (tree-inspector--make-node (overlay-buffer object))
+               (tree-inspector--make-node (overlay-properties object))))
+    node))
+
 (defun tree-inspector-inspect (data)
   "Inspect DATA with a tree-inspector."
   (let ((buffer (get-buffer-create (format "*tree-inspector: %s*"
@@ -421,6 +459,7 @@ in a format understood by `kbd'.  Commands a names of Lisp 
functions."
       (switch-to-buffer buffer)
       buffer)))
 
+;;;###autoload
 (defun tree-inspector-inspect-last-sexp ()
   "Evaluate sexp before point and inspect the result."
   (interactive)



reply via email to

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