'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2015,2017 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" copy of this software and associated documentation files (the *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_mouse.3x,v 1.45 2017/05/06 17:29:26 tom Exp $
+.\" $Id: curs_mouse.3x,v 1.50 2018/12/29 23:40:47 tom Exp $
+.ie \n(.g .ds `` \(lq
+.el .ds `` ``
+.ie \n(.g .ds '' \(rq
+.el .ds '' ''
.de NS
-.ie \n(.sp
+.ie n .sp
.el .sp .5
-.ie \n(.in +4
+.ie n .in +4
.el .in +2
.nf
.ft C \" Courier
.de NE
.fi
.ft R
-.in -4
+.ie n .in -4
+.el .in -2
..
.de bP
-.IP \(bu 4
+.ie n .IP \(bu 4
+.el .IP \(bu 2
..
.TH curs_mouse 3X ""
.na
.NS
buttons btns BT Number of buttons on the mouse
get_mouse getm Gm Curses should get button events
-key_mouse kmous Km 0631, Mouse event has occured
+key_mouse kmous Km 0631, Mouse event has occurred
mouse_info minfo Mi Mouse status information
req_mouse_pos reqmp RQ Request mouse position report
.NE
the SVr4 curses library used the \fBget_mouse\fP capability to tell the
terminal which mouse button events it should send,
passing the mouse-button bit-mask to the terminal.
-Also, it could ask the terminal where the mouse was using the \fBreq_mouse_pos\fP capability.
+Also, it could ask the terminal
+where the mouse was using the \fBreq_mouse_pos\fP capability.
.IP
Those features required a terminal which had been modified to work with curses.
They were not part of the X Consortium's xterm.
\\E[?1000%?%p1%{1}%=%th%el%;
.RE
.PP
+The mouse driver also recognizes a newer xterm private mode 1006, e.g.,
+.PP
+.RS 3
+\\E[?1006;1000%?%p1%{1}%=%th%el%;
+.RE
+.PP
The \fIz\fP member in the event structure is not presently used.
It is intended
for use with touch screens (which may be pressure-sensitive) or with
.PP
Because there are no standard terminal responses that would serve to identify
terminals which support the xterm mouse protocol, \fBncurses\fR assumes that
-if your $TERM environment variable contains "xterm",
+if your $TERM environment variable contains \*(``xterm\*('',
or \fBkmous\fR is defined in
the terminal description, then the terminal may send mouse events.
+The \fBkmous\fP capability is checked first, allowing the
+use of newer xterm mouse protocols.
.SH SEE ALSO
\fBcurses\fR(3X),
\fBcurs_kernel\fR(3X),