19990916-21:00 GMT+1

This commit is contained in:
Viktor Szakats
1999-09-16 19:11:46 +00:00
parent 815b9485cb
commit 5f04be73ee
57 changed files with 1465 additions and 1116 deletions

View File

@@ -1,3 +1,41 @@
19990916-21:00 GMT+1 Victor Szel <info@szelvesz.hu>
* source/rtl/*.c
* Copyright text format change.
+ Missing copyright headers added.
; Now this work is finished.
* include/extend.h
+ hb_tone() prototype added.
* source/rtl/gt/gtwin.c
- Commented out two unused static variables.
* source/rtl/classes.c
- Removed two unused variables.
* tests/working/rtl_test.prg
+ Some lines uncommented, since the PP can now process them.
* tests/working/testcopy.prg
tests/working/Makefile
- Removed since it's now in RTL_TEST.
* tests/working/hb*.bat
! Updates by Jose Lalin.
* makefile.b32
! Added memvarbl.prg
* source/rtl/achoice.prg
source/rtl/adir.prg
source/rtl/alert.prg
source/rtl/asort.prg
source/rtl/memvarbl.prg
source/rtl/menuto.prg
source/rtl/objfunc.prg
source/rtl/readvar.prg
source/rtl/setkey.prg
source/rtl/tbcolumn.prg
source/rtl/tclass.prg
source/rtl/tgetlist.prg
source/rtl/errorsys.prg
+ Using IS*() macros for type checking, common.ch
#included to all of these files.
* Some = changed to == in setkey.prg
19990916-17:10 GMT+2 Ryszard Glab <rglab@imid.med.pl>
*source/vm/dynsym.c

View File

@@ -373,6 +373,7 @@ extern void hb_consoleInitialize( void );
extern void hb_consoleRelease( void );
extern char * hb_consoleGetNewLine( void );
extern void hb_tone( double dFrequency, double dDuration );
extern char * hb_setColor( char * );
/* Please leave these at the bottom of this file */

View File

@@ -24,7 +24,7 @@ harbour.lib : achoice.obj adir.obj alert.obj arrays.obj asort.obj \
errorapi.obj errorsys.obj harbinit.obj extend.obj fileread.obj filesys.obj fm.obj \
hardcr.obj hb_f.obj hvm.obj initsymb.obj inkey.obj itemapi.obj \
langapi.obj math.obj mathx.obj memvars.obj menuto.obj mtran.obj msges.obj \
objfunc.obj readvar.obj xsavescr.obj\
objfunc.obj readvar.obj xsavescr.obj memvarbl.obj \
set.obj setcolor.obj setkey.obj strfmt.obj strings.obj symbols.obj stringp.obj \
stringsx.obj tbcolumn.obj tbrowse.obj tbrwtext.obj tclass.obj tget.obj tgetlist.obj tone.obj transfrm.obj
@@ -88,6 +88,7 @@ tone.obj : tone.c extend.h init.h inkey.h
transfrm.obj : transfrm.c extend.h hbdefs.h
readvar.obj : readvar.c extend.h hbdefs.h
xsavescr.obj : xsavescr.c extend.h hbdefs.h
memvarbl.obj : memvarbl.c extend.h hbdefs.h
achoice.c : achoice.prg harbour.exe
adir.c : adir.prg harbour.exe
@@ -111,6 +112,7 @@ tget.c : tget.prg harbour.exe
tgetlist.c : tgetlist.prg harbour.exe
readvar.c : readvar.prg harbour.exe
xsavescr.c : xsavescr.prg harbour.exe
memvarbl.c : memvarbl.prg harbour.exe
.prg.c:
bin\harbour $< /n /osource\rtl\ /iinclude

View File

@@ -133,15 +133,15 @@ function achoice( nTop, nLft, nBtm, nRyt, acItems, xSelect, xUserFunc, nPos, nHi
nNumCols := nRyt - nLft + 1
nNumRows := nBtm - nTop + 1
aeval( acItems, { | x, n | if( valtype( x ) == "C", aadd( acCopy, padr( x, nNumCols ) ), .F. ) } )
aeval( acItems, { | x, n | if( ISCHAR( x ), aadd( acCopy, padr( x, nNumCols ) ), .F. ) } )
nItems := len( acCopy )
alSelect := array( nItems )
IF valtype( xSelect ) == "A"
IF ISARRAY( xSelect )
afill( alSelect, .T. )
for nCntr := 1 to len( xSelect )
IF nCntr <= nItems
IF valtype( xSelect[ nCntr ] ) == "C"
IF ISCHAR( xSelect[ nCntr ] )
IF empty( xSelect[ nCntr ] )
lFinished := .T.
nPos := 0

View File

@@ -33,6 +33,7 @@
*
*/
#include "common.ch"
#include "directry.ch"
FUNCTION aDir( cFileMask, aName, aSize, aDate, aTime, aAttr )
@@ -47,7 +48,7 @@ FUNCTION aDir( cFileMask, aName, aSize, aDate, aTime, aAttr )
// ; CA-Clipper would fail on this case.
IF !( ValType( cFileMask ) == "C" )
IF !ISCHAR( cFileMask )
RETURN 0
ENDIF
@@ -59,25 +60,25 @@ FUNCTION aDir( cFileMask, aName, aSize, aDate, aTime, aAttr )
// ;
IF ValType( aAttr ) == "A"
IF ISARRAY( aAttr )
aDir := Directory( cFileMask, "HSD" )
ELSE
aDir := Directory( cFileMask )
ENDIF
IF Valtype( aName ) == 'A'
IF ISARRAY( aName )
nNameLen := Len( aName )
ENDIF
IF Valtype( aSize ) == 'A'
IF ISARRAY( aSize )
nSizeLen := Len( aSize )
ENDIF
IF Valtype( aDate ) == 'A'
IF ISARRAY( aDate )
nDateLen := Len( aDate )
ENDIF
IF Valtype( aTime ) == 'A'
IF ISARRAY( aTime )
nTimeLen := Len( aTime )
ENDIF
IF Valtype( aAttr ) == 'A'
IF ISARRAY( aAttr )
nAttrLen := Len( aAttr )
ENDIF

View File

@@ -23,6 +23,7 @@
*/
#include "box.ch"
#include "common.ch"
#include "inkey.ch"
#include "setcurs.ch"
@@ -66,7 +67,7 @@ FUNCTION Alert( xMessage, aOptions, cColorNorm, nDelay )
#ifdef HARBOUR_STRICT_CLIPPER_COMPATIBILITY
IF !( ValType( xMessage ) == "C" )
IF !ISCHAR( xMessage )
RETURN NIL
ENDIF
@@ -82,10 +83,10 @@ FUNCTION Alert( xMessage, aOptions, cColorNorm, nDelay )
RETURN NIL
ENDIF
IF ValType( xMessage ) == "A"
IF ISARRAY( xMessage )
FOR iEval := 1 TO Len( xMessage )
IF ValType( xMessage[ iEval ] ) == "C"
IF ISCHAR( xMessage[ iEval ] )
AAdd( aSay, xMessage[ iEval ] )
ENDIF
NEXT
@@ -112,11 +113,11 @@ FUNCTION Alert( xMessage, aOptions, cColorNorm, nDelay )
#endif
IF !( ValType( aOptions ) == "A" )
IF !ISARRAY( aOptions )
aOptions := {}
ENDIF
IF !( ValType( cColorNorm ) == "C" )
IF !ISCHAR( cColorNorm )
cColorNorm := "W+/R"
cColorHigh := "W+/B"
ELSE
@@ -135,7 +136,7 @@ FUNCTION Alert( xMessage, aOptions, cColorNorm, nDelay )
/* Cleanup the button array */
aOptionsOK := {}
FOR iEval := 1 TO Len( aOptions )
IF ValType( aOptions[ iEval ] ) == "C" .AND. !Empty( aOptions[ iEval ] )
IF ISCHAR( aOptions[ iEval ] ) .AND. !Empty( aOptions[ iEval ] )
AAdd( aOptionsOK, aOptions[ iEval ] )
ENDIF
NEXT

View File

@@ -3,47 +3,49 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Array API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
The Array API
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb_arrayIsObject()
hb_arrayError()
hb_arrayCopyC()
hb_arrayGetC()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb_arrayIsObject()
* hb_arrayError()
* hb_arrayCopyC()
* hb_arrayGetC()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "itemapi.h"

View File

@@ -33,6 +33,8 @@
*
*/
#include "common.ch"
/*
* <aSorted> aSort( <aUnsorted>, [<nStart>], [<nCount>], [<bBlock>] )
*
@@ -40,13 +42,13 @@
*/
FUNCTION aSort( aArray, nStart, nCount, bBlock )
IF !( ValType( aArray ) == "A" )
IF !ISARRAY( aArray )
RETURN NIL
ENDIF
IF Len( aArray ) >= 1
IF !( ValType( nStart ) == "N" ) .OR. nStart == 0
IF !ISNUM( nStart ) .OR. nStart == 0
nStart := 1
ENDIF
@@ -56,7 +58,7 @@ FUNCTION aSort( aArray, nStart, nCount, bBlock )
nStart := Len( aArray )
ENDIF
IF !( ValType( nCount ) == "N" ) .OR. nCount < 1 .OR. nCount > ( Len( aArray ) - nStart + 1 )
IF !ISNUM( nCount ) .OR. nCount < 1 .OR. nCount > ( Len( aArray ) - nStart + 1 )
nCount := Len( aArray ) - nStart + 1
ENDIF
@@ -65,7 +67,7 @@ FUNCTION aSort( aArray, nStart, nCount, bBlock )
since the codeblock will be called one more time for the
first logical element than in Clipper. */
IF !( ValType( bBlock ) == "B" ) .OR. !( ValType( Eval( bBlock, nStart, nStart ) ) == "L" )
IF !ISBLOCK( bBlock ) .OR. !( ISLOG( Eval( bBlock, nStart, nStart ) ) )
bBlock := {| x, y | x < y }
ENDIF

View File

@@ -3,58 +3,59 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* Base-routines for OOPS system
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
Base-routines for OOPS system
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Eddie Runia <eddie@runia.com>:
partial copyright regarding the following functions :
:CLASSSEL()
__clsDelMsg()
__clsModMsg()
__clsInstSuper()
__cls_CntClsData()
__cls_CntData()
__cls_DecData()
__cls_IncData()
__objClone()
__objHasMsg()
__objSendMsg()
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb___msgEval()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Eddie Runia <eddie@runia.com>
* :CLASSSEL()
* __clsDelMsg()
* __clsModMsg()
* __clsInstSuper()
* __cls_CntClsData()
* __cls_CntData()
* __cls_DecData()
* __cls_IncData()
* __objClone()
* __objHasMsg()
* __objSendMsg()
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb___msgEval()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "errorapi.h"
@@ -506,7 +507,6 @@ HARBOUR HB___CLSDELMSG( void )
{
PCLASS pClass = s_pClasses + wClass - 1;
WORD wMask = pClass->wHashKey * BUCKET;
PHB_SYMB pMessage = pMsg->pSymbol;
WORD wAt = ( ( ( unsigned ) pMsg ) % pClass->wHashKey ) * BUCKET;
WORD wLimit = wAt ? ( wAt - 1 ) : ( wMask - 1 );
@@ -591,7 +591,6 @@ HARBOUR HB___CLSMODMSG( void )
if( pMsg )
{
PCLASS pClass = s_pClasses + wClass - 1;
PHB_SYMB pMessage = pMsg->pSymbol;
WORD wAt = ( ( ( unsigned ) pMsg ) % pClass->wHashKey ) * BUCKET;
WORD wMask = pClass->wHashKey * BUCKET;
WORD wLimit = wAt ? ( wAt - 1 ) : ( wMask - 1 );

View File

@@ -3,37 +3,35 @@
*/
/*
Harbour Project source code
This file is a part of Harbour Runtime Library and it contains code
that handles codeblocks
Copyright (C) 1999 Ryszard Glab
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
* Harbour Project source code:
* Codeblock runtime support
*
* Copyright 1999 Ryszard Glab <rglab@imid.med.pl>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/* The Harbour implementation of codeblocks */

View File

@@ -3,61 +3,63 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Console API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
Console management
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Eddie Runia <eddie@runia.com>:
__ACCEPT()
The following functions are Copyright 1999 David G. Holm <dholm@jsd-llc.com>:
adjust_pos(), hb_altout(), hb_devout(), HB_DEVOUT(), hb_devpos(),
HB_DEVPOS(), hb_dispout(), HB___EJECT(), hb_max_col(), HB_MAXCOL(),
hb_max_row(), HB_MAXROW(), hb_out(), hb_outerr(), HB_OUTERR(),
hb_outstd(), HB_OUTSTD(), HB_PCOL(), HB_PROW(), hb_setpos(),
HB_SETPOS(), HB_SETPRC(), HB_SCROLL(), and hb_consoleInitialize().
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
HB_SETPOSBS()
HB_DISPBOX() GT version.
HB_DISPBEGIN()
HB_DISPEND()
HB_DISPCOUNT()
HB_ISCOLOR()
HB_NOSNOW()
HB___COLORINDEX().
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Eddie Runia <eddie@runia.com>
* HB___ACCEPT()
*
* Copyright 1999 David G. Holm <dholm@jsd-llc.com>
* adjust_pos(), hb_altout(), hb_devout(), HB_DEVOUT(), hb_devpos(),
* HB_DEVPOS(), hb_dispout(), HB___EJECT(), hb_max_col(), HB_MAXCOL(),
* hb_max_row(), HB_MAXROW(), hb_out(), hb_outerr(), HB_OUTERR(),
* hb_outstd(), HB_OUTSTD(), HB_PCOL(), HB_PROW(), hb_setpos(),
* HB_SETPOS(), HB_SETPRC(), HB_SCROLL(), and hb_consoleInitialize()
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* HB_SETPOSBS()
* HB_DISPBOX() (GT version)
* HB_DISPBEGIN()
* HB_DISPEND()
* HB_DISPCOUNT()
* HB_ISCOLOR()
* HB_NOSNOW()
* HB___COLORINDEX()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "itemapi.h"

View File

@@ -3,35 +3,35 @@
*/
/*
Harbour Project source code
The __COPYFILE() function
Copyright 1999 Andi Jahja <andij@aonlippo.co.id>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
* Harbour Project source code:
* __COPYFILE() function
*
* Copyright 1999 Andi Jahja <andij@aonlippo.co.id>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "extend.h"
#include "errorapi.h"

View File

@@ -3,55 +3,67 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Date API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
Dates management
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 David G. Holm <dholm@jsd-llc.com>:
HB_CTOD(), HB_DATE(), hb_dtoc().
The following functions are Copyright 1999 Jose Lalin <dezac@corevia.com>:
hb_seconds(), HB_SECONDS(), hb_cmonth(), HB_CMONTH(),
hb_cdow(), HB_CDOW(), HB_DAY(), HB_MONTH(), HB_YEAR(),
hb_dow(), HB_DOW()
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb_dateEncStr()
hb_dateDecStr()
hb_dateStrPut()
hb_dateStrGet()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Jose Lalin <dezac@corevia.com>
* hb_secondsToday()
* HB_SECONDS()
* hb_cmonth()
* HB_CMONTH()
* hb_cdow()
* HB_CDOW()
* HB_DAY()
* HB_MONTH()
* HB_YEAR()
* hb_dow()
* HB_DOW()
*
* Copyright 1999 David G. Holm <dholm@jsd-llc.com>
* HB_CTOD()
* HB_DATE()
* hb_dtoc()
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb_dateEncStr()
* hb_dateDecStr()
* hb_dateStrPut()
* hb_dateStrGet()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "errorapi.h"

View File

@@ -3,35 +3,35 @@
*/
/*
Harbour Project source code
The DESCEND() function
Copyright 1999 Jose Lalin <dezac@corevia.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
* Harbour Project source code:
* DESCEND() function
*
* Copyright 1999 Jose Lalin <dezac@corevia.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/* $DOC$
* $FUNCNAME$

View File

@@ -2,6 +2,37 @@
* $Id$
*/
/*
* Harbour Project source code:
* DIRECTORY() function
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/*
* DIR.C: Returns a Harbour array of specified directory contents filtered
* by the optional file and attribute mask.

View File

@@ -3,35 +3,34 @@
*/
/*
Harbour Project source code
This file is a part of Harbour Runtime Library and it contains code
that defined DO function ussed in DO <proc> WITH statement.
Copyright (C) 1999 Ryszard Glab
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
* Harbour Project source code:
* DO(), EVAL() functions and DO command
*
* Copyright 1999 Ryszard Glab <rglab@imid.med.pl>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "extend.h"

View File

@@ -3,9 +3,45 @@
*/
/*
* Partial Copyright (C) 1999 Eddie Runia (eddie@runia.com)
* Partial copyright regarding the following function :
* __RUN()
* Harbour Project source code:
* Environment functions (OS(), VERSION(), __RUN(), GETENV(), etc.)
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Eddie Runia <eddie@runia.com>
* HB___RUN()
*
* See doc/license.txt for licensing terms.
*
*/
/* NOTE: The following #ifdef block for __IBMCPP__ must

View File

@@ -3,55 +3,57 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Error API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
The Error API
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
HB_DOSERROR()
hb_errLaunch()
hb_errLaunchSubst()
hb_errGetFlags()
hb_errPutFlags()
hb_errRT_New()
hb_errRT_New_Subst()
HB___ERRRT_BASE()
hb_errRT_BASE()
hb_errRT_BASE_Ext1()
hb_errRT_BASE_Subst()
hb_errInternal()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* HB_DOSERROR()
* hb_errLaunch()
* hb_errLaunchSubst()
* hb_errGetFlags()
* hb_errPutFlags()
* hb_errRT_New()
* hb_errRT_New_Subst()
* HB___ERRRT_BASE()
* hb_errRT_BASE()
* hb_errRT_BASE_Ext1()
* hb_errRT_BASE_Subst()
* hb_errInternal()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "ctoharb.h"

View File

@@ -35,11 +35,9 @@
// Standard Harbour ErrorSys system
#include "common.ch"
#include "error.ch"
#define ISCHAR( var ) ( ValType(var) == "C" )
#define ISNUM( var ) ( ValType(var) == "N" )
//----------------------------------------------------------------------------//
procedure ErrorSys

View File

@@ -3,47 +3,49 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Extend API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
The Extend API
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb_retnlen()
hb_retnilen()
hb_retnllen()
hb_retndlen()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb_retnlen()
* hb_retnilen()
* hb_retnllen()
* hb_retndlen()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "itemapi.h"

View File

@@ -2,29 +2,62 @@
* $Id$
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
/*
* Harbour Project source code:
* The FileSys API
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb_fsSetError()
hb_fsSetDevMode()
hb_fsReadLarge()
hb_fsWriteLarge()
HB_CURDIR()
HB_DIRCHANGE()
HB_MAKEDIR()
HB_DIRREMOVE()
HB_DISKCHANGE()
HB_DISKNAME()
HB_DISKSPACE() (parts by Luiz Rafael Culik <Culik@sl.conex.net>)
The following functions are Copyright 1999 Jose Lalin <dezac@corevia.com>:
hb_fsChDrv()
hb_fsCurDrv()
hb_fsIsDrv()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb_fsSetError()
* hb_fsSetDevMode()
* hb_fsReadLarge()
* hb_fsWriteLarge()
* HB_CURDIR()
* HB_DIRCHANGE()
* HB_MAKEDIR()
* HB_DIRREMOVE()
* HB_DISKCHANGE()
* HB_DISKNAME()
* HB_DISKSPACE() (parts by Luiz Rafael Culik <Culik@sl.conex.net>)
*
* Copyright 1999 Jose Lalin <dezac@corevia.com>
* hb_fsChDrv()
* hb_fsCurDrv()
* hb_fsIsDrv()
*
* See doc/license.txt for licensing terms.
*
*/
/* NOTE: In DOS/DJGPP under WinNT4 hb_fsSeek( fhnd, offset < 0, FS_SET) will
set the file pointer to the passed negative value, and the subsequent

View File

@@ -3,35 +3,35 @@
*/
/*
Harbour Project source code
The Fixed Memory API
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
* Harbour Project source code:
* The Fixed Memory API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/* NOTE: If you turn this on, the memory subsystem will collect information
about several statistical data about memory management, it will show

View File

@@ -60,9 +60,9 @@ typedef WORD far * LPWORD;
static BOOL hb_gt_SetScreenBuffer( HANDLE HNew, HANDLE HOld );
static HANDLE HOsave;
static HANDLE HSsave;
/* static HANDLE HSsave; */
static HANDLE HDOutput = INVALID_HANDLE_VALUE;
static HANDLE HDStealth = INVALID_HANDLE_VALUE;
/* static HANDLE HDStealth = INVALID_HANDLE_VALUE; */
static HANDLE HInput = INVALID_HANDLE_VALUE;
static HANDLE HOutput = INVALID_HANDLE_VALUE;
static HANDLE HStealth = INVALID_HANDLE_VALUE; /* DispBegin buffer */

View File

@@ -2,6 +2,37 @@
* $Id$
*/
/*
* Harbour Project source code:
* The Terminal API
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/*
* GTAPI.C: Generic Terminal for Harbour
*

View File

@@ -2,6 +2,37 @@
* $Id$
*/
/*
* Harbour Project source code:
* Terminal low-level module includer for GNU compilers
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "hbsetup.h"
#if defined(HARBOUR_USE_GTAPI)

View File

@@ -3,34 +3,34 @@
*/
/*
Harbour Project source code
Copyright(C) 1999 by Jose Lalin.
http://www.Harbour-Project.org/
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
You can contact me at: dezac@corevia.com
* Harbour Project source code:
* HARDCR() function
*
* Copyright 1999 Jose Lalin <dezac@corevia.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/* $DOC$

View File

@@ -3,57 +3,64 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Keyboard API
*
* Copyright 1999 David G. Holm <dholm@jsd-llc.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
This module contains the Harbour functions for INKEY management.
/*
* ChangeLog:
*
* V 1.36 David G. Holm Added __MINGW32__ support
* V 1.35 David G. Holm Changed the __CYGWIN__ build to use
* the Unix keyboard input method and
* modified it to not block the VM.
* V 1.21 David G. Holm Added OS/2 DosSleep()
* V 1.15 David G. Holm Tested Borland 3.1 hb_releaseCPU()
* V 1.5 Paul Tucker ReleaseCPU comments
* V 1.4 Victor Szel
* V 1.3 Victor Szel #include <x> changed to #include "x".
* V 1.2 Gonzalo Diethelm ?
* V 1.1 David G. Holm Committed to CVS.
* V 1.0 David G. Holm Initial version.
*
*/
Copyright 1999 David G. Holm <dholm@jsd-llc.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
V 1.36 David G. Holm Added __MINGW32__ support
V 1.35 David G. Holm Changed the __CYGWIN__ build to use
the Unix keyboard input method and
modified it to not block the VM.
V 1.21 David G. Holm Added OS/2 DosSleep()
V 1.15 David G. Holm Tested Borland 3.1 hb_releaseCPU()
V 1.5 Paul Tucker ReleaseCPU comments
V 1.4 Victor Szel
V 1.3 Victor Szel #include <x> changed to #include "x".
V 1.2 Gonzalo Diethelm ?
V 1.1 David G. Holm Committed to CVS.
V 1.0 David G. Holm Initial version.
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
HB___KEYPUT()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* HB___KEYPUT()
*
* See doc/license.txt for licensing terms.
*
*/
/* Note: The following #ifdef block for __IBMCPP__ must be ahead
of any and all #include statements and requires that

View File

@@ -3,58 +3,63 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* The Item API
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
The Item API
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb_itemPCount()
hb_itemParamPtr()
hb_itemReturnPtr()
hb_itemDo() ( based on HB_DO() by Ryszard Glab )
hb_itemDoC() ( based on HB_DO() by Ryszard Glab )
hb_itemPutDL()
hb_itemPutNI()
hb_itemGetNI()
hb_itemGetCPtr()
hb_itemGetCLen()
hb_itemGetNLen()
hb_itemPutNLen()
hb_itemPutNDLen()
hb_itemPutNILen()
hb_itemPutNLLen()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb_itemPCount()
* hb_itemParamPtr()
* hb_itemReturnPtr()
* hb_itemDo() ( based on HB_DO() by Ryszard Glab )
* hb_itemDoC() ( based on HB_DO() by Ryszard Glab )
* hb_itemPutDL()
* hb_itemPutNI()
* hb_itemGetNI()
* hb_itemGetCPtr()
* hb_itemGetCLen()
* hb_itemGetNLen()
* hb_itemPutNLen()
* hb_itemPutNDLen()
* hb_itemPutNILen()
* hb_itemPutNLLen()
*
* Copyright 1999 Eddie Runia <eddie@runia.com>
* hb_itemStrCmp()
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "itemapi.h"
@@ -867,12 +872,6 @@ PHB_ITEM hb_itemUnRef( PHB_ITEM pItem )
/* Internal API, not standard Clipper */
/*
* StrCmp. String comparision functions
*
* hb_itemStrCmp : Copyright (C) 1999 Eddie Runia (eddie@runia.com)
*/
/* Check whether two strings are equal (0), smaller (-1), or greater (1) */
int hb_itemStrCmp( PHB_ITEM pFirst, PHB_ITEM pSecond, BOOL bForceExact )
{

View File

@@ -3,35 +3,35 @@
*/
/*
Harbour Project source code
Language API
Copyright (C) 1999 Victor Szel <info@szelvesz.hu>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
* Harbour Project source code:
* The Language API
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "extend.h"
#include "langapi.h"

View File

@@ -2,14 +2,47 @@
* $Id$
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
/*
* Harbour Project source code:
* Math functions
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
The following function is Copyright 1999 David G. Holm:
HB_ROUND().
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 David G. Holm <dholm@jsd-llc.com>
* HB_ROUND()
*
* See doc/license.txt for licensing terms.
*
*/
#include <math.h>
#include "extend.h"

View File

@@ -33,6 +33,7 @@
*
*/
#include "common.ch"
#include "memvars.ch"
/* $DOC$
@@ -79,7 +80,7 @@
FUNCTION MEMVARBLOCK( cMemvar )
IF ( ValType( cMemvar ) == "C" ) .AND. __mvSCOPE( cMemvar ) > MV_ERROR
IF ISCHAR( cMemvar ) .AND. __mvSCOPE( cMemvar ) > MV_ERROR
RETURN {| x | iif( PCount() == 0, __mvGET( cMemvar ), __mvPUT( cMemvar, x ) ) }
ENDIF

View File

@@ -3,50 +3,50 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* Memvar (PRIVATE/PUBLIC) runtime support
*
* Copyright 1999 Ryszard Glab <rglab@imid.med.pl>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
This file is a part of Harbour Runtime Library and it contains code
that handles memory variables.
Copyright (C) 1999 Ryszard Glab
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
HB___MVSAVE()
HB___MVRESTORE() (Thanks to Dave Pearson and Jo French for the original
Clipper function (FReadMem()) to read .MEM files)
HB___MSAVE()
HB___MRESTORE()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* HB___MVSAVE()
* HB___MVRESTORE() (Thanks to Dave Pearson and Jo French for the original
* Clipper function (FReadMem()) to read .MEM files)
* HB___MSAVE()
* HB___MRESTORE()
*
* See doc/license.txt for licensing terms.
*
*/
#include <ctype.h> /* for toupper() function */

View File

@@ -24,10 +24,11 @@
/* NOTE: Recursive use is supported */
#include "setcurs.ch"
#include "inkey.ch"
#include "color.ch"
#include "common.ch"
#include "inkey.ch"
#include "memvars.ch"
#include "setcurs.ch"
static aLevel := {}
static nPointer := 1
@@ -94,7 +95,7 @@ function __MenuTo( bBlock, cVariable )
// put choice in a valid range
if !( ValType( n ) == "N" ) .OR. n < 1
if !ISNUM( n ) .OR. n < 1
n := 1
endif
@@ -126,11 +127,11 @@ function __MenuTo( bBlock, cVariable )
xMsg := aLevel[ nPointer - 1, n, 4 ]
// Code Block messages ( yes, they are documented! )
if valtype( xMsg ) == 'B'
if ISBLOCK( xMsg )
xMsg := eval( xMsg )
endif
if valtype( xMsg ) <> 'C'
if !ISCHAR( xMsg )
xMsg := ""
endif

View File

@@ -3,38 +3,46 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* Mouse API
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
Harbour Mouse subsystem main file
Copyright 1999 Victor Szel <info@szelvesz.hu>
www - http://www.harbour-project.org
API interface proposal mainly by Jose Lalin <dezac@corevia.com>.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Jose Lalin <dezac@corevia.com>
* API interface proposal
*
* See doc/license.txt for licensing terms.
*
*/
#include "extend.h"
#include "mouseapi.h"

View File

@@ -2,6 +2,37 @@
* $Id$
*/
/*
* Harbour Project source code:
* Mouse low-level module includer for GNU compilers
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "hbsetup.h"
#if defined(HARBOUR_USE_MSAPI)

View File

@@ -2,6 +2,37 @@
* $Id$
*/
/*
* Harbour Project source code:
* Localization module includer for GNU compilers
*
* Copyright 1999 {list of individual authors and e-mail addresses}
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "hbsetup.h"
#if defined(HARBOUR_LANGUAGE_EU)

View File

@@ -3,35 +3,35 @@
*/
/*
Harbour Project source code
Copyright(C) 1999 by Jose Lalin.
http://www.Harbour-Project.org/
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
You can contact me at: dezac@corevia.com
*/
* Harbour Project source code:
* MEMOTRAN() function
*
* Copyright 1999 Jose Lalin <dezac@corevia.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
/* $DOC$
* $FUNCNAME$

View File

@@ -44,8 +44,9 @@
*
*/
#include "hboo.ch"
#include "common.ch"
#include "error.ch"
#include "hboo.ch"
//
// <lRet> := __objHasData( <oObject>, <cSymbol> )
@@ -54,8 +55,8 @@
//
function __objHasData( oObject, cSymbol )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJHASDATA")
endif
@@ -70,8 +71,8 @@ return __objHasMsg( oObject, cSymbol ) .and. ;
//
function __objHasMethod( oObject, cSymbol )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJHASMETHOD")
endif
@@ -94,11 +95,11 @@ function __objGetMsgList( oObject, lDataMethod )
local nLen
local lFoundDM // Found DATA ?
if !( ValType( oObject ) == "O" )
if !ISOBJECT( oObject )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJGETMSGLIST")
endif
IF !( ValType( lDataMethod ) == "L" )
IF !ISLOG( lDataMethod )
lDataMethod := .T.
ENDIF
@@ -133,7 +134,7 @@ return aData
//
function __objGetMethodList( oObject )
if !( ValType( oObject ) == "O" )
if !ISOBJECT( oObject )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJGETMETHODLIST")
endif
@@ -159,11 +160,11 @@ function __objGetValueList( oObject, aExcept )
local cSymbol
local n
if !( ValType( oObject ) == "O" )
if !ISOBJECT( oObject )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJGETVALUELIST")
endif
IF !( ValType( aExcept ) == "A" )
IF !ISARRAY( aExcept )
aExcept := {}
ENDIF
@@ -189,7 +190,7 @@ return aData
//
function __objSetValueList( oObject, aData )
if !( ValType( oObject ) == "O" )
if !ISOBJECT( oObject )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJSETVALUELIST")
endif
@@ -206,9 +207,9 @@ return oObject
//
function __objAddMethod( oObject, cSymbol, nFuncPtr )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" ) .or. ;
!( ValType( nFuncPtr ) == "N" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol ) .or. ;
!ISNUM( nFuncPtr )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJADDMETHOD")
endif
@@ -228,8 +229,8 @@ return oObject
//
function __objAddInline( oObject, cSymbol, bInline )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJADDINLINE")
endif
@@ -251,8 +252,8 @@ function __objAddData( oObject, cSymbol )
local nSeq
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJADDDATA")
endif
@@ -276,9 +277,9 @@ return oObject
//
function __objModMethod( oObject, cSymbol, nFuncPtr )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" ) .or. ;
!( ValType( nFuncPtr ) == "N" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol ) .or. ;
!ISNUM( nFuncPtr )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJMODMETHOD")
endif
@@ -298,9 +299,9 @@ return oObject
//
function __objModInline( oObject, cSymbol, bInline )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" ) .or. ;
!( ValType( bInline ) == "B" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol ) .or. ;
!ISBLOCK( bInline )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJMODINLINE")
endif
@@ -320,8 +321,8 @@ return oObject
//
function __objDelMethod( oObject, cSymbol )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJDELMETHOD")
endif
@@ -343,8 +344,8 @@ return __objDelMethod( oObject, cSymbol ) // Same story
//
function __objDelData( oObject, cSymbol )
if !( ValType( oObject ) == "O" ) .or. ;
!( ValType( cSymbol ) == "C" )
if !ISOBJECT( oObject ) .or. ;
!ISCHAR( cSymbol )
__errRT_BASE(EG_ARG, 3101, NIL, "__OBJDELDATA")
endif

View File

@@ -33,12 +33,14 @@
*
*/
#include "common.ch"
FUNCTION ReadVar( cVarName )
STATIC s_cVarName := ""
LOCAL cOldVarName := s_cVarName
IF ValType( cVarName ) == "C"
IF ISCHAR( cVarName )
s_cVarName := cVarName
ENDIF

View File

@@ -3,168 +3,173 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* Set functions
*
* Copyright 1999 David G. Holm <dholm@jsd-llc.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
This module contains the Harbour functions for SET management.
Copyright 1999 David G. Holm <dholm@jsd-llc.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
V 1.70 David G. Holm Corrected _SET_COLOR case to only use
'.asString' if 'IS_STRING', otherwise
use "" instead of only if 'IS_NIL'.
V 1.69 Paul Tucker Added a cast in open_handle to fsRead.
V 1.68 David G. Holm Added user file error code safeguards.
When opening a "text" file is append
mode in open_handle(), remove the EOF
character from the end of the file.
V 1.67 David G. Holm Corrected file open/create logic
in open_handle() function.
V 1.64 Victor Szel Converted to use the FS API.
hb_err*() handles E_BREAK.
extrahan closing mode on exit fixed.
V 1.62 Paul Tucker Converted HB_SET_DEBUG back to Logical.
Clipper 5.3 docs are incorrect on this.
V 1.51 Victor Szel #include <x> changed to #include "x".
V 1.49 Paul Tucker Changed parameter passing checks
in call to hb_setColor() to account
for no or NIL parameters.
V 1.48 David G. Holm Simplified SET_COLOR handling.
Made changes to deal with the
hb_set.HB_SET_COLOR string having
a fixed 64 byte size.
V 1.46 Paul Tucker Modifed SetColor handling.
V 1.43 David G. Holm Removed the obsolete hb_set_fixed,
which I should have done when I took
HB_SETFIXED() out in V 1.27.
V 1.42 Ryszard Glab Added guard around #pragma startup.
V 1.41 David G. Holm Added my email address.
V 1.40 David G. Holm Added header template and filled in
complete version history by cross-
referencing ChangeLog and the output
from "cvs log source/rtl/set.c".
V 1.39 David G. Holm Made various changes after running
through Gimpel Lint.
Added call hb_errRT_TERM()
wrapper function upon failure to
create an alternate file and/or a
printer file (and/or an extra file,
even though I still don't know what
it is used for).
Added support for HB_SET_EXTRAFILE.
Added support for strings > 64 KB.
V 1.38 Ryszard Glab Changed to use the new definition of
HB_INIT_SYMBOLS_* and
HB_CALL_ON_STARTUP_* macros.
V 1.37 David G. Holm Added #pragma startup.
V 1.36 Ryszard Glab Changed code that registers local
symbol table (it uses HB_INIT_SYMBOLS_*
macros now).
V 1.35 Ryszard Glab Changed to use the new HB_ITEM.
Changed to automatically register
symbol table.
V 1.34 Victor Szel Added four Clipper-compatible error
reports.
V 1.33 Victor Szel InitializeSets() changed to
hb_setInitialize() and ReleaseSets()
changed to hb_setRelease().
V 1.32 David G. Holm Minor change in last if block in
HB___SETCENTURY() to avoid a
signed/unsigned comparison complaint
by some compilers.
V 1.31 Ryszard Glab Files created by SET PRINTER TO or SET
ALTERNATE TO now have permissions set
to write/read by user on UNIX like OS.
V 1.30 Ryszard Glab Changes for Watcom C/C++ and for GCC on
Linux. Removed PATH_SEPARATOR and
replaced it with OS_PATH_DELIMITER
defined in hbsetup.h.
V 1.29 David G. Holm Added documentation. Converted
HB_SET_DEBUG to numeric. Added limits
of 16 and 4096 to HB_SET_TYPEAHEAD.
V 1.28 Eddie Runia Changed SETCENTURY in Symbol table to
__SETCENTURY.
V 1.27 David G. Holm Renamed HB_SETCENTURY to
HB___SETCENTURY and eliminated
HB_SETFIXED following integration of
Harbour preprocessor.
V 1.26 David G. Holm All Extend API functions converted from
_name() to hb_name().
V 1.25 David G. Holm Convert all _errFunctions to
hb_errFunctions.
V 1.24 David G. Holm Logical SET values can now use "ON"
for .T. and "OFF" for .F.
V 1.23 David G. Holm Now uses hb_stricmp() instead of
stricmp(). Added default #define for
O_BINARY.
V 1.22 Eddie Runia Added InitSymbols().
V 1.21 Gonzalo A. Diethelm Changed all HARBOUR NAME( void ) to
HARBOUR HB_NAME( void ).
V 1.20 David G. Holm Removed "+ 1" in setting y_stop to
default stop point, because it caused
_xgrab to allocate 1 byte too few when
year was at end.
V 1.19 David G. Holm Moved "#include <sys/stat.h>" outside
"#if defined(__GCC__) ||
defined(__DJGPP__)" block, so that it
is included for all compilers.
V 1.18 Gonzalo A. Diethelm In open_handle(), a misplaced
parenthesis when calling open() caused
S_IWRITE to never be seen by open().
V 1.17 Eddie Runia temporary patches with regard to
sys/stat.h removed.
V 1.16 Gonzalo A. Diethelm Solved portability problems under gcc.
Got rid of a few warnings and unused
variables.
V 1.15 Patrick Mast Removed #include <sys\stat.h>
V 1.14 David G. Holm Added #include <unistd.h> for DJGPP.
V 1.13 David G. Holm Changed PITEM to PHB_ITEM.
V 1.12 Les. Griffith Added #include <errno.h> for DJGPP.
V 1.11 Eddie Runia Small correction in ReleaseSets().
V 1.10 David G. Holm Added default of "PRN" for
HB_SET_PRINTFILE. If SET (_SET_DEVICE,
"PRINTER") called and printer file not
open, then open it.
V 1.9 David G. Holm Added file open/close support to
HB_SET_ALTFILE and HB_SET_PRINTFILE.
V 1.8 David G. Holm Added hb_set_fixed and HB_SETFIXED().
V 1.7 David G. Holm Fixed memory leak in HB_SETCENTURY.
V 1.6 Eddie Runia Calling IS_STRING and IS_LOGICAL
without checking for empty pItem fixed.
V 1.5 Ryszard Glab Added (char *) type casts for Watcom C.
V 1.4 Gonzalo A. Diethelm Cleaned up a few warnings.
V 1.3 David G. Holm Changed __SETCENTURY to HB_SETCENTURY.
Changed all _SET_name to HB_SET_name
Changed HB_SETCENTURY to modify the
HB_SET_DATEFORMAT. Changed the name of
the set initialization function to
InitializeSets().
V 1.2 Gonzalo A. Diethelm Added comment with CVS Id keyword.
V 1.1 Antonio Linares Committed to CVS.
V 1.0 David G. Holm Initial version.
*/
/*
* ChangeLog:
*
* V 1.70 David G. Holm Corrected _SET_COLOR case to only use
* '.asString' if 'IS_STRING', otherwise
* use "" instead of only if 'IS_NIL'.
* V 1.69 Paul Tucker Added a cast in open_handle to fsRead.
* V 1.68 David G. Holm Added user file error code safeguards.
* When opening a "text" file is append
* mode in open_handle(), remove the EOF
* character from the end of the file.
* V 1.67 David G. Holm Corrected file open/create logic
* in open_handle() function.
* V 1.64 Victor Szel Converted to use the FS API.
* hb_err*() handles E_BREAK.
* extrahan closing mode on exit fixed.
* V 1.62 Paul Tucker Converted HB_SET_DEBUG back to Logical.
* Clipper 5.3 docs are incorrect on this.
* V 1.51 Victor Szel #include <x> changed to #include "x".
* V 1.49 Paul Tucker Changed parameter passing checks
* in call to hb_setColor() to account
* for no or NIL parameters.
* V 1.48 David G. Holm Simplified SET_COLOR handling.
* Made changes to deal with the
* hb_set.HB_SET_COLOR string having
* a fixed 64 byte size.
* V 1.46 Paul Tucker Modifed SetColor handling.
* V 1.43 David G. Holm Removed the obsolete hb_set_fixed,
* which I should have done when I took
* HB_SETFIXED() out in V 1.27.
* V 1.42 Ryszard Glab Added guard around #pragma startup.
* V 1.41 David G. Holm Added my email address.
* V 1.40 David G. Holm Added header template and filled in
* complete version history by cross-
* referencing ChangeLog and the output
* from "cvs log source/rtl/set.c".
* V 1.39 David G. Holm Made various changes after running
* through Gimpel Lint.
* Added call hb_errRT_TERM()
* wrapper function upon failure to
* create an alternate file and/or a
* printer file (and/or an extra file,
* even though I still don't know what
* it is used for).
* Added support for HB_SET_EXTRAFILE.
* Added support for strings > 64 KB.
* V 1.38 Ryszard Glab Changed to use the new definition of
* HB_INIT_SYMBOLS_* and
* HB_CALL_ON_STARTUP_* macros.
* V 1.37 David G. Holm Added #pragma startup.
* V 1.36 Ryszard Glab Changed code that registers local
* symbol table (it uses HB_INIT_SYMBOLS_*
* macros now).
* V 1.35 Ryszard Glab Changed to use the new HB_ITEM.
* Changed to automatically register
* symbol table.
* V 1.34 Victor Szel Added four Clipper-compatible error
* reports.
* V 1.33 Victor Szel InitializeSets() changed to
* hb_setInitialize() and ReleaseSets()
* changed to hb_setRelease().
* V 1.32 David G. Holm Minor change in last if block in
* HB___SETCENTURY() to avoid a
* signed/unsigned comparison complaint
* by some compilers.
* V 1.31 Ryszard Glab Files created by SET PRINTER TO or SET
* ALTERNATE TO now have permissions set
* to write/read by user on UNIX like OS.
* V 1.30 Ryszard Glab Changes for Watcom C/C++ and for GCC on
* Linux. Removed PATH_SEPARATOR and
* replaced it with OS_PATH_DELIMITER
* defined in hbsetup.h.
* V 1.29 David G. Holm Added documentation. Converted
* HB_SET_DEBUG to numeric. Added limits
* of 16 and 4096 to HB_SET_TYPEAHEAD.
* V 1.28 Eddie Runia Changed SETCENTURY in Symbol table to
* __SETCENTURY.
* V 1.27 David G. Holm Renamed HB_SETCENTURY to
* HB___SETCENTURY and eliminated
* HB_SETFIXED following integration of
* Harbour preprocessor.
* V 1.26 David G. Holm All Extend API functions converted from
* _name() to hb_name().
* V 1.25 David G. Holm Convert all _errFunctions to
* hb_errFunctions.
* V 1.24 David G. Holm Logical SET values can now use "ON"
* for .T. and "OFF" for .F.
* V 1.23 David G. Holm Now uses hb_stricmp() instead of
* stricmp(). Added default #define for
* O_BINARY.
* V 1.22 Eddie Runia Added InitSymbols().
* V 1.21 Gonzalo A. Diethelm Changed all HARBOUR NAME( void ) to
* HARBOUR HB_NAME( void ).
* V 1.20 David G. Holm Removed "+ 1" in setting y_stop to
* default stop point, because it caused
* _xgrab to allocate 1 byte too few when
* year was at end.
* V 1.19 David G. Holm Moved "#include <sys/stat.h>" outside
* "#if defined(__GCC__) ||
* defined(__DJGPP__)" block, so that it
* is included for all compilers.
* V 1.18 Gonzalo A. Diethelm In open_handle(), a misplaced
* parenthesis when calling open() caused
* S_IWRITE to never be seen by open().
* V 1.17 Eddie Runia temporary patches with regard to
* sys/stat.h removed.
* V 1.16 Gonzalo A. Diethelm Solved portability problems under gcc.
* Got rid of a few warnings and unused
* variables.
* V 1.15 Patrick Mast Removed #include <sys\stat.h>
* V 1.14 David G. Holm Added #include <unistd.h> for DJGPP.
* V 1.13 David G. Holm Changed PITEM to PHB_ITEM.
* V 1.12 Les. Griffith Added #include <errno.h> for DJGPP.
* V 1.11 Eddie Runia Small correction in ReleaseSets().
* V 1.10 David G. Holm Added default of "PRN" for
* HB_SET_PRINTFILE. If SET (_SET_DEVICE,
* "PRINTER") called and printer file not
* open, then open it.
* V 1.9 David G. Holm Added file open/close support to
* HB_SET_ALTFILE and HB_SET_PRINTFILE.
* V 1.8 David G. Holm Added hb_set_fixed and HB_SETFIXED().
* V 1.7 David G. Holm Fixed memory leak in HB_SETCENTURY.
* V 1.6 Eddie Runia Calling IS_STRING and IS_LOGICAL
* without checking for empty pItem fixed.
* V 1.5 Ryszard Glab Added (char *) type casts for Watcom C.
* V 1.4 Gonzalo A. Diethelm Cleaned up a few warnings.
* V 1.3 David G. Holm Changed __SETCENTURY to HB_SETCENTURY.
* Changed all _SET_name to HB_SET_name
* Changed HB_SETCENTURY to modify the
* HB_SET_DATEFORMAT. Changed the name of
* the set initialization function to
* InitializeSets().
* V 1.2 Gonzalo A. Diethelm Added comment with CVS Id keyword.
* V 1.1 Antonio Linares Committed to CVS.
* V 1.0 David G. Holm Initial version.
*
*/
#include <ctype.h>
#include "extend.h"

View File

@@ -3,26 +3,35 @@
*/
/*
Copyright(C) 1999 by Paul Tucker
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public
License along with this program; if not, write to:
The Free Software Foundation, Inc.,
675 Mass Ave, Cambridge, MA 02139, USA.
You can contact me at: ptucker@sympatico.ca
*/
* Harbour Project source code:
* Color functions
*
* Copyright 1999 Paul Tucker <ptucker@sympatico.ca>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
#include "extend.h"
#include "set.h"

View File

@@ -43,6 +43,8 @@
*
*/
#include "common.ch"
// macro substitutions to access sub-array elements of aSetKeys[]
#define KEY 1
#define BLOCK 2
@@ -99,12 +101,12 @@ static aSetKeys := {} // holds array of hot-key id, code-block, activation
Function SetKey( anKey, bBlock, bCondition )
local nFound, bReturn, aKey
if valType( anKey ) = "A"
if ISARRAY( anKey )
aEval( anKey, {|x| setKey( x, bBlock, bCondition ) } )
elseif valType( anKey ) = "N" .and. anKey <> 0
if ( nFound := aScan( aSetKeys, {|x| x[ KEY ] = anKey } ) ) = 0
if valType( bBlock ) = "B"
elseif ISNUM( anKey ) .and. anKey <> 0
if ( nFound := aScan( aSetKeys, {|x| x[ KEY ] == anKey } ) ) == 0
if ISBLOCK( bBlock )
aAdd( aSetKeys, { anKey, bBlock, bCondition } )
endif
@@ -112,16 +114,16 @@ Function SetKey( anKey, bBlock, bCondition )
else
aKey := aSetKeys[ nFound ]
if aKey[ CONDITION ] = NIL .or. eval( aKey[ CONDITION ], anKey )
if aKey[ CONDITION ] == NIL .or. eval( aKey[ CONDITION ], anKey )
bReturn := aKey[ BLOCK ]
endif
if valType( bBlock ) = "B"
if ISBLOCK( bBlock )
aKey[ BLOCK ] := bBlock
aKey[ CONDITION ] := bCondition
elseif pcount() > 1 .and. bBlock = NIL
elseif pcount() > 1 .and. bBlock == NIL
aSize( aDel( aSetKeys, nFound ), len( aSetKeys ) - 1 )
endif
@@ -169,8 +171,8 @@ return bReturn
Function HB_SetKeyGet( nKey, bCondition )
local nFound
if valType( nKey ) = "N" .and. nKey <> 0
if ( nFound := aScan( aSetKeys, {|x| x[ KEY ] = nKey } ) ) = 0
if ISNUM( nKey ) .and. nKey <> 0
if ( nFound := aScan( aSetKeys, {|x| x[ KEY ] == nKey } ) ) == 0
bCondition := NIL
else
@@ -222,8 +224,8 @@ return NIL //bReturn
Function HB_SetKeySave( OldKeys )
local aReturn := aClone( aSetKeys )
if pcount() != 0 .or. valtype( OldKeys ) = "A"
if OldKeys = NIL
if pcount() != 0 .or. ISARRAY( OldKeys )
if OldKeys == NIL
aSetKeys := {}
else
@@ -285,20 +287,20 @@ return aReturn
Function HB_SetKeyCheck( nKey, p1, p2, p3 )
local nFound, aKey, bBlock
if ( nFound := aScan( aSetKeys, {|x| x[ KEY ] = nKey } ) ) > 0
if ( nFound := aScan( aSetKeys, {|x| x[ KEY ] == nKey } ) ) > 0
aKey := aSetKeys[ nFound ]
bBLock := aKey[ BLOCK ]
if aKey[ CONDITION ] = NIL .or. eval( aKey[ CONDITION ], nKey )
if aKey[ CONDITION ] == NIL .or. eval( aKey[ CONDITION ], nKey )
// is this overkill? if a code-block checks its own pcount(),
// passing nil parameters would skew the count!
do case
case pcount() = 1 ; eval( bBlock, nKey )
case pcount() = 2 ; eval( bBlock, p1, nKey )
case pcount() = 3 ; eval( bBlock, p1, p2, nKey )
otherwise ; eval( bBlock, p1, p2, p3, nKey )
case pcount() == 1 ; eval( bBlock, nKey )
case pcount() == 2 ; eval( bBlock, p1, nKey )
case pcount() == 3 ; eval( bBlock, p1, p2, nKey )
otherwise ; eval( bBlock, p1, p2, p3, nKey )
end case
return .t.

View File

@@ -3,49 +3,51 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* String functions
*
* Copyright 1999 Antonio Linares <alinares@fivetech.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
String management
Copyright 1999 Antonio Linares <alinares@fivetech.com>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
*/
/* Harbour Project source code
http://www.Harbour-Project.org/
The following functions are Copyright 1999 Victor Szel <info@szelvesz.hu>:
hb_strEmpty()
hb_strMatchDOS()
hb_STRZERO()
The following function is Copyright 1999 David G. Holm <dholm@jsd-llc.com>:
hb_stricmp()
See doc/hdr_tpl.txt, Version 1.2 or later, for licensing terms.
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 David G. Holm <dholm@jsd-llc.com>
* hb_stricmp()
*
* Copyright 1999 Victor Szel <info@szelvesz.hu>
* hb_strEmpty()
* hb_strMatchDOS()
* hb_STRZERO()
*
* See doc/license.txt for licensing terms.
*
*/
#include <ctype.h>
#include <math.h>

View File

@@ -34,6 +34,7 @@
*/
#include "classes.ch"
#include "common.ch"
CLASS TBColumn
@@ -70,7 +71,7 @@ function TBColumnNew( cHeading, bBlock )
oCol:Heading := cHeading
if ValType( bBlock ) == "B"
if ISBLOCK( bBlock )
oCol:block := bBlock

View File

@@ -47,6 +47,7 @@
// Harbour Class TClass to build classes
#include "common.ch"
#include "hboo.ch"
//----------------------------------------------------------------------------//
@@ -99,7 +100,7 @@ static function New( cClassName, cSuper )
::aClsDatas = {}
::aInlines = {}
::aVirtuals = {}
if ValType( cSuper ) == "C"
if ISCHAR( cSuper )
::cSuper = cSuper
endif

View File

@@ -34,6 +34,7 @@
*/
#include "classes.ch"
#include "common.ch"
#include "getexit.ch"
#include "inkey.ch"
#include "set.ch"
@@ -56,7 +57,7 @@ function ReadModal( GetList, nPos )
oGetList:cReadProcName = ProcName( 1 )
oGetList:nReadProcLine = ProcLine( 1 )
if ! ( ValType( nPos ) == "N" .and. nPos > 0 )
if ! ( ISNUM( nPos ) .and. nPos > 0 )
oGetList:nPos = oGetList:Settle( 0 )
endif
@@ -64,7 +65,7 @@ function ReadModal( GetList, nPos )
oGetList:oGet = oGetList:aGetList[ oGetList:nPos ]
oGetList:PostActiveGet()
if ValType( oGetList:oGet:Reader ) == "B"
if ISBLOCK( oGetList:oGet:Reader )
Eval( oGet:Reader, oGetList:oGet )
else
oGetList:Reader()
@@ -449,7 +450,7 @@ return cName
METHOD SetFormat( bFormat ) CLASS TGetList
::bFormat = If( ValType( bFormat ) == "B", bFormat, nil )
::bFormat = If( ISBLOCK( bFormat ), bFormat, nil )
return nil
@@ -489,7 +490,7 @@ METHOD ReadVar( cNewVarName ) CLASS TGetList
local cOldName := ::cVarName
if ValType( cNewVarName ) == "C"
if ISCHAR( cNewVarName )
::cVarName := cNewVarName
endif

View File

@@ -3,52 +3,59 @@
*/
/*
Harbour Project source code
* Harbour Project source code:
* TONE() function
*
* Copyright 1999 Chen Kedem <niki@actcom.co.il>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version, with one exception:
*
* The exception is that if you link the Harbour Runtime Library (HRL)
* and/or the Harbour Virtual Machine (HVM) with other files to produce
* an executable, this does not by itself cause the resulting executable
* to be covered by the GNU General Public License. Your use of that
* executable is in no way restricted on account of linking the HRL
* and/or HVM code into it.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
*/
Copyright 1999 by Chen Kedem <niki@actcom.co.il>
www - http://www.harbour-project.org
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version, with one exception:
The exception is that if you link the Harbour Runtime Library (HRL)
and/or the Harbour Virtual Machine (HVM) with other files to produce
an executable, this does not by itself cause the resulting executable
to be covered by the GNU General Public License. Your use of that
executable is in no way restricted on account of linking the HRL
and/or HVM code into it.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
their web site at http://www.gnu.org/).
V 1.10 David G. Holm Added __MINGW32__ support
V 1.8 David G. Holm Added '&& ! defined(_Windows)'
check to all __BORLANDC__ checks.
V 1.6 David G. Holm Added Win32 Beep(), thanks to
Chen Kedem.
V 1.4 David G. Holm Upper limit for frequency for OS/2
DosBeep() is 32767. The CA-Clipper
Tone() function does not have an
upper limit on the duration, so I
had to add an inner loop to deal
with very long durations. There are
actually 18.2 Clipper (PC) timer
ticks per second.
V 1.2 David G. Holm Added OS/2 GCC/EMX support.
V 1.1 David G. Holm Split machine dependent code into
hb_tone() function for internal use
by other Harbour C functions.
V 1.0 Chen Kedem Initial version (only OS/2 support).
*/
/*
* ChangeLog:
*
* V 1.10 David G. Holm Added __MINGW32__ support
* V 1.8 David G. Holm Added '&& ! defined(_Windows)'
* check to all __BORLANDC__ checks.
* V 1.6 David G. Holm Added Win32 Beep(), thanks to
* Chen Kedem.
* V 1.4 David G. Holm Upper limit for frequency for OS/2
* DosBeep() is 32767. The CA-Clipper
* Tone() function does not have an
* upper limit on the duration, so I
* had to add an inner loop to deal
* with very long durations. There are
* actually 18.2 Clipper (PC) timer
* ticks per second.
* V 1.2 David G. Holm Added OS/2 GCC/EMX support.
* V 1.1 David G. Holm Split machine dependent code into
* hb_tone() function for internal use
* by other Harbour C functions.
* V 1.0 Chen Kedem Initial version (only OS/2 support).
*
*/
#if defined(__DJGPP__)
#include <pc.h>

View File

@@ -3,10 +3,11 @@
*/
/*
* TransForm. Clipper transformation function
* Harbour Project source code:
* TRANSFORM() function
*
* Copyright (C) 1999 Eddie Runia (eddie@runia.com)
* Part of the Harbour Project www.harbour-project.org
* Copyright 1999 Eddie Runia <eddie@runia.com>
* www - http://www.harbour-project.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -30,8 +31,17 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
* their web site at http://www.gnu.org/).
*
* Partial Copyright Matthew Hamilton <mhamilton@bunge.com.au>
* partial copyright with regards to string handling
*/
/*
* The following parts are Copyright of the individual authors.
* www - http://www.harbour-project.org
*
* Copyright 1999 Matthew Hamilton <mhamilton@bunge.com.au>
* String handling
*
* See doc/license.txt for licensing terms.
*
*/
/* TODO: Getting rid of calling back HARBOUR HB_STR() function */

View File

@@ -127,7 +127,6 @@ PRG_SOURCES=\
test_all.prg \
testbrw.prg \
testcgi.prg \
testcopy.prg \
testdbf.prg \
testerro.prg \
testfor.prg \
@@ -179,7 +178,7 @@ include $(TOP)$(ROOT)config/test.cf
else #PM defined = build specified file
ifneq ($(findstring .prg,$(PM)),)
PRG_MAIN :=$(PM)
PRG_MAIN := $(PM)
else
ifneq ($(findstring .PRG,$(PM)),)
PRG_MAIN := $(PM)

View File

@@ -4,7 +4,7 @@ rem $Id$
rem
REM From .PRG to .C = Harbour
..\..\bin\harbour %1.prg /n /i..\..\include
..\..\bin\harbour %1 /n /i..\..\include
if errorlevel 1 goto end
REM From .C to .EXE = BuildExe

View File

@@ -4,7 +4,7 @@ rem $Id$
rem
REM From .PRG to .C = Harbour
..\..\bin\harbour %1.prg %2 /n /i..\..\include
..\..\bin\harbour %1 %2 /n /i..\..\include
if errorlevel 1 goto end
REM From .C to .EXE = BuildExe

View File

@@ -4,7 +4,7 @@ rem $Id$
rem
REM From .PRG to .C = Harbour
..\..\bin\harbour %1.prg /n /i..\..\include
..\..\bin\harbour %1 /n /i..\..\include
if errorlevel 1 goto end
REM From .C to .EXE = BuildExe

View File

@@ -4,7 +4,7 @@ rem $Id$
rem
REM From .PRG to .C = Harbour
..\..\bin\harbour %1.prg /n /i..\..\include
..\..\bin\harbour %1 /n /i..\..\include
if errorlevel 1 goto end
REM From .C to .EXE = Bld+Exe

View File

@@ -4,5 +4,5 @@ rem $Id$
rem
REM From .PRG to .C = Harbour
..\..\bin\harbour %1.prg /n /gHRB /i..\..\include
..\..\bin\harbour %1 /n /gHRB /i..\..\include
runner %1.hrb

View File

@@ -4,7 +4,7 @@ rem $Id$
rem
REM From .PRG to .C = Harbour
..\..\bin\harbour %1.prg /n /i..\..\include
..\..\bin\harbour %1 /n /i..\..\include
REM From .C to .EXE = BuildExe
call BLDVCEXE %1 %2

View File

@@ -386,10 +386,7 @@ STATIC FUNCTION Main_HVM()
TEST_LINE( 1 / NIL , "E BASE 1084 Argument error / F:S" )
TEST_LINE( 1 * NIL , "E BASE 1083 Argument error * F:S" )
TEST_LINE( 1 ** NIL , "E BASE 1088 Argument error ^ F:S" )
/* NOTE: Harbour PP fails to process this line, so it's temporarly commented out */
#ifndef __HARBOUR__
TEST_LINE( 1 ^ NIL , "E BASE 1088 Argument error ^ F:S" )
#endif
TEST_LINE( 1 % NIL , "E BASE 1085 Argument error % F:S" )
TEST_LINE( -Month(sdDate) , -1 )
@@ -404,10 +401,7 @@ STATIC FUNCTION Main_HVM()
TEST_LINE( -(-10) , 10 )
TEST_LINE( -("1") , "E BASE 1080 Argument error - F:S" )
/* NOTE: Harbour PP fails to process this line, so it's temporarly commented out */
#ifndef __HARBOUR__
TEST_LINE( "AA" $ 1 , "E BASE 1109 Argument error $ F:S" )
#endif
TEST_LINE( scString $ 1 , "E BASE 1109 Argument error $ F:S" )
TEST_LINE( 1 $ "AA" , "E BASE 1109 Argument error $ F:S" )

View File

@@ -1,17 +0,0 @@
//
// $Id$
//
/*
__copyfile( csource, cdestination )
initial release : 23 June 1999 Andi Jahja
thanks for hbpp :)
*/
#command copy file <(src)> to <(dest)> => __copyfile( <(src)>, <(dest)> )
function main()
copy file testcopy.prg to newcopy.prg
return nil