Function: erc-speedbar-buttons
erc-speedbar-buttons is a byte-compiled function defined in
erc-speedbar.el.gz.
Signature
(erc-speedbar-buttons BUFFER)
Documentation
Create buttons for speedbar in BUFFER.
Source Code
;; Defined in /usr/src/emacs/lisp/erc/erc-speedbar.el.gz
(defun erc-speedbar-buttons (buffer)
"Create buttons for speedbar in BUFFER."
(erase-buffer)
(let (serverp chanp queryp queries-current-p)
(with-current-buffer buffer
;; The function `dframe-help-echo' checks the default value of
;; `dframe-help-echo-function' when deciding whether to visit
;; the buffer and fire the callback. This works in normal
;; speedbar frames because the event handler runs in the
;; `window-buffer' of the active frame. But in our hacked
;; version, where the frame is hidden, `speedbar-item-info'
;; never runs without this workaround.
(setq-local dframe-help-echo-function #'ignore)
(setq serverp (erc--server-buffer-p))
(setq chanp (erc-channel-p (erc-default-target)))
(setq queryp (erc-query-buffer-p)
queries-current-p (erc--queries-current-p)))
(defvar erc-nickbar-mode)
(cond ((and erc-nickbar-mode (null (get-buffer-window speedbar-buffer)))
(run-at-time 0 nil #'erc-nickbar-mode -1))
(serverp
(erc-speedbar-channel-buttons nil 0 buffer))
((or chanp (and queryp queries-current-p))
(erc-speedbar-insert-target buffer 0)
(forward-line -1)
(erc-speedbar-expand-channel "+" buffer 0))
(queryp
(erc-speedbar-insert-target buffer 0))
(t (ignore)))))