(window-get-point w)
(window-get-crosshairs w)
(window-get-cross w)
These functions get a point position by mouse click; they return
(x y) .
The following function gets a point position by mouse click. It returns
(button (x y)) where button is 1 for the left
button, 2 for middle, 3 for right.
(window-get-click w)
The following function gets a point position by mouse click within a
specified region. It returns (button (x y)) or NIL if the
mouse leaves the region. If boxflg is t, a box will be
drawn outside the region while the mouse is being tracked.
(window-track-mouse-in-region w x y sizex sizey &optional boxflg)
The following functions get a point position indicated by drawing a line
from a specified origin position to the cursor position; they return
(x y) at the cursor position when a mouse button is clicked. The
latex version restricts the slope of the line to be a slope that
LaTeX can draw; if flg is non-nil, the slope is
restricted to be a LaTeX vector slope.
(window-get-line-position w orgx orgy)
(window-get-latex-position w orgx orgy flg)
The following function gets a position by moving a “ghost” icon,
defined by the icon drawing function fn. This allows exact
positioning of an object by the user.
(window-get-icon-position w fn args &optional (dx 0) (dy 0))
The function fn has arguments (fn w x y . args) , where
x and y are the offset within the window w at which
the icon is to be drawn, and args is a list of arbitrary
arguments, e.g., the size of the icon, that are passed through to the
drawing function. The icon is drawn in xor mode, so it must be
drawn using only “plain” drawing functions, without resetting window
attributes. The returned value is (x y) at the cursor position
when a button is clicked. dx and dy, if specified, are
offsets of x and y from the cursor position.
The following function gets a position by moving a “ghost” box icon.
(window-get-box-position w width height &optional (dx 0) (dy 0))
By default, the lower-left corner of the box is placed at the cursor
position; dx and dy may be used to offset the box from the
cursor, e.g., to move the box by a different corner. The returned value
is (x y) at the cursor position when a button is clicked.
The following function gets coordinates of a box of arbitrary size and position.
(window-get-region w)
The user first clicks for one corner of the box, moves the mouse and
clicks again for the opposite corner, then moves the box into the
desired position. The returned value is ((x y) (width height)),
where (x y) is the lower-left corner of the box.
The following function gets the size of a box by mouse selection,
echoing the size in pixels below the box. offsety should be at
least 30 to leave room to display the size of the box.
(window-get-box-size w offsetx offsety)
The following function adjusts one side of a box.
(window-adjust-box-side w x y width height side)
side specifies the side of the box to be adjusted: left,
right, top, or bottom. The result is
((x y) (width height)) for the resulting box.
(window-get-circle w &optional center:vector)
(window-get-ellipse w &optional center:vector)
These functions interactively get a circle or ellipse. For an ellipse, a
circle is gotten first for the horizontal size; then the vertical size
of the ellipse is adjusted. window-get-circle returns
((x y) radius). window-get-ellipse returns
((x y) (xradius yradius)).
window-track-mouse is the basic function for following the mouse
and performing some action as it moves. This function is used in the
implementation of menus and the mouse-interaction functions described in
this section.
(window-track-mouse w fn &optional outflg)
Each time the mouse position changes or a mouse button is pressed, the
function fn is called with arguments (x y code) where
x and y are the cursor position, code is a button
code (0 if no button, 1 for the left button, 2 for
the middle button, or 3 for the right button).
window-track-mouse continues to track the mouse until fn
returns a value other than nil, at which time
window-track-mouse returns that value. Usually, it is a good idea
for fn to return a value other than nil upon a mouse
click. If the argument outflg is non-nil, the function
fn will be called for button clicks outside the window w;
note, however, that such clicks will not be seen if the containing
window intercepts them, so that this feature will work only if the
window w is inside another Lisp user window.