Commit fe48f821 authored by Jim Blandy's avatar Jim Blandy
Browse files

* term/x-win.el (scroll-bar-mode, scroll-bar-mode): Move these

	functions to scrolbar.el.
	* scrollbar.el (scroll-bar-mode, scroll-bar-mode): Here they are.
	Make scroll-bar-mode set the {vertical,horizontal}-scrollbars
	parameters in default-frame-alist, and modify all extant screens
	using the correct parameter names.
parent c922bc55
......@@ -39,6 +39,36 @@ that scrollbar position."
(truncate (/ (* (float (car num-denom)) whole) (cdr num-denom))))
;;;; Helpful functions for enabling and disabling scroll bars.
(defvar scroll-bar-mode nil)
(defun scroll-bar-mode (flag)
"Toggle display of vertical scroll bars on each frame.
This command applies to all frames that exist and frames to be
created in the future.
With a numeric argument, if the argument is negative,
turn off scroll bars; otherwise, turn on scroll bars."
(interactive "P")
(setq scroll-bar-mode (if (null flag) (not scroll-bar-mode)
(or (not (numberp flag)) (>= flag 0))))
(mapcar
(function
(lambda (param-name)
(let ((parameter (assq param-name default-frame-alist)))
(if (consp parameter)
(setcdr parameter scroll-bar-mode)
(setq default-frame-alist
(cons (cons param-name scroll-bar-mode)
default-frame-alist))))))
'(vertical-scrollbars horizontal-scrollbars))
(let ((frames (frame-list)))
(while frames
(modify-frame-parameters
(car frames)
(list (cons 'vertical-scrollbars scroll-bar-mode)
(cons 'horizontal-scrollbars scroll-bar-mode)))
(setq frames (cdr frames)))))
;;;; Buffer navigation using the scrollbar.
(defun scrollbar-set-window-start (event)
......
......@@ -415,25 +415,6 @@ This returns ARGS with the arguments that have been processed removed."
(setq defined-colors (cons this-color defined-colors))))
defined-colors))
(defvar scroll-bar-mode nil)
;;; ??? x-create-screen needs to be changed to use scroll-bar-mode
;;; to decide (by default) whether to make a scroll bar.
(defun scroll-bar-mode (flag)
"Toggle display of vertical scroll bars on each frame.
This command applies to all frames that exist and frames to be
created in the future.
With a numeric argument, if the argument is negative,
turn off scroll bars; otherwise, turn on scroll bars."
(interactive "P")
(setq scroll-bar-mode (if (null flag) (not scroll-bar-mode)
(or (not (numberp flag)) (>= flag 0))))
(let ((frames (frame-list)))
(while frames
(modify-frame-parameters (car frames)
(list (cons 'vertical-scrollbar scroll-bar-mode)))
(setq frames (cdr frames)))))
;;;; Function keys
;;; Give some common function keys reasonable definitions.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment