2012-10-16 18:13 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbnf/hbnf.hbx
* contrib/hbnf/mouse.c
* contrib/hbnf/mouse1.prg
% removed many .prg layer stub functions
! fixed lots of typos and other bugs.
* contrib/hbnf/menu1.prg
* contrib/hbnf/popadder.prg
% two internal callbacks made STATIC. INCOMPATIBLE, but doubtful
anybody would use these accidentally public special functions.
This commit is contained in:
@@ -16,6 +16,18 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2012-10-16 18:13 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||
* contrib/hbnf/hbnf.hbx
|
||||
* contrib/hbnf/mouse.c
|
||||
* contrib/hbnf/mouse1.prg
|
||||
% removed many .prg layer stub functions
|
||||
! fixed lots of typos and other bugs.
|
||||
|
||||
* contrib/hbnf/menu1.prg
|
||||
* contrib/hbnf/popadder.prg
|
||||
% two internal callbacks made STATIC. INCOMPATIBLE, but doubtful
|
||||
anybody would use these accidentally public special functions.
|
||||
|
||||
2012-10-16 16:50 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||
- contrib/hbnf/dosver.prg
|
||||
- contrib/hbnf/isshare.prg
|
||||
|
||||
@@ -223,35 +223,14 @@ DYNAMIC FT_WOY
|
||||
DYNAMIC FT_XBOX
|
||||
DYNAMIC FT_XTOY
|
||||
DYNAMIC FT_YEAR
|
||||
DYNAMIC _FTADDERTAPEUDF
|
||||
DYNAMIC _FT_DFCLOS
|
||||
DYNAMIC _FT_DFINIT
|
||||
DYNAMIC _FT_NWKSTAT
|
||||
DYNAMIC _FT_TEMPFIL
|
||||
DYNAMIC _MGET_DOUBLESPEED
|
||||
DYNAMIC _MGET_HORISPEED
|
||||
DYNAMIC _MGET_MICS
|
||||
DYNAMIC _MGET_MVERSION
|
||||
DYNAMIC _MGET_PAGE
|
||||
DYNAMIC _MGET_VERSPEED
|
||||
DYNAMIC _MSET_PAGE
|
||||
DYNAMIC _MSET_SENSITIVE
|
||||
DYNAMIC _MSE_CONOFF
|
||||
DYNAMIC _MSE_GETPOS
|
||||
DYNAMIC _MSE_MHIDECRS
|
||||
DYNAMIC _MSE_SHOWCURS
|
||||
DYNAMIC _M_GETX
|
||||
DYNAMIC _M_GETY
|
||||
DYNAMIC _M_MBUTPRS
|
||||
DYNAMIC _M_MBUTREL
|
||||
DYNAMIC _M_MDEFCRS
|
||||
DYNAMIC _M_MGETCOORD
|
||||
DYNAMIC _M_MSETCOORD
|
||||
DYNAMIC _M_MSETPOS
|
||||
DYNAMIC _M_MXLIMIT
|
||||
DYNAMIC _M_MYLIMIT
|
||||
DYNAMIC _M_RESET
|
||||
DYNAMIC __FTACUDF
|
||||
|
||||
#if defined( __HBEXTREQ__ ) .OR. defined( __HBEXTERN__HBNF__REQUEST )
|
||||
#uncommand DYNAMIC <fncs,...> => EXTERNAL <fncs>
|
||||
|
||||
@@ -196,7 +196,7 @@ FUNCTION FT_MENU1( aBar, aOptions, aColors, nTopRow, lShadow )
|
||||
RETURN NIL
|
||||
|
||||
// ACHOICE() user function
|
||||
FUNCTION __ftAcUdf( nMode )
|
||||
STATIC FUNCTION __ftAcUdf( nMode )
|
||||
|
||||
LOCAL nRtnVal := AC_CONT
|
||||
DO CASE
|
||||
|
||||
@@ -59,16 +59,16 @@
|
||||
# include "dos.h"
|
||||
#endif
|
||||
|
||||
HB_FUNC( _MGET_PAGE )
|
||||
HB_FUNC( FT_MGETPAGE )
|
||||
{
|
||||
int iPage;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1E;
|
||||
regs.HB_XREGS.ax = 0x1E;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iPage = regs.HB_XREGS.bx;
|
||||
iPage = regs.HB_XREGS.bx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
@@ -79,174 +79,132 @@ HB_FUNC( _MGET_PAGE )
|
||||
hb_retni( iPage );
|
||||
}
|
||||
|
||||
HB_FUNC( _MSET_PAGE )
|
||||
HB_FUNC( FT_MSETPAGE )
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1D;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
regs.HB_XREGS.ax = 0x1D;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _MGET_MVERSION )
|
||||
HB_FUNC( FT_MVERSION )
|
||||
{
|
||||
int iMinor;
|
||||
int iType;
|
||||
int iIRQ;
|
||||
int iMajor;
|
||||
int iMinor;
|
||||
int iType;
|
||||
int iIRQ;
|
||||
int iMajor;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
|
||||
regs.HB_XREGS.ax = 0x24;
|
||||
regs.HB_XREGS.ax = 0x24;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
|
||||
iMinor = regs.h.bl;
|
||||
iType = regs.h.ch;
|
||||
iIRQ = regs.h.cl;
|
||||
iMajor = regs.h.bh;
|
||||
iMinor = regs.h.bl;
|
||||
iType = regs.h.ch;
|
||||
iIRQ = regs.h.cl;
|
||||
iMajor = regs.h.bh;
|
||||
}
|
||||
#else
|
||||
{
|
||||
iMinor = 0;
|
||||
iType = 0;
|
||||
iIRQ = 0;
|
||||
iMajor = 0;
|
||||
iMinor = 0;
|
||||
iType = 0;
|
||||
iIRQ = 0;
|
||||
iMajor = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
{
|
||||
PHB_ITEM pArray = hb_itemArrayNew( 4 );
|
||||
hb_storni( iMinor, 1 );
|
||||
hb_storni( iType, 2 );
|
||||
hb_storni( iIRQ, 3 );
|
||||
|
||||
hb_arraySetNI( pArray, 1, iMinor );
|
||||
hb_arraySetNI( pArray, 2, iType );
|
||||
hb_arraySetNI( pArray, 3, iIRQ );
|
||||
hb_arraySetNI( pArray, 4, iMajor );
|
||||
|
||||
hb_itemReturnRelease( pArray );
|
||||
}
|
||||
hb_retni( iMajor );
|
||||
}
|
||||
|
||||
HB_FUNC( _MGET_HORISPEED )
|
||||
HB_FUNC( _MSET_SENSITIVE ) /* nHoriz, nVert, nDouble */
|
||||
{
|
||||
int iSpeed;
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1A;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
regs.HB_XREGS.cx = hb_parni( 2 );
|
||||
regs.HB_XREGS.dx = hb_parni( 3 );
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( FT_MGETSENS )
|
||||
{
|
||||
int iHoriz;
|
||||
int iVert;
|
||||
int iDouble;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1B;
|
||||
regs.HB_XREGS.ax = 0x1B;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iSpeed = regs.HB_XREGS.bx;
|
||||
iHoriz = regs.HB_XREGS.bx;
|
||||
iVert = regs.HB_XREGS.cx;
|
||||
iDouble = regs.HB_XREGS.dx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
iSpeed = 0;
|
||||
iHoriz = 0;
|
||||
iVert = 0;
|
||||
iDouble = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
hb_retni( iSpeed );
|
||||
hb_storni( iHoriz, 1 );
|
||||
hb_storni( iVert, 2 );
|
||||
hb_storni( iDouble, 3 );
|
||||
}
|
||||
|
||||
HB_FUNC( _MGET_VERSPEED )
|
||||
HB_FUNC( FT_MCONOFF )
|
||||
{
|
||||
int iSpeed;
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1A;
|
||||
regs.HB_XREGS.cx = hb_parni( 2 ) * 8; /* nLeft */
|
||||
regs.HB_XREGS.dx = hb_parni( 1 ) * 8; /* nTop */
|
||||
regs.HB_XREGS.si = hb_parni( 4 ) * 8; /* nRight */
|
||||
regs.HB_XREGS.di = hb_parni( 3 ) * 8; /* nBottom */
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( FT_MMICKEYS )
|
||||
{
|
||||
int iX;
|
||||
int iY;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1B;
|
||||
regs.HB_XREGS.ax = 0x0B;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iSpeed = regs.HB_XREGS.cx;
|
||||
iX = regs.HB_XREGS.cx;
|
||||
iY = regs.HB_XREGS.dx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
iSpeed = 0;
|
||||
iX = 0;
|
||||
iY = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
hb_retni( iSpeed );
|
||||
}
|
||||
|
||||
HB_FUNC( _MGET_DOUBLESPEED )
|
||||
{
|
||||
int iSpeed;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1B;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iSpeed = regs.HB_XREGS.dx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
iSpeed = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
hb_retni( iSpeed );
|
||||
}
|
||||
|
||||
HB_FUNC( _MSET_SENSITIVE ) /* nHoriz,nVert,nDouble) */
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1A;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
regs.HB_XREGS.cx = hb_parni( 2 );
|
||||
regs.HB_XREGS.dx = hb_parni( 3 );
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _MSE_CONOFF ) /* nTop*8,nLeft*8,nBotton*8,nRight*8) */
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x1A;
|
||||
regs.HB_XREGS.cx = hb_parni( 2 );
|
||||
regs.HB_XREGS.dx = hb_parni( 1 );
|
||||
regs.HB_XREGS.si = hb_parni( 4 );
|
||||
regs.HB_XREGS.di = hb_parni( 3 );
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _MGET_MICS )
|
||||
{
|
||||
int iHori;
|
||||
int iVert;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x0B;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iHori = regs.HB_XREGS.cx;
|
||||
iVert = regs.HB_XREGS.dx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
iHori = 0;
|
||||
iVert = 0;
|
||||
}
|
||||
#endif
|
||||
{
|
||||
PHB_ITEM pArray = hb_itemArrayNew( 2 );
|
||||
|
||||
hb_arraySetNI( pArray, 1, iHori );
|
||||
hb_arraySetNI( pArray, 2, iVert );
|
||||
|
||||
hb_itemReturnRelease( pArray );
|
||||
}
|
||||
hb_storni( 1, iX );
|
||||
hb_storni( 2, iY );
|
||||
}
|
||||
|
||||
HB_FUNC( _M_RESET )
|
||||
@@ -291,45 +249,45 @@ HB_FUNC( _MSE_MHIDECRS )
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _MSE_GETPOS )
|
||||
HB_FUNC( FT_MGETPOS )
|
||||
{
|
||||
int iHori;
|
||||
int iVert;
|
||||
int iX;
|
||||
int iY;
|
||||
int iButton;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iHori = regs.HB_XREGS.cx;
|
||||
iVert = regs.HB_XREGS.dx;
|
||||
iX = regs.HB_XREGS.dx;
|
||||
iY = regs.HB_XREGS.cx;
|
||||
iButton = regs.HB_XREGS.bx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
iHori = 0;
|
||||
iVert = 0;
|
||||
iX = 0;
|
||||
iY = 0;
|
||||
iButton = 0;
|
||||
}
|
||||
#endif
|
||||
{
|
||||
PHB_ITEM pArray = hb_itemArrayNew( 2 );
|
||||
|
||||
hb_arraySetNI( pArray, 1, iHori );
|
||||
hb_arraySetNI( pArray, 2, iVert );
|
||||
hb_storni( iX, 1 );
|
||||
hb_storni( iY, 2 );
|
||||
|
||||
hb_itemReturnRelease( pArray );
|
||||
}
|
||||
hb_retni( iButton );
|
||||
}
|
||||
|
||||
HB_FUNC( _M_GETX )
|
||||
HB_FUNC( FT_MGETX )
|
||||
{
|
||||
int iRow;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iRow = regs.HB_XREGS.dx;
|
||||
iRow = regs.HB_XREGS.dx / 8;
|
||||
}
|
||||
#else
|
||||
{
|
||||
@@ -340,16 +298,16 @@ HB_FUNC( _M_GETX )
|
||||
hb_retni( iRow );
|
||||
}
|
||||
|
||||
HB_FUNC( _M_GETY )
|
||||
HB_FUNC( FT_MGETY )
|
||||
{
|
||||
int iCol;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
iCol = regs.HB_XREGS.cx;
|
||||
iCol = regs.HB_XREGS.cx / 8;
|
||||
}
|
||||
#else
|
||||
{
|
||||
@@ -360,157 +318,154 @@ HB_FUNC( _M_GETY )
|
||||
hb_retni( iCol );
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MSETPOS )
|
||||
HB_FUNC( FT_MSETPOS )
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 4;
|
||||
regs.HB_XREGS.cx = hb_parni( 1 );
|
||||
regs.HB_XREGS.dx = hb_parni( 2 );
|
||||
regs.HB_XREGS.ax = 4;
|
||||
regs.HB_XREGS.dx = hb_parni( 1 ); /* x */
|
||||
regs.HB_XREGS.cx = hb_parni( 2 ); /* y */
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MSETCOORD )
|
||||
HB_FUNC( FT_MSETCOORD )
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 4;
|
||||
regs.HB_XREGS.cx = hb_parni( 1 );
|
||||
regs.HB_XREGS.dx = hb_parni( 2 );
|
||||
regs.HB_XREGS.ax = 4;
|
||||
regs.HB_XREGS.dx = hb_parni( 1 ) * 8; /* x */
|
||||
regs.HB_XREGS.cx = hb_parni( 2 ) * 8; /* y */
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MXLIMIT )
|
||||
HB_FUNC( FT_MXLIMIT )
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
int iMaxRow = hb_parni( 2 );
|
||||
int iMinRow = hb_parni( 1 );
|
||||
|
||||
regs.HB_XREGS.ax = 7;
|
||||
regs.HB_XREGS.cx = iMinRow;
|
||||
regs.HB_XREGS.dx = iMaxRow;
|
||||
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 7;
|
||||
regs.HB_XREGS.cx = hb_parni( 1 ); /* nXMin */
|
||||
regs.HB_XREGS.dx = hb_parni( 2 ); /* nXMax */
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MYLIMIT )
|
||||
HB_FUNC( FT_MYLIMIT )
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
int iMaxCol = hb_parni( 2 );
|
||||
int iMinCol = hb_parni( 1 );
|
||||
regs.HB_XREGS.ax = 8;
|
||||
|
||||
regs.HB_XREGS.cx = iMinCol;
|
||||
regs.HB_XREGS.dx = iMaxCol;
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 8;
|
||||
regs.HB_XREGS.cx = hb_parni( 1 ); /* nYMin */
|
||||
regs.HB_XREGS.dx = hb_parni( 2 ); /* nYMax */
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MBUTPRS )
|
||||
HB_FUNC( FT_MBUTPRS )
|
||||
{
|
||||
int inX;
|
||||
int inY;
|
||||
int inButton;
|
||||
int lStatus;
|
||||
int inX;
|
||||
int inY;
|
||||
int inButton;
|
||||
int iStatus;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 6;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
regs.HB_XREGS.ax = 5;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
|
||||
inY = regs.HB_XREGS.cx;
|
||||
inX = regs.HB_XREGS.dx;
|
||||
inButton = regs.HB_XREGS.bx;
|
||||
lStatus = regs.HB_XREGS.ax;
|
||||
inX = regs.HB_XREGS.dx;
|
||||
inY = regs.HB_XREGS.cx;
|
||||
inButton = regs.HB_XREGS.bx;
|
||||
iStatus = regs.HB_XREGS.ax;
|
||||
}
|
||||
#else
|
||||
{
|
||||
inY = 0;
|
||||
inX = 0;
|
||||
inY = 0;
|
||||
inButton = 0;
|
||||
lStatus = 0;
|
||||
iStatus = 0;
|
||||
}
|
||||
#endif
|
||||
{
|
||||
PHB_ITEM pArray = hb_itemArrayNew( 4 );
|
||||
|
||||
hb_arraySetNI( pArray, 1, inButton ); /* NOTE: I've changed 1 to 3 */
|
||||
hb_arraySetNI( pArray, 2, inX );
|
||||
hb_arraySetNI( pArray, 3, inY );
|
||||
hb_arraySetNI( pArray, 4, lStatus ); /* NOTE: I've changed 1 to 3 */
|
||||
hb_storni( inButton, 2 );
|
||||
hb_storni( inX, 3 );
|
||||
hb_storni( inY, 4 );
|
||||
|
||||
hb_itemReturnRelease( pArray );
|
||||
}
|
||||
hb_retni( iStatus );
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MBUTREL )
|
||||
HB_FUNC( FT_MBUTREL )
|
||||
{
|
||||
int inX;
|
||||
int inY;
|
||||
int inButton;
|
||||
int iStatus;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x0A;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
|
||||
hb_reta( 4 );
|
||||
hb_storvni( regs.HB_XREGS.bx, -1, 1 );
|
||||
hb_storvni( regs.HB_XREGS.cx, -1, 2 );
|
||||
hb_storvni( regs.HB_XREGS.dx, -1, 3 );
|
||||
hb_storvni( regs.HB_XREGS.ax, -1, 4 );
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 6;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
inX = regs.HB_XREGS.dx;
|
||||
inY = regs.HB_XREGS.cx;
|
||||
inButton = regs.HB_XREGS.bx;
|
||||
iStatus = regs.HB_XREGS.ax;
|
||||
}
|
||||
#else
|
||||
hb_reta( 4 );
|
||||
hb_storvni( 0, -1, 1 );
|
||||
hb_storvni( 0, -1, 2 );
|
||||
hb_storvni( 0, -1, 3 );
|
||||
hb_storvni( 0, -1, 4 );
|
||||
{
|
||||
inX = 0;
|
||||
inY = 0;
|
||||
inButton = 0;
|
||||
iStatus = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
hb_storni( inButton, 2 );
|
||||
hb_storni( inX, 3 );
|
||||
hb_storni( inY, 4 );
|
||||
|
||||
hb_retni( iStatus );
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MDEFCRS )
|
||||
HB_FUNC( FT_MDEFCRS )
|
||||
{
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 0x0A;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 );
|
||||
regs.HB_XREGS.cx = hb_parni( 2 );
|
||||
regs.HB_XREGS.dx = hb_parni( 3 );
|
||||
|
||||
regs.HB_XREGS.ax = 10;
|
||||
regs.HB_XREGS.bx = hb_parni( 1 ); /* nCurType */
|
||||
regs.HB_XREGS.cx = hb_parni( 2 ); /* nScrMask */
|
||||
regs.HB_XREGS.dx = hb_parni( 3 ); /* nCurMask */
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
HB_FUNC( _M_MGETCOORD )
|
||||
HB_FUNC( FT_MGETCOORD )
|
||||
{
|
||||
int inX;
|
||||
int inY;
|
||||
int inButton;
|
||||
int inX;
|
||||
int inY;
|
||||
int inButton;
|
||||
|
||||
#if defined( HB_OS_DOS )
|
||||
{
|
||||
union REGS regs;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
regs.HB_XREGS.ax = 3;
|
||||
HB_DOS_INT86( 0x33, ®s, ®s );
|
||||
|
||||
inButton = regs.HB_XREGS.bx;
|
||||
inY = regs.HB_XREGS.cx;
|
||||
inX = regs.HB_XREGS.dx;
|
||||
inX = regs.HB_XREGS.dx / 8;
|
||||
inY = regs.HB_XREGS.cx / 8;
|
||||
inButton = regs.HB_XREGS.bx;
|
||||
}
|
||||
#else
|
||||
{
|
||||
@@ -519,13 +474,9 @@ HB_FUNC( _M_MGETCOORD )
|
||||
inButton = 0;
|
||||
}
|
||||
#endif
|
||||
{
|
||||
PHB_ITEM pArray = hb_itemArrayNew( 3 );
|
||||
|
||||
hb_arraySetNI( pArray, 1, inX );
|
||||
hb_arraySetNI( pArray, 2, inY );
|
||||
hb_arraySetNI( pArray, 3, inButton );
|
||||
hb_storni( inX, 1 );
|
||||
hb_storni( inY, 2 );
|
||||
|
||||
hb_itemReturnRelease( pArray );
|
||||
}
|
||||
hb_retni( inButton );
|
||||
}
|
||||
|
||||
@@ -5,15 +5,6 @@
|
||||
THREAD STATIC t_lCrsState := .F.
|
||||
THREAD STATIC t_lMinit := .F.
|
||||
|
||||
FUNCTION FT_MMICKEYS( /* @ */ nX, /* @ */ nY ) // read mouse motion counters
|
||||
|
||||
LOCAL aReturn := _mget_mics()
|
||||
|
||||
nX := aReturn[ 1 ] // store horizontal motion units
|
||||
nY := aReturn[ 2 ] // store vertical motion units
|
||||
|
||||
RETURN NIL // no function output
|
||||
|
||||
FUNCTION FT_MDBLCLK( nClick, nButton, nInterval, nRow, nCol, nStart )
|
||||
|
||||
LOCAL nVert, nHorz // local row and col coordinates
|
||||
@@ -101,12 +92,6 @@ FUNCTION FT_MDBLCLK( nClick, nButton, nInterval, nRow, nCol, nStart )
|
||||
|
||||
RETURN lDouble
|
||||
|
||||
FUNCTION FT_MCONOFF( nTop, nLeft, nBottom, nRight )
|
||||
|
||||
_mse_conoff( nTop * 8, nLeft * 8, nBottom * 8, nRight * 8 )
|
||||
|
||||
RETURN NIL
|
||||
|
||||
FUNCTION FT_MINREGION( nTR, nLC, nBR, nRC )
|
||||
|
||||
RETURN ;
|
||||
@@ -118,19 +103,15 @@ FUNCTION FT_MSETSENS( nHoriz, nVert, nDouble )
|
||||
LOCAL nCurHoriz, nCurVert, nCurDouble
|
||||
|
||||
// Get current values
|
||||
|
||||
FT_MGETSENS( @nCurHoriz, @nCurVert, @nCurDouble )
|
||||
|
||||
// Set defaults if necessary
|
||||
|
||||
IF ! HB_ISNUMERIC( nHoriz )
|
||||
nHoriz := nCurHoriz
|
||||
ENDIF
|
||||
|
||||
IF ! HB_ISNUMERIC( nVert )
|
||||
nVert := nCurVert
|
||||
ENDIF
|
||||
|
||||
IF ! HB_ISNUMERIC( nDouble )
|
||||
nDouble := nCurDouble
|
||||
ENDIF
|
||||
@@ -140,32 +121,6 @@ FUNCTION FT_MSETSENS( nHoriz, nVert, nDouble )
|
||||
|
||||
RETURN NIL
|
||||
|
||||
FUNCTION FT_MGETSENS( /* @ */ nHoriz, /* @ */ nVert, /* @ */ nDouble )
|
||||
|
||||
nHoriz := _mget_horispeed()
|
||||
nVert := _mget_verspeed()
|
||||
nDouble := _mget_doublespeed()
|
||||
|
||||
RETURN NIL
|
||||
|
||||
FUNCTION FT_MVERSION( /* @ */ nMinor, /* @ */ nType, /* @ */ nIRQ )
|
||||
|
||||
LOCAL aReturn := _mget_mversion()
|
||||
|
||||
nMinor := aReturn[ 1 ]
|
||||
nType := aReturn[ 2 ]
|
||||
nIRQ := aReturn[ 3 ]
|
||||
|
||||
RETURN aReturn[ 4 ]
|
||||
|
||||
FUNCTION FT_MSETPAGE( nPage )
|
||||
|
||||
RETURN _mset_page( nPage )
|
||||
|
||||
FUNCTION FT_MGETPAGE()
|
||||
|
||||
RETURN _mget_page()
|
||||
|
||||
FUNCTION FT_MINIT()
|
||||
|
||||
// If not previously initialized then try
|
||||
@@ -223,70 +178,3 @@ FUNCTION FT_MHIDECRS() // decrement internal cursor flag and hide cursor
|
||||
t_lCrsState := .F.
|
||||
|
||||
RETURN NIL // no output from function
|
||||
|
||||
FUNCTION FT_MGETPOS( /* @ */ nX, /* @ */ nY )
|
||||
|
||||
LOCAL aReturn := _mse_getpos()
|
||||
|
||||
nX := aReturn[ 1 ] // store new x-coordinate
|
||||
nY := aReturn[ 2 ] // store new y-coordinate
|
||||
|
||||
RETURN aReturn[ 3 ] // return button status
|
||||
|
||||
FUNCTION FT_MGETX()
|
||||
|
||||
RETURN _m_getx() / 8 // return x-coordinate
|
||||
|
||||
FUNCTION FT_MGETY()
|
||||
|
||||
RETURN _m_gety() / 8 // return y-coordinate
|
||||
|
||||
FUNCTION FT_MSETPOS( nX, nY ) // set mouse cursor location
|
||||
|
||||
RETURN _m_msetpos( nY, nX )
|
||||
|
||||
FUNCTION FT_MSETCOORD( nX, nY ) // set mouse cursor location
|
||||
|
||||
RETURN _m_MSETCOORD( nY * 8, nX * 8 )
|
||||
|
||||
FUNCTION FT_MXLIMIT( nXMin, nXMax ) // set vertical minimum and maximum coordinates
|
||||
|
||||
RETURN _m_mxlimit( nXMin, nXMAX )
|
||||
|
||||
FUNCTION FT_MYLIMIT( nYMin, nYMax ) // set horizontal minimum and maximum coordinates
|
||||
|
||||
RETURN _m_mYlimit( nYMin, nYMAX )
|
||||
|
||||
FUNCTION FT_MBUTPRS( nButton, /* @ */ nButPrs, /* @ */ nX, /* @ */ nY ) // get button press information
|
||||
|
||||
LOCAL aReturn := _m_MBUTPRS( nButton )
|
||||
|
||||
nButPrs := aReturn[ 1 ] // store updated press count
|
||||
nX := aReturn[ 2 ] // x-coordinate at last press
|
||||
nY := aReturn[ 3 ] // y-coordinate at last press
|
||||
|
||||
RETURN aReturn[ 4 ] // return button status
|
||||
|
||||
FUNCTION FT_MBUTREL( nButton, /* @ */ nButRel, /* @ */ nX, /* @ */ nY ) // get button release information
|
||||
|
||||
LOCAL aReturn := _m_MBUTREL( nButton )
|
||||
|
||||
nButRel := aReturn[ 1 ] // store updated release count
|
||||
nX := aReturn[ 2 ] // x-coordinate at last release
|
||||
nY := aReturn[ 3 ] // y-coordinate at last release
|
||||
|
||||
RETURN aReturn[ 4 ] // return button status
|
||||
|
||||
FUNCTION FT_MDEFCRS( nCurType, nScrMask, nCurMask ) // define text cursor type and masks
|
||||
|
||||
RETURN _m_mdefcrs( nCurType, nScrMask, nCurMask )
|
||||
|
||||
// Duplicated code from FT_MGETPOS() for speed reasons
|
||||
FUNCTION FT_MGETCOORD( /* @ */ nX, /* @ */ nY )
|
||||
|
||||
LOCAL aReturn := _m_mgetcoord()
|
||||
|
||||
nX := Int( aReturn[ 1 ] / 8 ) // store new x-coordinate
|
||||
nY := Int( aReturn[ 2 ] / 8 ) // store new y-coordinate
|
||||
|
||||
RETURN aReturn[ 3 ] // return button status
|
||||
|
||||
@@ -1249,7 +1249,7 @@ STATIC FUNCTION _ftQuest( cMessage, xVarVal, cPict, bValid, lNoESC, nWinColor, n
|
||||
+--------------------------------------------------------------------------+
|
||||
*/
|
||||
|
||||
FUNCTION _ftAdderTapeUDF( mode, cur_elem, rel_pos, /* @ */ lAC_exit_ok )
|
||||
STATIC FUNCTION _ftAdderTapeUDF( mode, cur_elem, rel_pos, /* @ */ lAC_exit_ok )
|
||||
|
||||
LOCAL nKey, nRtnVal
|
||||
|
||||
|
||||
Reference in New Issue
Block a user