blob: c4e739d62e0a8fc982030fc1ade91aedc84d2bfd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
--- lib/exwin.tcl.orig 2017-11-09 20:42:24.000000000 -0800
+++ lib/exwin.tcl 2021-09-06 06:53:11.916007000 -0700
@@ -101,12 +101,26 @@
}
proc mscroll {bindtag num} {
- bind $bindtag <Button-5> [list %W yview scroll $num units]
- bind $bindtag <Button-4> [list %W yview scroll -$num units]
- bind $bindtag <Shift-Button-5> [list %W yview scroll 1 units]
- bind $bindtag <Shift-Button-4> [list %W yview scroll -1 units]
- bind $bindtag <Control-Button-5> [list %W yview scroll 1 pages]
- bind $bindtag <Control-Button-4> [list %W yview scroll -1 pages]
+ # Prior to tcl 8.7a5:
+ # bind $bindtag <Button-5> [list %W yview scroll $num units]
+ # bind $bindtag <Button-4> [list %W yview scroll -$num units]
+ # bind $bindtag <Shift-Button-5> [list %W yview scroll 1 units]
+ # bind $bindtag <Shift-Button-4> [list %W yview scroll -1 units]
+ # bind $bindtag <Control-Button-5> [list %W yview scroll 1 pages]
+ # bind $bindtag <Control-Button-4> [list %W yview scroll -1 pages]
+
+ # tcl 8.7a5 and later. See
+ # https://core.tcl-lang.org/tips/doc/trunk/tip/474.md for more info:
+ bind $bindtag <MouseWheel> [ list tk::MouseWheel %W y %D [ expr 10/-$num ] pixels ]
+ bind $bindtag <Shift-MouseWheel> { tk::MouseWheel %W y %D -10 pixels }
+ bind $bindtag <Control-MouseWheel> { tk::MouseWheel %W y %D -1 pixels }
+}
+
+
+proc fmscroll {bindtag num} {
+ bind $bindtag <MouseWheel> [ list tk::MouseWheel %W y %D [ expr 200/-$num ] units ]
+ bind $bindtag <Shift-MouseWheel> { tk::MouseWheel %W y %D [expr 200/-10 ] units }
+ bind $bindtag <Control-MouseWheel> { tk::MouseWheel %W y %D -1 units }
}
|