Function: data-debug-insert-object-button

data-debug-insert-object-button is a byte-compiled function defined in eieio-datadebug.el.gz.

Signature

(data-debug-insert-object-button OBJECT PREFIX PREBUTTONTEXT)

Documentation

Insert a button representing OBJECT.

PREFIX is the text that precedes the button. PREBUTTONTEXT is some text between PREFIX and the object button.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/eieio-datadebug.el.gz
(defun data-debug-insert-object-button (object prefix prebuttontext)
  "Insert a button representing OBJECT.
PREFIX is the text that precedes the button.
PREBUTTONTEXT is some text between PREFIX and the object button."
  (let* ((start (point))
         (end nil)
         (str (cl-prin1-to-string object))
         (class (eieio-object-class object))
         (tip (format "Object %s\nClass: %S\nParent(s): %S\n%d slots"
                      (eieio-object-name-string object)
                      class
                      (eieio-class-parents class)
                      (length (eieio-class-slots class))
                      ))
         )
    (insert prefix prebuttontext str)
    (setq end (point))
    (put-text-property (- end (length str)) end 'face 'font-lock-keyword-face)
    (put-text-property start end 'ddebug object)
    (put-text-property start end 'ddebug-indent(length prefix))
    (put-text-property start end 'ddebug-prefix prefix)
    (put-text-property start end 'help-echo tip)
    (put-text-property start end 'ddebug-function
		       'data-debug-insert-object-slots-from-point)
    (insert "\n")))