Function: vc-print-log-setup-buttons

vc-print-log-setup-buttons is a byte-compiled function defined in vc.el.gz.

Signature

(vc-print-log-setup-buttons WORKING-REVISION IS-START-REVISION LIMIT PL-RETURN)

Documentation

Insert at the end of the current buffer buttons to show more log entries.

In the new log, leave point at WORKING-REVISION (if non-nil). LIMIT is the number of entries currently shown. Does nothing if IS-START-REVISION is non-nil, or if LIMIT is nil, or if PL-RETURN is limit-unsupported.

Source Code

;; Defined in /usr/src/emacs/lisp/vc/vc.el.gz
(defun vc-print-log-setup-buttons (working-revision is-start-revision limit pl-return)
  "Insert at the end of the current buffer buttons to show more log entries.
In the new log, leave point at WORKING-REVISION (if non-nil).
LIMIT is the number of entries currently shown.
Does nothing if IS-START-REVISION is non-nil, or if LIMIT is nil,
or if PL-RETURN is `limit-unsupported'."
  (when (and limit (not (eq 'limit-unsupported pl-return))
	     (not is-start-revision))
    (let ((entries 0))
      (goto-char (point-min))
      (while (re-search-forward log-view-message-re nil t)
        (cl-incf entries))
      ;; If we got fewer entries than we asked for, then displaying
      ;; the "more" buttons isn't useful.
      (when (>= entries limit)
        (goto-char (point-max))
        (insert "\n")
        (insert-text-button
         "Show 2X entries"
         'action (lambda (&rest _ignore)
                   (vc-print-log-internal
                    log-view-vc-backend log-view-vc-fileset
                    working-revision nil (* 2 limit)))
         'help-echo
         "Show the log again, and double the number of log entries shown")
        (insert "    ")
        (insert-text-button
         "Show unlimited entries"
         'action (lambda (&rest _ignore)
                   (vc-print-log-internal
                    log-view-vc-backend log-view-vc-fileset
                    working-revision nil nil))
         'help-echo "Show the log again, including all entries")
        (insert "\n")))))