/usr/share/psychtoolbox-3/PsychBasic/SetMouse.m is in psychtoolbox-3-common 3.0.14.20170103+git6-g605ff5c.dfsg1-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | function SetMouse(x,y,windowPtrOrScreenNumber, mouseid, detachFromMouse)
% SetMouse(x, y [, windowPtrOrScreenNumber][, mouseid][, detachFromMouse=0])
%
% Position the mouse cursor on the screen.
%
% The cursor position (x,y) is "local" to the screen, i.e. relative to the
% origin of the screen if a screen number is supplied, or relative to the
% origin of a screen on which a supplied onscreen window is displayed.
% Otherwise it's "global", i.e. relative to the origin of the main screen
% (Screen 0).
%
% On Linux with X11, the optional 'mouseid' parameter allows to select
% which of potentially multiple cursors should be repositioned. On OS/X and
% Windows this parameter is silently ignored.
%
% On OSX, the optional 'detachFromMouse' parameter, if set to 1 instead of
% its default value of zero, will detach mouse cursor movements from mouse
% movements. The cursor will be frozen in place and can only be moved via
% SetMouse(), but no longer via mouse movements. On Linux and Windows this
% parameter is currently silently ignored.
%
% On Linux with the Wayland backend, this function does nothing.
%
% The delay between a call to SetMouse and when GetMouse will report the
% new mouse cursor position is not known. GetMouse seems to report the new
% position immediately, but we have no guarantee that it always will.
%
% _________________________________________________________________________
%
% See Also: GetMouse, GetClicks
% 6/7/96 dhb Wrote it.
% 8/23/96 dhb Added support for windowInfo argument.
% 3/23/97 dgp Updated.
% 8/14/97 dhb Added comment about delay.
% 8/15/97 dgp Suggest WaitTicks(1).
% 4/24/01 awi Added WINDOWS section.
% 6/10/01 awi Added See Also.
% 4/14/03 awi ****** OS X-specific fork from the OS 9 version *******
% Added call to Screen('PositionCursor'...) for OS X.
% 10/12/04 awi Cosmetic changes to help. This file should be modified
% after the great mouse shift to state SetMouse is depricated.
% 11/18/04 awi Renamed "PositionCursor" to "PositionCursorHelper".
% 02/21/06 mk Added Linux support.
% 06/17/06 mk Added Windows support.
% 11/04/14 mk round() x,y coords for integral coordinates to avoid error.
% 04/18/15 mk Update help text - local coordinates now should also
% work on MS-Windows, not only Linux and OSX.
% 07/20/15 mk Add support for 'detachFromMouse', on OSX for now.
% SetMouse.m wraps the Screen('PositionCursor',..) call to emulate the old SetMouse.mex
if nargin < 2
error('SetMouse requires x and y positions');
end
if nargin < 3 || isempty(windowPtrOrScreenNumber)
windowPtrOrScreenNumber = 0;
end
if nargin < 4
mouseid = [];
end
if nargin < 5 || isempty(detachFromMouse)
detachFromMouse = 0;
end
Screen('SetMouseHelper', windowPtrOrScreenNumber, round(x), round(y), mouseid, detachFromMouse);
|