|
@@ -1,7 +1,37 @@
|
|
|
|
+%
|
|
|
|
+% $Id$
|
|
|
|
+% This file is part of the FPC documentation.
|
|
|
|
+% Copyright (C) 1997, by Michael Van Canneyt
|
|
|
|
+%
|
|
|
|
+% The FPC documentation is free text; you can redistribute it and/or
|
|
|
|
+% modify it under the terms of the GNU Library General Public License as
|
|
|
|
+% published by the Free Software Foundation; either version 2 of the
|
|
|
|
+% License, or (at your option) any later version.
|
|
|
|
+%
|
|
|
|
+% The FPC Documentation is distributed in the hope that it will be useful,
|
|
|
|
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
+% Library General Public License for more details.
|
|
|
|
+%
|
|
|
|
+% You should have received a copy of the GNU Library General Public
|
|
|
|
+% License along with the FPC documentation; see the file COPYING.LIB. If not,
|
|
|
|
+% write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
|
|
+% Boston, MA 02111-1307, USA.
|
|
|
|
+%
|
|
|
|
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
+%
|
|
|
|
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
+% The MSMouse unit
|
|
|
|
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\chapter{The MsMouse unit}
|
|
\chapter{The MsMouse unit}
|
|
|
|
+\FPCexampledir{mmouseex}
|
|
|
|
+
|
|
The msmouse unit provides basic mouse handling under \dos (Go32v1 and Go32v2)
|
|
The msmouse unit provides basic mouse handling under \dos (Go32v1 and Go32v2)
|
|
Some general remarks about the msmouse unit:
|
|
Some general remarks about the msmouse unit:
|
|
\begin{itemize}
|
|
\begin{itemize}
|
|
|
|
+\item For maximum portability, it is advisable to use the \file{mouse} unit;
|
|
|
|
+that unit is portable across platforms, and offers a similar interface.
|
|
|
|
+Under no circumstances should the two units be used together.
|
|
\item The mouse driver does not know when the text screen scrolls. This results
|
|
\item The mouse driver does not know when the text screen scrolls. This results
|
|
in unerased mouse cursors on the screen when the screen scrolls while the
|
|
in unerased mouse cursors on the screen when the screen scrolls while the
|
|
mouse cursor is visible. The solution is to hide the mouse cursor (using
|
|
mouse cursor is visible. The solution is to hide the mouse cursor (using
|
|
@@ -61,8 +91,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seef{GetLastButtonRelease}
|
|
\seef{GetLastButtonRelease}
|
|
\end{function}
|
|
\end{function}
|
|
-\latex{\lstinputlisting{mouseex/mouse5.pp}}
|
|
|
|
-\html{\input{mouseex/mouse5.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse5}
|
|
|
|
+
|
|
\begin{function}{GetLastButtonRelease}
|
|
\begin{function}{GetLastButtonRelease}
|
|
\Declaration
|
|
\Declaration
|
|
Function GetLastButtonRelease (Button: Longint; Var x,y:Longint) : Longint;
|
|
Function GetLastButtonRelease (Button: Longint; Var x,y:Longint) : Longint;
|
|
@@ -84,7 +115,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seef{GetLastButtonPress}
|
|
\seef{GetLastButtonPress}
|
|
\end{function}
|
|
\end{function}
|
|
|
|
+
|
|
For an example, see \seef{GetLastButtonPress}.
|
|
For an example, see \seef{GetLastButtonPress}.
|
|
|
|
+
|
|
\begin{procedure}{GetMouseState}
|
|
\begin{procedure}{GetMouseState}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure GetMouseState (Var x, y, buttons: Longint);
|
|
Procedure GetMouseState (Var x, y, buttons: Longint);
|
|
@@ -103,8 +136,9 @@ None.
|
|
\seef{LPressed}, \seef{MPressed}, \seef{RPressed},
|
|
\seef{LPressed}, \seef{MPressed}, \seef{RPressed},
|
|
\seep{SetMousePos}
|
|
\seep{SetMousePos}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse3.pp}}
|
|
|
|
-\html{\input{mouseex/mouse3.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse3}
|
|
|
|
+
|
|
\begin{procedure}{HideMouse}
|
|
\begin{procedure}{HideMouse}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure HideMouse ;
|
|
Procedure HideMouse ;
|
|
@@ -139,8 +173,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\var{MouseFound} variable.
|
|
\var{MouseFound} variable.
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse1.pp}}
|
|
|
|
-\html{\input{mouseex/mouse1.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse1}
|
|
|
|
+
|
|
\begin{function}{LPressed}
|
|
\begin{function}{LPressed}
|
|
\Declaration
|
|
\Declaration
|
|
Function LPressed : Boolean;
|
|
Function LPressed : Boolean;
|
|
@@ -155,7 +190,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{GetMouseState}, \seef{MPressed}, \seef{RPressed}
|
|
\seep{GetMouseState}, \seef{MPressed}, \seef{RPressed}
|
|
\end{function}
|
|
\end{function}
|
|
|
|
+
|
|
For an example, see \seep{GetMouseState}.
|
|
For an example, see \seep{GetMouseState}.
|
|
|
|
+
|
|
\begin{function}{MPressed}
|
|
\begin{function}{MPressed}
|
|
\Declaration
|
|
\Declaration
|
|
Function MPressed : Boolean;
|
|
Function MPressed : Boolean;
|
|
@@ -170,7 +207,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{GetMouseState}, \seef{LPressed}, \seef{RPressed}
|
|
\seep{GetMouseState}, \seef{LPressed}, \seef{RPressed}
|
|
\end{function}
|
|
\end{function}
|
|
|
|
+
|
|
For an example, see \seep{GetMouseState}.
|
|
For an example, see \seep{GetMouseState}.
|
|
|
|
+
|
|
\begin{function}{RPressed}
|
|
\begin{function}{RPressed}
|
|
\Declaration
|
|
\Declaration
|
|
Function RPressed : Boolean;
|
|
Function RPressed : Boolean;
|
|
@@ -185,7 +224,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{GetMouseState}, \seef{LPressed}, \seef{MPressed}
|
|
\seep{GetMouseState}, \seef{LPressed}, \seef{MPressed}
|
|
\end{function}
|
|
\end{function}
|
|
|
|
+
|
|
For an example, see \seep{GetMouseState}.
|
|
For an example, see \seep{GetMouseState}.
|
|
|
|
+
|
|
\begin{procedure}{SetMouseAscii}
|
|
\begin{procedure}{SetMouseAscii}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseAscii (Ascii: Byte);
|
|
Procedure SetMouseAscii (Ascii: Byte);
|
|
@@ -204,8 +245,9 @@ None
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{SetMouseShape}
|
|
\seep{SetMouseShape}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse8.pp}}
|
|
|
|
-\html{\input{mouseex/mouse8.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse8}
|
|
|
|
+
|
|
\begin{procedure}{SetMouseHideWindow}
|
|
\begin{procedure}{SetMouseHideWindow}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseHideWindow (xmin,ymin,xmax,ymax: Longint);
|
|
Procedure SetMouseHideWindow (xmin,ymin,xmax,ymax: Longint);
|
|
@@ -231,8 +273,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{ShowMouse}, \seep{HideMouse}
|
|
\seep{ShowMouse}, \seep{HideMouse}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{nputlisting{mouseex/mouse9.pp}}
|
|
|
|
-\html{\input{mouseex/mouse9.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse9}
|
|
|
|
+
|
|
\begin{procedure}{SetMousePos}
|
|
\begin{procedure}{SetMousePos}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMousePos (x,y:Longint);
|
|
Procedure SetMousePos (x,y:Longint);
|
|
@@ -249,8 +292,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{GetMouseState}
|
|
\seep{GetMouseState}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse4.pp}}
|
|
|
|
-\html{\input{mouseex/mouse4.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse4}
|
|
|
|
+
|
|
\begin{procedure}{SetMouseShape}
|
|
\begin{procedure}{SetMouseShape}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseShape (ForeColor,BackColor,Ascii: Byte);
|
|
Procedure SetMouseShape (ForeColor,BackColor,Ascii: Byte);
|
|
@@ -268,8 +312,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{SetMouseAscii}
|
|
\seep{SetMouseAscii}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse7.pp}}
|
|
|
|
-\html{\input{mouseex/mouse7.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse7}
|
|
|
|
+
|
|
\begin{procedure}{SetMouseSpeed}
|
|
\begin{procedure}{SetMouseSpeed}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseSpeed (Horizontal, Vertical: Longint);
|
|
Procedure SetMouseSpeed (Horizontal, Vertical: Longint);
|
|
@@ -289,8 +334,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
|
|
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse10.pp}}
|
|
|
|
-\html{\input{mouseex/mouse10.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse10}
|
|
|
|
+
|
|
\begin{procedure}{SetMouseWindow}
|
|
\begin{procedure}{SetMouseWindow}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseWindow (xmin,ymin,xmax,ymax: Longint);
|
|
Procedure SetMouseWindow (xmin,ymin,xmax,ymax: Longint);
|
|
@@ -311,7 +357,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{SetMouseXRange}, \seep{SetMouseYRange}
|
|
\seep{SetMouseXRange}, \seep{SetMouseYRange}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
|
|
+
|
|
For an example, see \seep{SetMouseXRange}.
|
|
For an example, see \seep{SetMouseXRange}.
|
|
|
|
+
|
|
\begin{procedure}{SetMouseXRange}
|
|
\begin{procedure}{SetMouseXRange}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseXRange (Min, Max: Longint);
|
|
Procedure SetMouseXRange (Min, Max: Longint);
|
|
@@ -329,8 +377,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{SetMouseYRange}, \seep{SetMouseWindow}
|
|
\seep{SetMouseYRange}, \seep{SetMouseWindow}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse6.pp}}
|
|
|
|
-\html{\input{mouseex/mouse6.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse6}
|
|
|
|
+
|
|
\begin{procedure}{SetMouseYRange}
|
|
\begin{procedure}{SetMouseYRange}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure SetMouseYRange (Min, Max: Longint);
|
|
Procedure SetMouseYRange (Min, Max: Longint);
|
|
@@ -348,7 +397,9 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{SetMouseXRange}, \seep{SetMouseWindow}
|
|
\seep{SetMouseXRange}, \seep{SetMouseWindow}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
|
|
+
|
|
For an example, see \seep{SetMouseXRange}.
|
|
For an example, see \seep{SetMouseXRange}.
|
|
|
|
+
|
|
\begin{procedure}{ShowMouse}
|
|
\begin{procedure}{ShowMouse}
|
|
\Declaration
|
|
\Declaration
|
|
Procedure ShowMouse ;
|
|
Procedure ShowMouse ;
|
|
@@ -363,6 +414,6 @@ None.
|
|
\SeeAlso
|
|
\SeeAlso
|
|
\seep{HideMouse},\seep{SetMouseHideWindow}
|
|
\seep{HideMouse},\seep{SetMouseHideWindow}
|
|
\end{procedure}
|
|
\end{procedure}
|
|
-\latex{\lstinputlisting{mouseex/mouse2.pp}}
|
|
|
|
-\html{\input{mouseex/mouse2.tex}}
|
|
|
|
|
|
+
|
|
|
|
+\FPCexample{mouse2}
|
|
|
|
|