83 |
;; The following definition is used for debugging scroll bar events. |
;; The following definition is used for debugging scroll bar events. |
84 |
;(defun w32-handle-scroll-bar-event (event) (interactive "e") (princ event)) |
;(defun w32-handle-scroll-bar-event (event) (interactive "e") (princ event)) |
85 |
|
|
86 |
;; mwheel.el should probably be adapted to accept mouse-wheel events |
;; Handle mouse-wheel events with mwheel. |
87 |
;; then this could go. |
;; Normally only mouse-wheel-mode and mwheel-install are autoloaded, |
88 |
(defun mouse-wheel-scroll-line (event) |
;; but binding mouse-wheel must be done directly, since those functions |
89 |
"Scroll the window in which EVENT occurred by `mouse-wheel-scroll-amount'." |
;; do not recognize mouse-wheel as a valid button. |
90 |
(interactive "e") |
(autoload 'mwheel-scroll "mwheel") |
91 |
(condition-case nil |
(global-set-key [mouse-wheel] 'mwheel-scroll) |
92 |
(if (< (car (cdr (cdr event))) 0) |
(global-set-key [C-mouse-wheel] 'mwheel-scroll) |
93 |
(scroll-up (car mouse-wheel-scroll-amount)) |
(global-set-key [S-mouse-wheel] 'mwheel-scroll) |
|
(scroll-down (car mouse-wheel-scroll-amount))) |
|
|
(error nil))) |
|
|
|
|
|
;; for scroll-in-place.el, this way the -scroll-line and -scroll-screen |
|
|
;; commands won't interact |
|
|
(setq scroll-command-groups (list '(mouse-wheel-scroll-line))) |
|
|
|
|
|
(defun mouse-wheel-scroll-screen (event) |
|
|
"Scroll the window in which EVENT occurred by `mouse-wheel-scroll-amount'." |
|
|
(interactive "e") |
|
|
(condition-case nil |
|
|
(if (< (car (cdr (cdr event))) 0) |
|
|
(scroll-up) |
|
|
(scroll-down)) |
|
|
(error nil))) |
|
|
|
|
|
;; Bind the mouse-wheel event: |
|
|
(global-set-key [mouse-wheel] 'mouse-wheel-scroll-line) |
|
|
(global-set-key [C-mouse-wheel] 'mouse-wheel-scroll-screen) |
|
94 |
|
|
95 |
(defun w32-drag-n-drop-debug (event) |
(defun w32-drag-n-drop-debug (event) |
96 |
"Print the drag-n-drop EVENT in a readable form." |
"Print the drag-n-drop EVENT in a readable form." |