Mercurial > hg > xemacs-beta
comparison lisp/hyperbole/hmouse-sh.el @ 100:4be1180a9e89 r20-1b2
Import from CVS: tag r20-1b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:15:11 +0200 |
parents | 131b0175ea99 |
children |
comparison
equal
deleted
inserted
replaced
99:2d83cbd90d8d | 100:4be1180a9e89 |
---|---|
4 ;; SUMMARY: System-dependent Smart Mouse Key bindings (using shift key). | 4 ;; SUMMARY: System-dependent Smart Mouse Key bindings (using shift key). |
5 ;; USAGE: GNU Emacs Lisp Library | 5 ;; USAGE: GNU Emacs Lisp Library |
6 ;; KEYWORDS: hypermedia, mouse | 6 ;; KEYWORDS: hypermedia, mouse |
7 ;; | 7 ;; |
8 ;; AUTHOR: Bob Weiner | 8 ;; AUTHOR: Bob Weiner |
9 ;; ORG: Brown U. | 9 ;; ORG: InfoDock Associates |
10 ;; | 10 ;; |
11 ;; ORIG-DATE: 3-Sep-91 at 21:40:58 | 11 ;; ORIG-DATE: 3-Sep-91 at 21:40:58 |
12 ;; LAST-MOD: 14-Sep-95 at 18:39:12 by Bob Weiner | 12 ;; LAST-MOD: 21-Feb-97 at 18:02:48 by Bob Weiner |
13 ;; | 13 ;; |
14 ;; This file is part of Hyperbole. | 14 ;; This file is part of Hyperbole. |
15 ;; Available for use and distribution under the same terms as GNU Emacs. | 15 ;; Available for use and distribution under the same terms as GNU Emacs. |
16 ;; | 16 ;; |
17 ;; Copyright (C) 1991-1995, Free Software Foundation, Inc. | 17 ;; Copyright (C) 1991-1997, Free Software Foundation, Inc. |
18 ;; Developed with support from Motorola Inc. | 18 ;; Developed with support from Motorola Inc. |
19 ;; | 19 ;; |
20 ;; DESCRIPTION: | 20 ;; DESCRIPTION: |
21 ;; | 21 ;; |
22 ;; See description in "hmouse-key.el". | 22 ;; See description in "hmouse-key.el". |
27 ;;; Public functions | 27 ;;; Public functions |
28 ;;; ************************************************************************ | 28 ;;; ************************************************************************ |
29 | 29 |
30 (defun hmouse-get-bindings () | 30 (defun hmouse-get-bindings () |
31 "Returns list of bindings for mouse keys prior to their use as Smart Keys." | 31 "Returns list of bindings for mouse keys prior to their use as Smart Keys." |
32 (eval | 32 ;; Do nothing when running in batch mode. |
33 (cdr (assoc | 33 (if noninteractive |
34 ;; Get mouse bindings under Emacs 19 or XEmacs, even if not under a | 34 nil |
35 ;; window system since it can have frames on ttys and windowed | 35 (eval |
36 ;; displays at the same time. | 36 (cdr (assoc |
37 (or hyperb:window-system | 37 ;; Get mouse bindings under Emacs 19 or XEmacs, even if not under a |
38 (and (not noninteractive) hyperb:xemacs-p "lemacs") | 38 ;; window system since it can have frames on ttys and windowed |
39 (and (not noninteractive) hyperb:emacs19-p "emacs19")) | 39 ;; displays at the same time. |
40 '(("emacs19" . | 40 (or (and hyperb:xemacs-p "lemacs") |
41 (mapcar (function | 41 (and hyperb:emacs19-p "emacs19") |
42 (lambda (key) (cons key (lookup-key global-map key)))) | 42 hyperb:window-system) |
43 (if (memq window-system '(ns dps)) | 43 '(("emacs19" . |
44 ;; NEXTSTEP offers only 2 shift-mouse buttons which we use | 44 (mapcar (function |
45 ;; as the Smart Keys. | 45 (lambda (key) (cons key (lookup-key global-map key)))) |
46 '([S-down-mouse-1] [S-mouse-1] [S-down-mouse-2] | 46 (if (memq window-system '(ns dps)) |
47 [S-mouse-2] [S-double-mouse-1] [S-triple-mouse-1] | 47 ;; NEXTSTEP offers only 2 shift-mouse buttons which we use |
48 [S-double-mouse-2] [S-triple-mouse-2] | 48 ;; as the Smart Keys. |
49 [vertical-line S-down-mouse-1] | 49 '([S-down-mouse-1] [S-mouse-1] [S-down-mouse-2] |
50 [vertical-line S-mouse-1] | 50 [S-mouse-2] [S-double-mouse-1] [S-triple-mouse-1] |
51 [S-double-mouse-2] [S-triple-mouse-2] | |
52 [vertical-line S-down-mouse-1] | |
53 [vertical-line S-mouse-1] | |
54 [vertical-line S-down-mouse-2] | |
55 [vertical-line S-mouse-2] | |
56 [mode-line S-down-mouse-1] [mode-line S-mouse-1] | |
57 [mode-line S-down-mouse-2] [mode-line S-mouse-2] | |
58 ) | |
59 ;; X | |
60 '([S-down-mouse-2] [S-mouse-2] [S-down-mouse-3] | |
61 [S-mouse-3] [S-double-mouse-2] [S-triple-mouse-2] | |
62 [S-double-mouse-3] [S-triple-mouse-3] | |
51 [vertical-line S-down-mouse-2] | 63 [vertical-line S-down-mouse-2] |
52 [vertical-line S-mouse-2] | 64 [vertical-line S-mouse-2] |
53 [mode-line S-down-mouse-1] [mode-line S-mouse-1] | 65 [vertical-line S-down-mouse-3] |
66 [vertical-line S-mouse-3] | |
54 [mode-line S-down-mouse-2] [mode-line S-mouse-2] | 67 [mode-line S-down-mouse-2] [mode-line S-mouse-2] |
55 ) | 68 [mode-line S-down-mouse-3] [mode-line S-mouse-3] |
56 ;; X | 69 )))) |
57 '([S-down-mouse-2] [S-mouse-2] [S-down-mouse-3] | 70 ("lemacs" . |
58 [S-mouse-3] [S-double-mouse-2] [S-triple-mouse-2] | 71 (nconc |
59 [S-double-mouse-3] [S-triple-mouse-3] | 72 (mapcar (function |
60 [vertical-line S-down-mouse-2] | 73 (lambda (key) |
61 [vertical-line S-mouse-2] | 74 (cons key (lookup-key global-map key)))) |
62 [vertical-line S-down-mouse-3] | 75 '([(shift button2)] [(shift button2up)] |
63 [vertical-line S-mouse-3] | 76 [(shift button3)] [(shift button3up)])) |
64 [mode-line S-down-mouse-2] [mode-line S-mouse-2] | 77 (if (boundp 'mode-line-map) |
65 [mode-line S-down-mouse-3] [mode-line S-mouse-3] | 78 (mapcar (function |
66 )))) | 79 (lambda (key) |
67 ("lemacs" . | 80 (cons key (lookup-key mode-line-map key)))) |
68 (nconc | 81 '([(shift button3)] [(shift button3up)]))))) |
69 (mapcar (function | 82 ("xterm" . |
70 (lambda (key) | 83 (mapcar (function |
71 (cons key (lookup-key global-map key)))) | 84 (lambda (key) (cons key (lookup-key mouse-map key)))) |
72 '([(shift button2)] [(shift button2up)] | 85 (list x-button-s-middle x-button-s-middle-up |
73 [(shift button3)] [(shift button3up)])) | 86 x-button-s-right x-button-s-right-up))) |
74 (if (boundp 'mode-line-map) | 87 ("epoch" . |
75 (mapcar (function | 88 (mapcar (function |
76 (lambda (key) | 89 (lambda (key) (cons key (aref mouse::global-map key)))) |
77 (cons key (lookup-key mode-line-map key)))) | 90 (list (mouse::index mouse-middle mouse-shift) |
78 '([(shift button3)] [(shift button3up)]))))) | 91 (mouse::index mouse-middle mouse-shift-up) |
79 ("xterm" . | 92 (mouse::index mouse-right mouse-shift) |
80 (mapcar (function | 93 (mouse::index mouse-right mouse-shift-up) |
81 (lambda (key) (cons key (lookup-key mouse-map key)))) | 94 ;; Modeline mouse map |
82 (list x-button-s-middle x-button-s-middle-up | 95 (mouse::index mouse-mode-middle mouse-shift) |
83 x-button-s-right x-button-s-right-up))) | 96 (mouse::index mouse-mode-middle mouse-shift-up) |
84 ("epoch" . | 97 (mouse::index mouse-mode-right mouse-shift) |
85 (mapcar (function | 98 (mouse::index mouse-mode-right mouse-shift-up) |
86 (lambda (key) (cons key (aref mouse::global-map key)))) | 99 ))) |
87 (list (mouse::index mouse-middle mouse-shift) | 100 ("next" . |
88 (mouse::index mouse-middle mouse-shift-up) | 101 (mapcar (function |
89 (mouse::index mouse-right mouse-shift) | 102 (lambda (key) |
90 (mouse::index mouse-right mouse-shift-up) | 103 (cons key (mousemap-get |
91 ;; Modeline mouse map | 104 (mouse-list-to-mouse-code key) |
92 (mouse::index mouse-mode-middle mouse-shift) | 105 current-global-mousemap)))) |
93 (mouse::index mouse-mode-middle mouse-shift-up) | 106 (apply 'nconc |
94 (mouse::index mouse-mode-right mouse-shift) | 107 (mapcar (function |
95 (mouse::index mouse-mode-right mouse-shift-up) | 108 (lambda (region) |
96 ))) | 109 (mapcar (function |
97 ("next" . | 110 (lambda (key) |
98 (mapcar (function | 111 (cons region key))) |
99 (lambda (key) | 112 '((shift left) (shift up left) |
100 (cons key (mousemap-get | 113 (shift right) |
101 (mouse-list-to-mouse-code key) | 114 (shift up right) |
102 current-global-mousemap)))) | 115 )))) |
103 (apply 'nconc | 116 '(text scrollbar modeline minibuffer))) |
104 (mapcar (function | 117 )) |
105 (lambda (region) | 118 ;; SunView |
106 (mapcar (function | 119 ("sun" . |
107 (lambda (key) | 120 (mapcar (function |
108 (cons region key))) | 121 (lambda (key) |
109 '((shift left) (shift up left) | 122 (setq key (mouse-list-to-mouse-code key)) |
110 (shift right) | 123 (cons key (mousemap-get |
111 (shift up right) | 124 key current-global-mousemap)))) |
112 )))) | 125 (apply 'nconc |
113 '(text scrollbar modeline minibuffer))) | 126 (mapcar (function |
114 )) | 127 (lambda (region) |
115 ;; SunView | 128 (mapcar (function |
116 ("sun" . | 129 (lambda (key) |
117 (mapcar (function | 130 (cons region key))) |
118 (lambda (key) | 131 '((shift middle) |
119 (setq key (mouse-list-to-mouse-code key)) | 132 (shift up middle) |
120 (cons key (mousemap-get | 133 (shift right) |
121 key current-global-mousemap)))) | 134 (shift up right) |
122 (apply 'nconc | 135 )))) |
123 (mapcar (function | 136 '(text scrollbar modeline minibuffer))) |
124 (lambda (region) | 137 )) |
125 (mapcar (function | 138 ("apollo" . |
126 (lambda (key) | 139 (mapcar (function |
127 (cons region key))) | 140 (lambda (key-str) (apollo-mouse-key-and-binding |
128 '((shift middle) | 141 key-str))) |
129 (shift up middle) | 142 '("M2S" "M2U" "M3S" "M3U"))) |
130 (shift right) | 143 )))))) |
131 (shift up right) | |
132 )))) | |
133 '(text scrollbar modeline minibuffer))) | |
134 )) | |
135 ("apollo" . | |
136 (mapcar (function | |
137 (lambda (key-str) (apollo-mouse-key-and-binding | |
138 key-str))) | |
139 '("M2S" "M2U" "M3S" "M3U"))) | |
140 ))))) | |
141 | 144 |
142 (defun hmouse-setup () | 145 (defun hmouse-setup () |
143 "Binds mouse keys for use as Smart Keys." | 146 "Binds mouse keys for use as Smart Keys." |
144 (interactive) | 147 (interactive) |
145 (or hmouse-bindings-flag hmouse-previous-bindings | 148 ;; Do nothing when running in batch mode. |
146 (setq hmouse-previous-bindings (hmouse-get-bindings))) | 149 (if noninteractive |
147 ;; Ensure Gillespie's Info mouse support is off since | 150 nil |
148 ;; Hyperbole handles that. | 151 (or hmouse-bindings-flag hmouse-previous-bindings |
149 (setq Info-mouse-support nil) | 152 (setq hmouse-previous-bindings (hmouse-get-bindings))) |
150 ;; | 153 ;; Ensure Gillespie's Info mouse support is off since |
151 (cond ;; GNU Emacs 19 | 154 ;; Hyperbole handles that. |
152 ((if (not noninteractive) hyperb:emacs19-p) | 155 (setq Info-mouse-support nil) |
153 (setq hmouse-set-point-command 'mouse-set-point) | 156 ;; |
154 (if (memq window-system '(ns dps)) | 157 (cond;; GNU Emacs 19 |
155 ;; NEXTSTEP offers only 2 shift-mouse buttons which we use | 158 (hyperb:emacs19-p |
156 ;; as the Smart Keys. | 159 (setq hmouse-set-point-command 'mouse-set-point) |
157 (progn | 160 (if (memq window-system '(ns dps)) |
158 (global-set-key [S-down-mouse-1] 'action-key-depress-emacs19) | 161 ;; NEXTSTEP offers only 2 shift-mouse buttons which we use |
159 (global-set-key [S-mouse-1] 'action-mouse-key-emacs19) | 162 ;; as the Smart Keys. |
160 (global-set-key [S-double-mouse-1] 'action-mouse-key-emacs19) | 163 (progn |
161 (global-set-key [S-triple-mouse-1] 'action-mouse-key-emacs19) | 164 (global-set-key [S-down-mouse-1] 'action-key-depress-emacs19) |
162 (global-set-key [S-down-mouse-2] 'assist-key-depress-emacs19) | 165 (global-set-key [S-mouse-1] 'action-mouse-key-emacs19) |
163 (global-set-key [S-mouse-2] 'assist-mouse-key-emacs19) | 166 (global-set-key [S-double-mouse-1] 'action-mouse-key-emacs19) |
164 (global-set-key [S-double-mouse-2] 'assist-mouse-key-emacs19) | 167 (global-set-key [S-triple-mouse-1] 'action-mouse-key-emacs19) |
165 (global-set-key [S-triple-mouse-2] 'assist-mouse-key-emacs19) | 168 (global-set-key [S-down-mouse-2] 'assist-key-depress-emacs19) |
166 (global-set-key [vertical-line S-down-mouse-1] 'action-key-depress-emacs19) | 169 (global-set-key [S-mouse-2] 'assist-mouse-key-emacs19) |
167 (global-set-key [vertical-line S-mouse-1] 'action-mouse-key-emacs19) | 170 (global-set-key [S-double-mouse-2] 'assist-mouse-key-emacs19) |
168 (global-set-key [vertical-line S-down-mouse-2] | 171 (global-set-key [S-triple-mouse-2] 'assist-mouse-key-emacs19) |
169 'assist-key-depress-emacs19) | 172 (global-set-key [vertical-line S-down-mouse-1] 'action-key-depress-emacs19) |
170 (global-set-key [vertical-line S-mouse-2] | 173 (global-set-key [vertical-line S-mouse-1] 'action-mouse-key-emacs19) |
171 'assist-mouse-key-emacs19) | 174 (global-set-key [vertical-line S-down-mouse-2] |
172 (global-set-key [mode-line S-down-mouse-1] 'action-key-depress-emacs19) | 175 'assist-key-depress-emacs19) |
173 (global-set-key [mode-line S-mouse-1] 'action-mouse-key-emacs19) | 176 (global-set-key [vertical-line S-mouse-2] |
174 (global-set-key [mode-line S-down-mouse-2] 'assist-key-depress-emacs19) | 177 'assist-mouse-key-emacs19) |
175 (global-set-key [mode-line S-mouse-2] 'assist-mouse-key-emacs19)) | 178 (global-set-key [mode-line S-down-mouse-1] 'action-key-depress-emacs19) |
176 ;; X | 179 (global-set-key [mode-line S-mouse-1] 'action-mouse-key-emacs19) |
177 (global-set-key [S-down-mouse-2] 'action-key-depress-emacs19) | 180 (global-set-key [mode-line S-down-mouse-2] 'assist-key-depress-emacs19) |
178 (global-set-key [S-mouse-2] 'action-mouse-key-emacs19) | 181 (global-set-key [mode-line S-mouse-2] 'assist-mouse-key-emacs19)) |
179 (global-set-key [S-double-mouse-2] 'action-mouse-key-emacs19) | 182 ;; X |
180 (global-set-key [S-triple-mouse-2] 'action-mouse-key-emacs19) | 183 (global-set-key [S-down-mouse-2] 'action-key-depress-emacs19) |
181 (global-set-key [S-down-mouse-3] 'assist-key-depress-emacs19) | 184 (global-set-key [S-mouse-2] 'action-mouse-key-emacs19) |
182 (global-set-key [S-mouse-3] 'assist-mouse-key-emacs19) | 185 (global-set-key [S-double-mouse-2] 'action-mouse-key-emacs19) |
183 (global-set-key [S-double-mouse-3] 'assist-mouse-key-emacs19) | 186 (global-set-key [S-triple-mouse-2] 'action-mouse-key-emacs19) |
184 (global-set-key [S-triple-mouse-3] 'assist-mouse-key-emacs19) | 187 (global-set-key [S-down-mouse-3] 'assist-key-depress-emacs19) |
185 (global-set-key [vertical-line S-down-mouse-2] 'action-key-depress-emacs19) | 188 (global-set-key [S-mouse-3] 'assist-mouse-key-emacs19) |
186 (global-set-key [vertical-line S-mouse-2] 'action-mouse-key-emacs19) | 189 (global-set-key [S-double-mouse-3] 'assist-mouse-key-emacs19) |
187 (global-set-key [vertical-line S-down-mouse-3] | 190 (global-set-key [S-triple-mouse-3] 'assist-mouse-key-emacs19) |
188 'assist-key-depress-emacs19) | 191 (global-set-key [vertical-line S-down-mouse-2] 'action-key-depress-emacs19) |
189 (global-set-key [vertical-line S-mouse-3] | 192 (global-set-key [vertical-line S-mouse-2] 'action-mouse-key-emacs19) |
190 'assist-mouse-key-emacs19) | 193 (global-set-key [vertical-line S-down-mouse-3] |
191 (global-set-key [mode-line S-down-mouse-2] 'action-key-depress-emacs19) | 194 'assist-key-depress-emacs19) |
192 (global-set-key [mode-line S-mouse-2] 'action-mouse-key-emacs19) | 195 (global-set-key [vertical-line S-mouse-3] |
193 (global-set-key [mode-line S-down-mouse-3] 'assist-key-depress-emacs19) | 196 'assist-mouse-key-emacs19) |
194 (global-set-key [mode-line S-mouse-3] 'assist-mouse-key-emacs19))) | 197 (global-set-key [mode-line S-down-mouse-2] 'action-key-depress-emacs19) |
195 ;; | 198 (global-set-key [mode-line S-mouse-2] 'action-mouse-key-emacs19) |
196 ;; XEmacs | 199 (global-set-key [mode-line S-down-mouse-3] 'assist-key-depress-emacs19) |
197 ((if (not noninteractive) hyperb:xemacs-p) | 200 (global-set-key [mode-line S-mouse-3] 'assist-mouse-key-emacs19))) |
198 ;; Set mouse bindings under XEmacs, even if not under a window | 201 ;; |
199 ;; system since it can have frames on ttys and windowed displays at | 202 ;; XEmacs |
200 ;; the same time. | 203 (hyperb:xemacs-p |
201 (setq hmouse-set-point-command 'hmouse-move-point-xemacs) | 204 ;; Set mouse bindings under XEmacs, even if not under a window |
202 (global-set-key '(shift button2) 'action-key-depress) | 205 ;; system since it can have frames on ttys and windowed displays at |
203 (global-set-key '(shift button2up) 'action-mouse-key) | 206 ;; the same time. |
204 (if (fboundp 'infodock-set-mouse-bindings) | 207 (setq hmouse-set-point-command 'hmouse-move-point-xemacs) |
205 (infodock-set-mouse-bindings) | 208 (global-set-key '(shift button2) 'action-key-depress) |
206 (if (boundp 'mode-line-map) | 209 (global-set-key '(shift button2up) 'action-mouse-key) |
207 (progn (define-key mode-line-map '(shift button3) | 210 (if (fboundp 'infodock-set-mouse-bindings) |
208 'assist-key-depress) | 211 (infodock-set-mouse-bindings) |
209 (define-key mode-line-map '(shift button3up) | 212 (if (boundp 'mode-line-map) |
210 'assist-mouse-key) | 213 (progn (define-key mode-line-map '(shift button3) |
211 )) | 214 'assist-key-depress) |
212 (global-set-key '(shift button3) 'assist-key-depress) | 215 (define-key mode-line-map '(shift button3up) |
213 (global-set-key '(shift button3up) 'assist-mouse-key))) | 216 'assist-mouse-key) |
214 ;; | 217 )) |
215 ;; X | 218 (global-set-key '(shift button3) 'assist-key-depress) |
216 ((equal hyperb:window-system "xterm") | 219 (global-set-key '(shift button3up) 'assist-mouse-key))) |
217 (setq hmouse-set-point-command 'x-mouse-set-point) | 220 ;; |
218 (define-key mouse-map x-button-s-middle 'action-key-depress) | 221 ;; X |
219 (define-key mouse-map x-button-s-middle-up 'action-mouse-key) | 222 ((equal hyperb:window-system "xterm") |
220 (define-key mouse-map x-button-s-right 'assist-key-depress) | 223 (setq hmouse-set-point-command 'x-mouse-set-point) |
221 (define-key mouse-map x-button-s-right-up 'assist-mouse-key) | 224 (define-key mouse-map x-button-s-middle 'action-key-depress) |
222 ;; Use these instead of the above for a true META-BUTTON binding. | 225 (define-key mouse-map x-button-s-middle-up 'action-mouse-key) |
223 ;; (define-key mouse-map x-button-m-middle 'assist-key-depress) | 226 (define-key mouse-map x-button-s-right 'assist-key-depress) |
224 ;; (define-key mouse-map x-button-m-middle-up 'assist-mouse-key) | 227 (define-key mouse-map x-button-s-right-up 'assist-mouse-key) |
225 ) | 228 ;; Use these instead of the above for a true META-BUTTON binding. |
226 ;; | 229 ;; (define-key mouse-map x-button-m-middle 'assist-key-depress) |
227 ;; Epoch | 230 ;; (define-key mouse-map x-button-m-middle-up 'assist-mouse-key) |
228 ((equal hyperb:window-system "epoch") | 231 ) |
229 (setq hmouse-set-point-command 'mouse::set-point) | 232 ;; |
230 (global-set-mouse mouse-middle mouse-shift 'action-key-depress) | 233 ;; Epoch |
231 (global-set-mouse mouse-middle mouse-shift-up 'action-mouse-key) | 234 ((equal hyperb:window-system "epoch") |
232 (global-set-mouse mouse-right mouse-shift 'assist-key-depress) | 235 (setq hmouse-set-point-command 'mouse::set-point) |
233 (global-set-mouse mouse-right mouse-shift-up 'assist-mouse-key) | 236 (global-set-mouse mouse-middle mouse-shift 'action-key-depress) |
234 ;; Modeline mouse map | 237 (global-set-mouse mouse-middle mouse-shift-up 'action-mouse-key) |
235 (global-set-mouse mouse-mode-middle mouse-shift 'action-key-depress) | 238 (global-set-mouse mouse-right mouse-shift 'assist-key-depress) |
236 (global-set-mouse mouse-mode-middle mouse-shift-up 'action-mouse-key) | 239 (global-set-mouse mouse-right mouse-shift-up 'assist-mouse-key) |
237 (global-set-mouse mouse-mode-right mouse-shift 'assist-key-depress) | 240 ;; Modeline mouse map |
238 (global-set-mouse mouse-mode-right mouse-shift-up | 241 (global-set-mouse mouse-mode-middle mouse-shift 'action-key-depress) |
239 'assist-mouse-key) | 242 (global-set-mouse mouse-mode-middle mouse-shift-up 'action-mouse-key) |
240 ) | 243 (global-set-mouse mouse-mode-right mouse-shift 'assist-key-depress) |
241 ;; | 244 (global-set-mouse mouse-mode-right mouse-shift-up |
242 ;; NeXT | 245 'assist-mouse-key) |
243 ((equal hyperb:window-system "next") | 246 ) |
244 (setq hmouse-set-point-command 'hmouse-move-point-eterm) | 247 ;; |
245 ;; Use left button to set point. | 248 ;; NeXT |
246 ;; Use shift-left button instead of non-existent middle as Action Key. | 249 ((equal hyperb:window-system "next") |
247 (mapcar | 250 (setq hmouse-set-point-command 'hmouse-move-point-eterm) |
248 (function | 251 ;; Use left button to set point. |
249 (lambda (region) | 252 ;; Use shift-left button instead of non-existent middle as Action Key. |
250 (global-set-mouse (cons region '(shift left)) 'action-key-depress) | 253 (mapcar |
251 (global-set-mouse (cons region '(shift up left)) 'action-mouse-key) | 254 (function |
252 (global-set-mouse (cons region '(shift right)) 'assist-key-depress) | 255 (lambda (region) |
253 (global-set-mouse (cons region '(shift up right)) | 256 (global-set-mouse (cons region '(shift left)) 'action-key-depress) |
254 'assist-mouse-key) | 257 (global-set-mouse (cons region '(shift up left)) 'action-mouse-key) |
255 ;; Use these instead of the above for a true META-BUTTON binding. | 258 (global-set-mouse (cons region '(shift right)) 'assist-key-depress) |
256 ;; (global-set-mouse (cons region '(meta right)) 'assist-key-depress) | 259 (global-set-mouse (cons region '(shift up right)) |
257 ;; (global-set-mouse (cons region '(meta up right)) 'assist-mouse-key) | 260 'assist-mouse-key) |
258 )) | 261 ;; Use these instead of the above for a true META-BUTTON binding. |
259 '(text scrollbar modeline minibuffer)) | 262 ;; (global-set-mouse (cons region '(meta right)) 'assist-key-depress) |
260 ) | 263 ;; (global-set-mouse (cons region '(meta up right)) 'assist-mouse-key) |
261 ;; | 264 )) |
262 ;; SunView | 265 '(text scrollbar modeline minibuffer)) |
263 ((equal hyperb:window-system "sun") | 266 ) |
264 (setq hmouse-set-point-command 'hmouse-move-point-eterm) | 267 ;; |
265 (mapcar | 268 ;; SunView |
266 (function | 269 ((equal hyperb:window-system "sun") |
267 (lambda (region) | 270 (setq hmouse-set-point-command 'hmouse-move-point-eterm) |
268 (global-set-mouse (cons region '(shift middle)) 'action-key-depress) | 271 (mapcar |
269 (global-set-mouse (cons region '(shift up middle)) | 272 (function |
270 'action-mouse-key) | 273 (lambda (region) |
271 (global-set-mouse (cons region '(shift right)) 'assist-key-depress) | 274 (global-set-mouse (cons region '(shift middle)) 'action-key-depress) |
272 (global-set-mouse (cons region '(shift up right)) | 275 (global-set-mouse (cons region '(shift up middle)) |
273 'assist-mouse-key) | 276 'action-mouse-key) |
274 ;; Use these instead of the above for a true META-BUTTON binding. | 277 (global-set-mouse (cons region '(shift right)) 'assist-key-depress) |
275 ;; (global-set-mouse (cons region '(meta middle)) 'assist-key-depress) | 278 (global-set-mouse (cons region '(shift up right)) |
276 ;; (global-set-mouse (cons region '(meta up middle)) 'assist-mouse-key) | 279 'assist-mouse-key) |
277 )) | 280 ;; Use these instead of the above for a true META-BUTTON binding. |
278 '(text scrollbar modeline minibuffer)) | 281 ;; (global-set-mouse (cons region '(meta middle)) 'assist-key-depress) |
279 ) | 282 ;; (global-set-mouse (cons region '(meta up middle)) 'assist-mouse-key) |
280 ;; | 283 )) |
281 ;; Apollo DM | 284 '(text scrollbar modeline minibuffer)) |
282 ((equal hyperb:window-system "apollo") | 285 ) |
283 (setq hmouse-set-point-command 'apollo-mouse-move-point) | 286 ;; |
284 (bind-apollo-mouse-button "M2S" 'action-key-depress) | 287 ;; Apollo DM |
285 (bind-apollo-mouse-button "M2U" 'action-mouse-key) | 288 ((equal hyperb:window-system "apollo") |
286 (bind-apollo-mouse-button "M3S" 'assist-key-depress) | 289 (setq hmouse-set-point-command 'apollo-mouse-move-point) |
287 (bind-apollo-mouse-button "M3U" 'assist-mouse-key) | 290 (bind-apollo-mouse-button "M2S" 'action-key-depress) |
288 )) | 291 (bind-apollo-mouse-button "M2U" 'action-mouse-key) |
289 (setq hmouse-bindings (hmouse-get-bindings) | 292 (bind-apollo-mouse-button "M3S" 'assist-key-depress) |
290 hmouse-bindings-flag t)) | 293 (bind-apollo-mouse-button "M3U" 'assist-mouse-key) |
294 )) | |
295 (setq hmouse-bindings (hmouse-get-bindings) | |
296 hmouse-bindings-flag t))) |