2012-11-08 16:02 UTC+0100 Viktor Szakats (harbour syenar.net)
* contrib/hbmysql/tmysql.prg
* contrib/hbnf/tests/test.prg
* contrib/hbtip/cgi.prg
* contrib/hbtip/tests/base64.prg
* contrib/hbtip/tests/dbtohtml.prg
* contrib/hbtip/tests/ftpadv.prg
* contrib/hbtip/tests/httpadv.prg
* contrib/hbtip/tests/tiptest.prg
* contrib/hbtip/thtml.prg
* contrib/rddads/tests/testmg.prg
* extras/gfspell/spell.prg
* extras/hbvpdf/hbvpdf.prg
* extras/httpsrv/cgifunc.prg
* extras/httpsrv/modules/tableservletdb.prg
* extras/httpsrv/session.prg
* extras/httpsrv/uhttpd.prg
* utils/hbmk2/hbmk2.prg
* minor cleanups
* contrib/xhb/*.ch
* formatted .ch files
! fixed SETLASTKEY() to be HB_SETLASTKEY() in xhb
* contrib/hbtinymt/3rd/tinymt/tinymt.hbp
- contrib/hbtinymt/3rd/tinymt/tinymt.hbx
! deleted .hbx file for 3rd lib and fixed not to generate it
* extras/httpsrv/modules/tableservletdb.prg
! DEFAULT TO -> hb_default()
This commit is contained in:
@@ -16,6 +16,37 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2012-11-08 16:02 UTC+0100 Viktor Szakats (harbour syenar.net)
|
||||
* contrib/hbmysql/tmysql.prg
|
||||
* contrib/hbnf/tests/test.prg
|
||||
* contrib/hbtip/cgi.prg
|
||||
* contrib/hbtip/tests/base64.prg
|
||||
* contrib/hbtip/tests/dbtohtml.prg
|
||||
* contrib/hbtip/tests/ftpadv.prg
|
||||
* contrib/hbtip/tests/httpadv.prg
|
||||
* contrib/hbtip/tests/tiptest.prg
|
||||
* contrib/hbtip/thtml.prg
|
||||
* contrib/rddads/tests/testmg.prg
|
||||
* extras/gfspell/spell.prg
|
||||
* extras/hbvpdf/hbvpdf.prg
|
||||
* extras/httpsrv/cgifunc.prg
|
||||
* extras/httpsrv/modules/tableservletdb.prg
|
||||
* extras/httpsrv/session.prg
|
||||
* extras/httpsrv/uhttpd.prg
|
||||
* utils/hbmk2/hbmk2.prg
|
||||
* minor cleanups
|
||||
|
||||
* contrib/xhb/*.ch
|
||||
* formatted .ch files
|
||||
! fixed SETLASTKEY() to be HB_SETLASTKEY() in xhb
|
||||
|
||||
* contrib/hbtinymt/3rd/tinymt/tinymt.hbp
|
||||
- contrib/hbtinymt/3rd/tinymt/tinymt.hbx
|
||||
! deleted .hbx file for 3rd lib and fixed not to generate it
|
||||
|
||||
* extras/httpsrv/modules/tableservletdb.prg
|
||||
! DEFAULT TO -> hb_default()
|
||||
|
||||
2012-11-08 14:59 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
|
||||
* harbour/src/rtl/rat.c
|
||||
! fixed HB_RAT() to respect end range in the same way as in HB_AT()
|
||||
|
||||
@@ -1473,10 +1473,10 @@ METHOD CreateTable( cTable, aStruct, cPrimaryKey, cUniqueKey, cAuto ) CLASS TMyS
|
||||
|
||||
NEXT
|
||||
IF cPrimarykey != NIL
|
||||
::cCreateQuery += ' PRIMARY KEY (' + cPrimaryKey + '),'
|
||||
::cCreateQuery += " PRIMARY KEY (" + cPrimaryKey + "),"
|
||||
ENDIF
|
||||
IF cUniquekey != NIL
|
||||
::cCreateQuery += ' UNIQUE ' + cUniquekey + ' (' + cUniqueKey + '),'
|
||||
::cCreateQuery += " UNIQUE " + cUniquekey + " (" + cUniqueKey + "),"
|
||||
ENDIF
|
||||
|
||||
// remove last comma from list
|
||||
|
||||
@@ -12,10 +12,10 @@ PROCEDURE Main()
|
||||
|
||||
nmar := ft_MVersion( @nver, @ntype, @nir )
|
||||
ppp := nmar + nver
|
||||
? Str( nmar, 2, 0 ), '.', Str( nver, 2, 0 )
|
||||
? Str( nmar, 2, 0 ), ".", Str( nver, 2, 0 )
|
||||
? ppp / 100
|
||||
Inkey( 0 )
|
||||
? 'is mouse on', ft_MReset()
|
||||
? "is mouse on", ft_MReset()
|
||||
Inkey( 0 )
|
||||
? ft_MShowCrs()
|
||||
Inkey( 0 )
|
||||
@@ -25,8 +25,8 @@ PROCEDURE Main()
|
||||
Inkey( 0 )
|
||||
|
||||
DO WHILE LastKey() != K_ESC
|
||||
? 'mouse row is', ft_MGetX()
|
||||
? 'mouse col is', ft_MGetY()
|
||||
? "mouse row is", ft_MGetX()
|
||||
? "mouse col is", ft_MGetY()
|
||||
IF LastKey() == K_ESC
|
||||
EXIT
|
||||
ENDIF
|
||||
|
||||
@@ -9,6 +9,8 @@
|
||||
|
||||
-o${hb_targetname}
|
||||
|
||||
-hbx=
|
||||
|
||||
-warn=low
|
||||
-pic
|
||||
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
/* --------------------------------------------------------------------
|
||||
* NOTE: You can add manual override which functions to include or
|
||||
* exclude from automatically generated EXTERNAL/DYNAMIC list.
|
||||
* Syntax: // HB_FUNC_INCLUDE <func>
|
||||
* // HB_FUNC_EXCLUDE <func>
|
||||
*/
|
||||
|
||||
/* --------------------------------------------------------------------
|
||||
* WARNING: Automatically generated code below. DO NOT EDIT!
|
||||
* Regenerate using hbmk2 '-hbx=' option.
|
||||
*/
|
||||
|
||||
#ifndef __HBEXTERN_CH__TINYMT__
|
||||
#define __HBEXTERN_CH__TINYMT__
|
||||
|
||||
#if defined( __HBEXTREQ__ ) .OR. defined( __HBEXTERN__TINYMT__ANNOUNCE )
|
||||
ANNOUNCE __HBEXTERN__TINYMT__
|
||||
#endif
|
||||
|
||||
#if defined( __HBEXTREQ__ ) .OR. defined( __HBEXTERN__TINYMT__REQUEST )
|
||||
#command DYNAMIC <fncs,...> => EXTERNAL <fncs>
|
||||
#endif
|
||||
|
||||
|
||||
#if defined( __HBEXTREQ__ ) .OR. defined( __HBEXTERN__TINYMT__REQUEST )
|
||||
#uncommand DYNAMIC <fncs,...> => EXTERNAL <fncs>
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -355,24 +355,24 @@ METHOD ErrHandler( xError ) CLASS TIpCgi
|
||||
|
||||
cErrMsg += '<table border="1">'
|
||||
|
||||
cErrMsg += '<tr><td>SCRIPT NAME:</td><td>' + GetEnv( "SCRIPT_NAME" ) + '</td></tr>'
|
||||
cErrMsg += "<tr><td>SCRIPT NAME:</td><td>" + GetEnv( "SCRIPT_NAME" ) + "</td></tr>"
|
||||
|
||||
IF HB_ISOBJECT( xError )
|
||||
cErrMsg += '<tr><td>CRITICAL ERROR:</td><td>' + xError:Description + '</td></tr>'
|
||||
cErrMsg += '<tr><td>OPERATION:</td><td>' + xError:Operation + '</td></tr>'
|
||||
cErrMsg += '<tr><td>OS ERROR:</td><td>' + hb_ntos( xError:OsCode ) + ' IN ' + xError:SubSystem + '/' + hb_ntos( xError:SubCode ) + '</td></tr>'
|
||||
cErrMsg += '<tr><td>FILENAME:</td><td>' + Right( xError:FileName, 40 ) + '</td></tr>'
|
||||
cErrMsg += "<tr><td>CRITICAL ERROR:</td><td>" + xError:Description + "</td></tr>"
|
||||
cErrMsg += "<tr><td>OPERATION:</td><td>" + xError:Operation + "</td></tr>"
|
||||
cErrMsg += "<tr><td>OS ERROR:</td><td>" + hb_ntos( xError:OsCode ) + " IN " + xError:SubSystem + "/" + hb_ntos( xError:SubCode ) + "</td></tr>"
|
||||
cErrMsg += "<tr><td>FILENAME:</td><td>" + Right( xError:FileName, 40 ) + "</td></tr>"
|
||||
ELSEIF HB_ISSTRING( xError )
|
||||
cErrMsg += '<tr><td>ERROR MESSAGE:</td><td>' + tip_HtmlSpecialChars( xError ) + '</td></tr>'
|
||||
cErrMsg += "<tr><td>ERROR MESSAGE:</td><td>" + tip_HtmlSpecialChars( xError ) + "</td></tr>"
|
||||
ENDIF
|
||||
|
||||
nCalls := 1
|
||||
DO WHILE ! Empty( ProcName( nCalls ) )
|
||||
cErrMsg += '<tr><td>PROC/LINE:</td><td>' + ProcName( nCalls ) + "/" + hb_ntos( ProcLine( nCalls ) ) + '</td></tr>'
|
||||
cErrMsg += "<tr><td>PROC/LINE:</td><td>" + ProcName( nCalls ) + "/" + hb_ntos( ProcLine( nCalls ) ) + "</td></tr>"
|
||||
nCalls++
|
||||
ENDDO
|
||||
|
||||
cErrMsg += '</table>'
|
||||
cErrMsg += "</table>"
|
||||
|
||||
::Write( cErrMsg )
|
||||
|
||||
@@ -393,25 +393,25 @@ METHOD Write( cString ) CLASS TIpCgi
|
||||
METHOD StartHtml( hOptions ) CLASS TIpCgi
|
||||
|
||||
::cHtmlPage += ;
|
||||
'<?xml version="1.0"' + HtmlOption( hOptions, 'encoding', ' ' ) + '?>' + _CRLF + ;
|
||||
'<?xml version="1.0"' + HtmlOption( hOptions, "encoding", " " ) + "?>" + _CRLF + ;
|
||||
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"' + _CRLF + ;
|
||||
'"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' + _CRLF + ;
|
||||
'<html xmlns="http://www.w3.org/1999/xhtml">' + ;
|
||||
'<head>' + ;
|
||||
HtmlTag( hOptions, 'title', 'title' ) + ;
|
||||
"<head>" + ;
|
||||
HtmlTag( hOptions, "title", "title" ) + ;
|
||||
HtmlScript( hOptions ) + ;
|
||||
HtmlStyle( hOptions ) + ;
|
||||
HtmlLinkRel( hOptions ) + ;
|
||||
'</head>' + ;
|
||||
'<body ' + ;
|
||||
"</head>" + ;
|
||||
"<body " + ;
|
||||
HtmlAllOption( hOptions ) + ;
|
||||
'>'
|
||||
">"
|
||||
|
||||
RETURN Self
|
||||
|
||||
METHOD EndHtml() CLASS TIpCgi
|
||||
|
||||
::cHtmlPage += '</body></html>'
|
||||
::cHtmlPage += "</body></html>"
|
||||
|
||||
RETURN Self
|
||||
|
||||
@@ -552,7 +552,7 @@ STATIC FUNCTION HtmlScript( hVal, cKey )
|
||||
IF HB_ISARRAY( cVal )
|
||||
cTmp := ""
|
||||
AScan( cVal, {| cVar | cTmp += cVar } )
|
||||
cRet += '<script type="text/javascript">' + _CRLF + '<!--' + _CRLF + cTmp + _CRLF + '-->' + _CRLF + '</script>' + _CRLF
|
||||
cRet += '<script type="text/javascript">' + _CRLF + "<!--" + _CRLF + cTmp + _CRLF + "-->" + _CRLF + "</script>" + _CRLF
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
@@ -595,7 +595,7 @@ STATIC FUNCTION HtmlStyle( hVal, cKey )
|
||||
IF HB_ISARRAY( cVal )
|
||||
cTmp := ""
|
||||
AScan( cVal, {| cVar | cTmp += cVar } )
|
||||
cRet += '<style type="text/css">' + _CRLF + '<!--' + _CRLF + cTmp + _CRLF + '-->' + _CRLF + '</style>' + _CRLF
|
||||
cRet += '<style type="text/css">' + _CRLF + "<!--" + _CRLF + cTmp + _CRLF + "-->" + _CRLF + "</style>" + _CRLF
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
@@ -36,16 +36,16 @@ PROCEDURE Main( ... )
|
||||
FOR nLen := 1 TO PCount()
|
||||
cData := Lower( hb_PValue( nLen ) )
|
||||
DO CASE
|
||||
CASE cData == '-h'
|
||||
CASE cData == "-h"
|
||||
lHelp := .T.
|
||||
|
||||
CASE cData == '-d'
|
||||
CASE cData == "-d"
|
||||
lDecode := .T.
|
||||
|
||||
CASE cData == '-q'
|
||||
CASE cData == "-q"
|
||||
lQp := .T.
|
||||
|
||||
CASE cData == '-u'
|
||||
CASE cData == "-u"
|
||||
lUrl := .T.
|
||||
|
||||
OTHERWISE
|
||||
|
||||
@@ -46,7 +46,7 @@ PROCEDURE Main
|
||||
oNode := oNode + "b"
|
||||
|
||||
/* Operator "+" creates a new <font> node with attribute */
|
||||
oNode := oNode + "font color='blue'"
|
||||
oNode := oNode + 'font color="blue"'
|
||||
oNode:text := "sample "
|
||||
|
||||
/* Operator "-" closes 2nd <font>, result is <b> node */
|
||||
|
||||
@@ -21,8 +21,8 @@ PROCEDURE Main( cUrl )
|
||||
ENDIF
|
||||
|
||||
IF oUrl:cProto != "ftp"
|
||||
? 'This is a "DELE" test for ftp.'
|
||||
? 'Use an ftp address with a file that you can delete.'
|
||||
? "This is a 'DELE' test for ftp."
|
||||
? "Use an ftp address with a file that you can delete."
|
||||
?
|
||||
QUIT
|
||||
ENDIF
|
||||
|
||||
@@ -21,8 +21,8 @@ PROCEDURE Main( cUrl )
|
||||
ENDIF
|
||||
|
||||
IF oUrl:cProto != "http"
|
||||
? 'This is a header test for http.'
|
||||
? 'Use an http address.'
|
||||
? "This is a header test for http."
|
||||
? "Use an http address."
|
||||
?
|
||||
QUIT
|
||||
ENDIF
|
||||
|
||||
@@ -105,7 +105,7 @@ PROCEDURE Main( cUrl, cFile )
|
||||
@ 5, 5 SAY "Connection status: " + oClient:cReply
|
||||
ENDIF
|
||||
|
||||
IF ! Empty( cFile ) .AND. Left( cFile, 1 ) == '+'
|
||||
IF ! Empty( cFile ) .AND. Left( cFile, 1 ) == "+"
|
||||
cFile := SubStr( cFile, 2 )
|
||||
bWrite := .T.
|
||||
ENDIF
|
||||
|
||||
@@ -139,12 +139,12 @@ METHOD new( cHtmlString ) CLASS THtmlDocument
|
||||
LOCAL cEmptyHtmlDoc, oNode, oSubNode, oErrNode, aHead, aBody, nMode := 0
|
||||
|
||||
cEmptyHtmlDoc := '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">' + hb_eol() + ;
|
||||
'<html>' + hb_eol() + ;
|
||||
' <head>' + hb_eol() + ;
|
||||
' </head>' + hb_eol() + ;
|
||||
' <body>' + hb_eol() + ;
|
||||
' </body>' + hb_eol() + ;
|
||||
'</html>'
|
||||
"<html>" + hb_eol() + ;
|
||||
" <head>" + hb_eol() + ;
|
||||
" </head>" + hb_eol() + ;
|
||||
" <body>" + hb_eol() + ;
|
||||
" </body>" + hb_eol() + ;
|
||||
"</html>"
|
||||
|
||||
IF ! HB_ISSTRING( cHtmlString )
|
||||
::root := THtmlNode():new( cEmptyHtmlDoc )
|
||||
|
||||
@@ -82,7 +82,7 @@ PROCEDURE Main()
|
||||
|
||||
? "Advantage Database Server Management Functions in Harbour"
|
||||
?
|
||||
? "Connect:", AdsMgConnect( 'C:' )
|
||||
? "Connect:", AdsMgConnect( "C:" )
|
||||
?
|
||||
? "AdsVersion( 0 ):", AdsVersion( 0 )
|
||||
? "AdsVersion( 3 ):", AdsVersion( 3 )
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#xtranslate DEFAULT( <p>, <v> ) => <p> := iif( <p> == NIL, <v>, <p> )
|
||||
#xtranslate Default( <p>, <v> ) => <p> := iif( <p> == NIL, <v>, <p> )
|
||||
#xtranslate HTMLSpace( <n> ) => Replicate( " ", <n> ) //" "
|
||||
#xtranslate CRLF() => Chr( 13 ) + Chr( 10 )
|
||||
|
||||
|
||||
@@ -60,34 +60,34 @@
|
||||
#xcommand C STRUCTURE <!stru!> [ALIGN <align> ] => ;
|
||||
INIT PROCEDURE __INIT_<stru>; ;
|
||||
__ActiveStructure( #<stru>, <align> ) ; ;
|
||||
#xtranslate IS <stru> \[ \<x: :=, INIT> { \<initlist,...> } ] => := HB_CStructure( #<stru> ):Init( {\<initlist>} ); ;
|
||||
#xtranslate IS <stru> FROM \<pointer> => := HB_CStructure( #<stru> ):Buffer( \<pointer> )
|
||||
#xtranslate IS <stru> \[ \<x: :=, INIT> { \<initlist,...> } ] => := hb_CStructure( #<stru> ):Init( {\<initlist>} ); ;
|
||||
#xtranslate IS <stru> FROM \<pointer> => := hb_CStructure( #<stru> ):Buffer( \<pointer> )
|
||||
|
||||
// <elem> instead of <!elem!> to allow ElemName[n] syntax.
|
||||
#xcommand MEMBER <elem> IS <type> => HB_Member( #<elem>, <type> )
|
||||
#xcommand MEMBER <elem> IS <type> => hb_Member( #<elem>, <type> )
|
||||
|
||||
/*
|
||||
Will match:
|
||||
MEMBER <elem> IS <!stru!>
|
||||
due to expansion of:
|
||||
#xtranslate IS <stru> [...] => := HB_CStructure( #<stru> ):Init( {} )
|
||||
#xtranslate IS <stru> [...] => := hb_CStructure( #<stru> ):Init( {} )
|
||||
as established by C STRUCTURE <!stru!> #xcommand for the given structure.
|
||||
*/
|
||||
#xcommand MEMBER <elem> := HB_CStructure( <literalstru> ):Init( {} ) => ;
|
||||
HB_Member( #<elem>, HB_CStructureId( <literalstru>, .T. ) )
|
||||
#xcommand MEMBER <elem> := hb_CStructure( <literalstru> ):Init( {} ) => ;
|
||||
hb_Member( #<elem>, hb_CStructureId( <literalstru>, .T. ) )
|
||||
|
||||
#xcommand MEMBER <!elem!> IS <type> ( <nlen> ) => HB_Member( #<elem>, HB_CTypeArrayID( <type>, <nlen> ) )
|
||||
#xcommand MEMBER <!elem!> IS <type> ( <nlen> ) => hb_Member( #<elem>, hb_CTypeArrayId( <type>, <nlen> ) )
|
||||
|
||||
#xcommand MEMBER <!elem!> AS <!stru!> => ;
|
||||
HB_Member( #<elem>, HB_CStructureId( #<stru>, .F. ) )
|
||||
hb_Member( #<elem>, hb_CStructureId( #<stru>, .F. ) )
|
||||
|
||||
#xcommand END C STRUCTURE [<!stru!>] => ; ;
|
||||
__ClsSetModule( __ActiveStructure() ); ;
|
||||
RETURN
|
||||
|
||||
#xcommand IMPORT C STRUCTURE <!stru!> => ;
|
||||
#xtranslate IS <stru> \[ \<x: :=, INIT> { \<initlist,...> } ] => := HB_CStructure( #<stru> ):Init( {\<initlist>} ); ;
|
||||
#xtranslate IS <stru> FROM \<pointer> => := HB_CStructure( #<stru> ):Buffer( \<pointer> )
|
||||
#xtranslate IS <stru> \[ \<x: :=, INIT> { \<initlist,...> } ] => := hb_CStructure( #<stru> ):Init( {\<initlist>} ); ;
|
||||
#xtranslate IS <stru> FROM \<pointer> => := hb_CStructure( #<stru> ):Buffer( \<pointer> )
|
||||
|
||||
//----------------------------- C Syntax support ---------------------------------//
|
||||
/* NOTES:
|
||||
@@ -101,17 +101,17 @@
|
||||
|
||||
#xcommand typedef struct [<!tag!>] { [[struct] <elem>] } <!stru!> [, <*synon*>] => ;
|
||||
INIT PROCEDURE __INIT_<stru>; ;
|
||||
HB_CStructureCSyntax( #<stru>, {[#<elem>,]}, <(tag)>, <"synon">, __PACK ); ;
|
||||
hb_CStructureCSyntax( #<stru>, {[#<elem>,]}, <(tag)>, <"synon">, __PACK ); ;
|
||||
__ClsSetModule( __ActiveStructure() ); ;
|
||||
RETURN; ;
|
||||
#xtranslate IS <stru> \[ \<x: :=, INIT> { \<initlist,...> } ] => := HB_CStructure( #<stru> ):Init( {\<initlist>} ); ;
|
||||
#xtranslate IS <stru> FROM \<pointer> => := HB_CStructure( #<stru> ):Buffer( \<pointer> )
|
||||
#xtranslate IS <stru> \[ \<x: :=, INIT> { \<initlist,...> } ] => := hb_CStructure( #<stru> ):Init( {\<initlist>} ); ;
|
||||
#xtranslate IS <stru> FROM \<pointer> => := hb_CStructure( #<stru> ):Buffer( \<pointer> )
|
||||
|
||||
#xcommand pragma pack( <pack> ) => #undef __PACK; #define __PACK <pack>
|
||||
#xcommand pragma pack() => #undef __PACK; #define __PACK 8
|
||||
|
||||
#xtranslate ( struct <stru> ) [<buffer>] => HB_CStructure( #<stru> ):Buffer( <buffer> )
|
||||
#xtranslate ( struct <stru>* ) <pointer> => HB_CStructure( #<stru> ):Pointer( <pointer> )
|
||||
#xtranslate ( struct <stru> ) [<buffer>] => hb_CStructure( #<stru> ):Buffer( <buffer> )
|
||||
#xtranslate ( struct <stru>* ) <pointer> => hb_CStructure( #<stru> ):Pointer( <pointer> )
|
||||
#endif
|
||||
|
||||
#endif /* __HBCSTRUCT_CH_ */
|
||||
|
||||
@@ -64,182 +64,181 @@
|
||||
#define __PLATFORM__LINUX
|
||||
#endif
|
||||
|
||||
#xtranslate hb_ScrMaxRow() => gtInfo( HB_GTI_SCREENHEIGHT )
|
||||
#xtranslate hb_ScrMaxCol() => gtInfo( HB_GTI_SCREENWIDTH )
|
||||
#xtranslate MaxRow(.T.) => gtInfo( HB_GTI_SCREENHEIGHT )
|
||||
#xtranslate MaxCol(.T.) => gtInfo( HB_GTI_SCREENWIDTH )
|
||||
#xtranslate hb_keyNext([<x>]) => NextKey(<x>)
|
||||
#xtranslate hb_ScrMaxRow() => gtInfo( HB_GTI_SCREENHEIGHT )
|
||||
#xtranslate hb_ScrMaxCol() => gtInfo( HB_GTI_SCREENWIDTH )
|
||||
#xtranslate MaxRow( .T. ) => gtInfo( HB_GTI_SCREENHEIGHT )
|
||||
#xtranslate MaxCol( .T. ) => gtInfo( HB_GTI_SCREENWIDTH )
|
||||
#xtranslate hb_keyNext( [<x>] ) => NextKey( <x> )
|
||||
|
||||
#xtranslate hb_osNewLine() => hb_eol()
|
||||
#xtranslate hb_osPathSeparator() => hb_ps()
|
||||
#xtranslate hb_osNewLine() => hb_eol()
|
||||
#xtranslate hb_osPathSeparator() => hb_ps()
|
||||
|
||||
#xtranslate hb_dbPack() => __dbPack()
|
||||
#xtranslate hb_dbZap() => __dbZap()
|
||||
#xtranslate hb_dbDrop([<x,...>]) => dbDrop(<x>)
|
||||
#xtranslate hb_dbExists([<x,...>]) => dbExists(<x>)
|
||||
#xtranslate hb_FieldLen([<x>]) => FieldLen(<x>)
|
||||
#xtranslate hb_FieldDec([<x>]) => FieldDec(<x>)
|
||||
#xtranslate hb_FieldType([<x>]) => FieldType(<x>)
|
||||
#xtranslate hb_dbPack() => __dbPack()
|
||||
#xtranslate hb_dbZap() => __dbZap()
|
||||
#xtranslate hb_dbDrop( [<x,...>] ) => dbDrop( <x> )
|
||||
#xtranslate hb_dbExists( [<x,...>] ) => dbExists( <x> )
|
||||
#xtranslate hb_FieldLen( [<x>] ) => FieldLen( <x> )
|
||||
#xtranslate hb_FieldDec( [<x>] ) => FieldDec( <x> )
|
||||
#xtranslate hb_FieldType( [<x>] ) => FieldType( <x> )
|
||||
|
||||
#xtranslate hb_gtInfo( HB_GTI_INKEYREAD [, <x>] ) => SetInkeyBeforeBlock([<x>]) <-x->
|
||||
#xtranslate hb_gtInfo( HB_GTI_INKEYFILTER [, <x>] ) => SetInkeyAfterBlock([<x>]) <-x->
|
||||
#xtranslate hb_gtInfo( HB_GTI_INKEYREAD [, <x>] ) => SetInkeyBeforeBlock( [<x>] ) <-x->
|
||||
#xtranslate hb_gtInfo( HB_GTI_INKEYFILTER [, <x>] ) => SetInkeyAfterBlock( [<x>] ) <-x->
|
||||
|
||||
#xtranslate hb_processOpen([<x,...>]) => hb_openProcess(<x>)
|
||||
#xtranslate hb_processClose([<x,...>]) => hb_closeProcess(<x>)
|
||||
#xtranslate hb_processOpen( [<x,...>] ) => hb_OpenProcess( <x> )
|
||||
#xtranslate hb_processClose( [<x,...>] ) => hb_CloseProcess( <x> )
|
||||
|
||||
#xtranslate hb_isregex([<x>]) => hb_isregexstring(<x>)
|
||||
#xtranslate hb_methodName([<x,...>]) => methodName(<x>)
|
||||
#xtranslate hb_libLoad([<x,...>]) => libLoad(<x>)
|
||||
#xtranslate hb_libFree([<x,...>]) => libFree(<x>)
|
||||
#xtranslate hb_adler32([<x,...>]) => hb_checksum(<x>)
|
||||
#xtranslate hb_keySetLast([<x,...>]) => setLastKey(<x>)
|
||||
#xtranslate hb_setLastKey([<x,...>]) => setLastKey(<x>)
|
||||
#xtranslate hb_CStr([<x,...>]) => CStr(<x>)
|
||||
#xtranslate hb_valToExp([<x,...>]) => ValToPrgExp(<x>)
|
||||
#xtranslate hb_rddInfo([<x,...>]) => rddInfo(<x>)
|
||||
#xtranslate hb_idleSleep([<x,...>]) => SecondsSleep(<x>)
|
||||
#xtranslate hb_UserName() => NetName(1)
|
||||
#xtranslate hb_FSize(<x>) => FileSize(<x>)
|
||||
#xtranslate hb_WildMatch([<x,...>]) => WildMatch(<x>)
|
||||
#xtranslate hb_bitTest([<x,...>]) => hb_bitIsSet(<x>)
|
||||
#xtranslate hb_Deserialize(<x>) => hb_DeserialNext(<x>)
|
||||
#xtranslate hb_IsRegex( [<x>] ) => hb_IsRegexString( <x> )
|
||||
#xtranslate hb_MethodName( [<x,...>] ) => MethodName( <x> )
|
||||
#xtranslate hb_libLoad( [<x,...>] ) => LibLoad( <x> )
|
||||
#xtranslate hb_libFree( [<x,...>] ) => LibFree( <x> )
|
||||
#xtranslate hb_Adler32( [<x,...>] ) => hb_Checksum( <x> )
|
||||
#xtranslate hb_keySetLast( [<x,...>] ) => hb_SetLastKey( <x> )
|
||||
#xtranslate hb_CStr( [<x,...>] ) => CStr( <x> )
|
||||
#xtranslate hb_ValToExp( [<x,...>] ) => ValToPrgExp( <x> )
|
||||
#xtranslate hb_rddInfo( [<x,...>] ) => rddInfo( <x> )
|
||||
#xtranslate hb_idleSleep( [<x,...>] ) => SecondsSleep( <x> )
|
||||
#xtranslate hb_UserName() => NetName(1)
|
||||
#xtranslate hb_FSize( <x> ) => FileSize( <x> )
|
||||
#xtranslate hb_WildMatch( [<x,...>] ) => WildMatch( <x> )
|
||||
#xtranslate hb_bitTest( [<x,...>] ) => hb_bitIsSet( <x> )
|
||||
#xtranslate hb_Deserialize( <x> ) => hb_DeserialNext( <x> )
|
||||
|
||||
#xtranslate hb_HexToNum([<c,...>]) => HexToNum(<c>)
|
||||
#xtranslate hb_NumToHex([<n,...>]) => NumToHex(<n>)
|
||||
#xtranslate hb_HexToStr([<c,...>]) => HexToStr(<c>)
|
||||
#xtranslate hb_StrToHex([<c,...>]) => StrToHex(<c>)
|
||||
#xtranslate hb_HexToNum( [<c,...>] ) => HexToNum( <c> )
|
||||
#xtranslate hb_NumToHex( [<n,...>] ) => NumToHex( <n> )
|
||||
#xtranslate hb_HexToStr( [<c,...>] ) => HexToStr( <c> )
|
||||
#xtranslate hb_StrToHex( [<c,...>] ) => StrToHex( <c> )
|
||||
|
||||
#xtranslate hb_AScan([<x,...>]) => AScan(<x>)
|
||||
#xtranslate hb_RAScan([<x,...>]) => RAScan(<x>)
|
||||
#xtranslate hb_AIns([<x,...>]) => AIns(<x>)
|
||||
#xtranslate hb_ADel([<x,...>]) => ADel(<x>)
|
||||
#xtranslate hb_At([<x,...>]) => At(<x>)
|
||||
#xtranslate hb_AScan( [<x,...>] ) => AScan( <x> )
|
||||
#xtranslate hb_RAScan( [<x,...>] ) => RAScan( <x> )
|
||||
#xtranslate hb_AIns( [<x,...>] ) => AIns( <x> )
|
||||
#xtranslate hb_ADel( [<x,...>] ) => ADel( <x> )
|
||||
#xtranslate hb_At( [<x,...>] ) => At( <x> )
|
||||
|
||||
#xtranslate hb_DateTime([<x,...>]) => DateTime(<x>)
|
||||
#xtranslate hb_Hour([<x>]) => Hour(<x>)
|
||||
#xtranslate hb_Minute([<x>]) => Minute(<x>)
|
||||
#xtranslate hb_TToS([<x>]) => TToS(<x>)
|
||||
#xtranslate hb_SToT([<x>]) => SToT(<x>)
|
||||
#xtranslate hb_TToC([<x,...>]) => TToC(<x>)
|
||||
#xtranslate hb_CToT([<x,...>]) => CToT(<x>)
|
||||
#xtranslate hb_DateTime( [<x,...>] ) => DateTime( <x> )
|
||||
#xtranslate hb_Hour( [<x>] ) => Hour( <x> )
|
||||
#xtranslate hb_Minute( [<x>] ) => Minute( <x> )
|
||||
#xtranslate hb_TToS( [<x>] ) => TToS( <x> )
|
||||
#xtranslate hb_SToT( [<x>] ) => SToT( <x> )
|
||||
#xtranslate hb_TToC( [<x,...>] ) => TToC( <x> )
|
||||
#xtranslate hb_CToT( [<x,...>] ) => CToT( <x> )
|
||||
|
||||
#xtranslate hb_GetEnv([<x,...>]) => GetEnv(<x>)
|
||||
#xtranslate hb_SetKey([<x,...>]) => SetKey(<x>)
|
||||
#xtranslate hb_GetEnv( [<x,...>] ) => GetEnv( <x> )
|
||||
#xtranslate hb_SetKey( [<x,...>] ) => SetKey( <x> )
|
||||
|
||||
#xtranslate hb_i18n_gettext(<x>) => i18n(<x>)
|
||||
#xtranslate hb_i18n_gettext( <x> ) => i18n( <x> )
|
||||
|
||||
#xtranslate hb_cdpSelect([<x,...>]) => hb_SetCodepage( <x> )
|
||||
#xtranslate hb_cdpSelect( [<x,...>] ) => hb_SetCodepage( <x> )
|
||||
|
||||
#xtranslate hb_ARGV([<x,...>]) => hb_CMDARGARGV(<x>)
|
||||
#xtranslate hb_argv( [<x,...>] ) => hb_CmdArgArgV( <x> )
|
||||
|
||||
#xtranslate hb_IniSetComment([<x,...>]) => hb_SetIniComment(<x>)
|
||||
#xtranslate hb_IniRead([<x,...>]) => hb_ReadIni(<x>)
|
||||
#xtranslate hb_IniWrite([<x,...>]) => hb_WriteIni(<x>)
|
||||
#xtranslate hb_iniSetComment( [<x,...>] ) => hb_SetIniComment( <x> )
|
||||
#xtranslate hb_iniRead( [<x,...>] ) => hb_ReadIni( <x> )
|
||||
#xtranslate hb_iniWrite( [<x,...>] ) => hb_WriteIni( <x> )
|
||||
|
||||
#xtranslate hb_DisableWaitLocks([<x>]) => DisableWaitLocks(<x>)
|
||||
#xtranslate hb_DisableWaitLocks( [<x>] ) => DisableWaitLocks( <x> )
|
||||
|
||||
#xtranslate hb_gtLock() => HBCONSOLELOCK()
|
||||
#xtranslate hb_gtUnLock() => HBCONSOLEUNLOCK()
|
||||
#xtranslate hb_gtLock() => hbConsoleLock()
|
||||
#xtranslate hb_gtUnLock() => hbConsoleUnLock()
|
||||
|
||||
/* MT functions */
|
||||
#xtranslate hb_mtvm() => hb_multiThread()
|
||||
#xtranslate hb_threadSelf() => GetCurrentThread()
|
||||
#xtranslate hb_threadId( [<x,...>] ) => GetThreadId( <x> )
|
||||
#xtranslate hb_threadStart( <x,...> ) => StartThread( [<x>] )
|
||||
#xtranslate hb_threadJoin( <x> ) => JoinThread( <x> )
|
||||
#xtranslate hb_threadQuitRequest( <x> ) => KillThread( <x> )
|
||||
#xtranslate hb_threadWaitForAll() => WaitForThreads()
|
||||
#xtranslate hb_threadTerminateAll() => KillAllThreads()
|
||||
#xtranslate hb_mtvm() => hb_MultiThread()
|
||||
#xtranslate hb_threadSelf() => GetCurrentThread()
|
||||
#xtranslate hb_threadID( [<x,...>] ) => GetThreadId( <x> )
|
||||
#xtranslate hb_threadStart( <x,...> ) => StartThread( [<x>] )
|
||||
#xtranslate hb_threadJoin( <x> ) => JoinThread( <x> )
|
||||
#xtranslate hb_threadQuitRequest( <x> ) => KillThread( <x> )
|
||||
#xtranslate hb_threadWaitForAll() => WaitForThreads()
|
||||
#xtranslate hb_threadTerminateAll() => KillAllThreads()
|
||||
|
||||
#xtranslate hb_mutexNotify(<x,...>) => Notify(<x>)
|
||||
#xtranslate hb_mutexNotifyAll(<x,...>) => NotifyAll(<x>)
|
||||
#xtranslate hb_mutexNotify( <x,...> ) => Notify( <x> )
|
||||
#xtranslate hb_mutexNotifyAll( <x,...> ) => NotifyAll( <x> )
|
||||
|
||||
#xtranslate hb_mutexSubscribe(<x,...>) => {| mtx, nTimeOut, xSubscribed | ;;
|
||||
local lSubscribed ;;
|
||||
xSubscribed := Subscribe( mtx, ;
|
||||
iif( HB_ISNUMERIC( nTimeOut ), nTimeOut * 1000, ), ;
|
||||
@lSubscribed ) ;
|
||||
return lSubscribed ; }:eval( <x> )
|
||||
#xtranslate hb_mutexSubscribeNow(<x,...>) => {| mtx, nTimeOut, xSubscribed | ;;
|
||||
local lSubscribed ;;
|
||||
xSubscribed := SubscribeNow( mtx, ;
|
||||
iif( HB_ISNUMERIC( nTimeOut ), nTimeOut * 1000, ), ;
|
||||
@lSubscribed ) ;
|
||||
return lSubscribed ; }:eval( <x> )
|
||||
#xtranslate hb_mutexSubscribe( <x,...> ) => {| mtx, nTimeOut, xSubscribed | ;;
|
||||
LOCAL lSubscribed ;;
|
||||
xSubscribed := Subscribe( mtx, ;
|
||||
iif( HB_ISNUMERIC( nTimeOut ), nTimeOut * 1000, ), ;
|
||||
@lSubscribed ) ;
|
||||
RETURN lSubscribed ; }:eval( <x> )
|
||||
#xtranslate hb_mutexSubscribeNow( <x,...> ) => {| mtx, nTimeOut, xSubscribed | ;;
|
||||
LOCAL lSubscribed ;;
|
||||
xSubscribed := SubscribeNow( mtx, ;
|
||||
iif( HB_ISNUMERIC( nTimeOut ), nTimeOut * 1000, ), ;
|
||||
@lSubscribed ) ;
|
||||
RETURN lSubscribed ; }:eval( <x> )
|
||||
|
||||
#xtranslate hb_MutexLock( <x>, <n> ) => iif( ! HB_ISNUMERIC( <n> ), hb_MutexLock( <x> ) ;
|
||||
iif( <n> <= 0, hb_MutexTryLock( <x> ), ;
|
||||
hb_MutexTimeOutLock( <x>, <n> ) ) )
|
||||
#xtranslate hb_mutexLock( <x>, <n> ) => iif( ! HB_ISNUMERIC( <n> ), hb_mutexLock( <x> ) ;
|
||||
iif( <n> <= 0, hb_MutexTryLock( <x> ), ;
|
||||
hb_MutexTimeOutLock( <x>, <n> ) ) )
|
||||
|
||||
/* Hash item functions */
|
||||
#xtranslate hb_HASH([<x,...>]) => HASH(<x>)
|
||||
#xtranslate hb_HHASKEY([<x,...>]) => HHASKEY(<x>)
|
||||
#xtranslate hb_HPOS([<x,...>]) => HGETPOS(<x>)
|
||||
#xtranslate hb_HGET([<x,...>]) => HGET(<x>)
|
||||
#xtranslate hb_HSET([<x,...>]) => HSET(<x>)
|
||||
#xtranslate hb_HDEL([<x,...>]) => HDEL(<x>)
|
||||
#xtranslate hb_HKEYAT([<x,...>]) => HGETKEYAT(<x>)
|
||||
#xtranslate hb_HVALUEAT([<x,...>]) => HGETVALUEAT(<x>)
|
||||
#xtranslate hb_HVALUEAT([<x,...>]) => HSETVALUEAT(<x>)
|
||||
#xtranslate hb_HPAIRAT([<x,...>]) => HGETPAIRAT(<x>)
|
||||
#xtranslate hb_HDELAT([<x,...>]) => HDELAT(<x>)
|
||||
#xtranslate hb_HKEYS([<x,...>]) => HGETKEYS(<x>)
|
||||
#xtranslate hb_HVALUES([<x,...>]) => HGETVALUES(<x>)
|
||||
#xtranslate hb_HFILL([<x,...>]) => HFILL(<x>)
|
||||
#xtranslate hb_HCLONE([<x,...>]) => HCLONE(<x>)
|
||||
#xtranslate hb_HCOPY([<x,...>]) => HCOPY(<x>)
|
||||
#xtranslate hb_HMERGE([<x,...>]) => HMERGE(<x>)
|
||||
#xtranslate hb_HEVAL([<x,...>]) => HEVAL(<x>)
|
||||
#xtranslate hb_HSCAN([<x,...>]) => HSCAN(<x>)
|
||||
#xtranslate hb_HSETCASEMATCH([<x,...>]) => HSETCASEMATCH(<x>)
|
||||
#xtranslate hb_HCASEMATCH([<x,...>]) => HGETCASEMATCH(<x>)
|
||||
#xtranslate hb_HSETAUTOADD([<x,...>]) => HSETAUTOADD(<x>)
|
||||
#xtranslate hb_HAUTOADD([<x,...>]) => HGETAUTOADD(<x>)
|
||||
#xtranslate hb_HALLOCATE([<x,...>]) => HALLOCATE(<x>)
|
||||
#xtranslate hb_HDEFAULT([<x,...>]) => HDEFAULT(<x>)
|
||||
#xtranslate hb_Hash( [<x,...>] ) => Hash( <x> )
|
||||
#xtranslate hb_HHasKey( [<x,...>] ) => HHasKey( <x> )
|
||||
#xtranslate hb_HPos( [<x,...>] ) => HGetPos( <x> )
|
||||
#xtranslate hb_HGet( [<x,...>] ) => HGet( <x> )
|
||||
#xtranslate hb_HSet( [<x,...>] ) => HSet( <x> )
|
||||
#xtranslate hb_HDel( [<x,...>] ) => HDel( <x> )
|
||||
#xtranslate hb_HKeyAt( [<x,...>] ) => HGetKeyAt( <x> )
|
||||
#xtranslate hb_HValueAt( [<x,...>] ) => HGetValueAt( <x> )
|
||||
#xtranslate hb_HValueAt( [<x,...>] ) => HSetValueAt( <x> )
|
||||
#xtranslate hb_HPaiRAt( [<x,...>] ) => HGetPaiRAt( <x> )
|
||||
#xtranslate hb_HDelAt( [<x,...>] ) => HDelAt( <x> )
|
||||
#xtranslate hb_HKeys( [<x,...>] ) => HGetKeys( <x> )
|
||||
#xtranslate hb_HValues( [<x,...>] ) => HGetValues( <x> )
|
||||
#xtranslate hb_HFill( [<x,...>] ) => HFill( <x> )
|
||||
#xtranslate hb_HClone( [<x,...>] ) => HClone( <x> )
|
||||
#xtranslate hb_HCopy( [<x,...>] ) => HCopy( <x> )
|
||||
#xtranslate hb_HMerge( [<x,...>] ) => HMerge( <x> )
|
||||
#xtranslate hb_HEVal( [<x,...>] ) => HEVal( <x> )
|
||||
#xtranslate hb_HScan( [<x,...>] ) => HScan( <x> )
|
||||
#xtranslate hb_HSetCaseMatch( [<x,...>] ) => HSetCaseMatch( <x> )
|
||||
#xtranslate hb_HCaseMatch( [<x,...>] ) => HGetCaseMatch( <x> )
|
||||
#xtranslate hb_HSetAutoAdd( [<x,...>] ) => HSetAutoAdd( <x> )
|
||||
#xtranslate hb_HAutoAdd( [<x,...>] ) => HGetAutoAdd( <x> )
|
||||
#xtranslate hb_HAllocate( [<x,...>] ) => HAllocate( <x> )
|
||||
#xtranslate hb_HDefault( [<x,...>] ) => HDefault( <x> )
|
||||
|
||||
/* Inet functions */
|
||||
#xtranslate hb_INETINIT([<x,...>]) => INETINIT(<x>)
|
||||
#xtranslate hb_INETCLEANUP([<x,...>]) => INETCLEANUP(<x>)
|
||||
#xtranslate hb_INETCREATE([<x,...>]) => INETCREATE(<x>)
|
||||
#xtranslate hb_INETCLOSE([<x,...>]) => INETCLOSE(<x>)
|
||||
#xtranslate hb_INETFD([<x,...>]) => INETFD(<x>)
|
||||
#xtranslate hb_INETSTATUS([<x,...>]) => INETSTATUS(<x>)
|
||||
#xtranslate hb_INETERRORCODE([<x,...>]) => INETERRORCODE(<x>)
|
||||
#xtranslate hb_INETERRORDESC([<x,...>]) => INETERRORDESC(<x>)
|
||||
#xtranslate hb_INETCLEARERROR([<x,...>]) => INETCLEARERROR(<x>)
|
||||
#xtranslate hb_INETCOUNT([<x,...>]) => INETCOUNT(<x>)
|
||||
#xtranslate hb_INETADDRESS([<x,...>]) => INETADDRESS(<x>)
|
||||
#xtranslate hb_INETPORT([<x,...>]) => INETPORT(<x>)
|
||||
#xtranslate hb_INETTIMEOUT(<x>, <y>) => INETSETTIMEOUT(<x>, <y>)
|
||||
#xtranslate hb_INETTIMEOUT(<x>) => INETGETTIMEOUT(<x>)
|
||||
#xtranslate hb_INETCLEARTIMEOUT([<x,...>]) => INETCLEARTIMEOUT(<x>)
|
||||
#xtranslate hb_INETTIMELIMIT(<x>, <y>) => INETSETTIMELIMIT(<x>, <y>)
|
||||
#xtranslate hb_INETTIMELIMIT(<x>) => INETGETTIMELIMIT(<x>)
|
||||
#xtranslate hb_INETCLEARTIMELIMIT([<x,...>]) => INETCLEARTIMELIMIT(<x>)
|
||||
#xtranslate hb_INETPERIODCALLBACK(<x>, <y>) => INETSETPERIODCALLBACK(<x>, <y>)
|
||||
#xtranslate hb_INETPERIODCALLBACK(<x>) => INETGETPERIODCALLBACK(<x>)
|
||||
#xtranslate hb_INETCLEARPERIODCALLBACK([<x,...>]) => INETCLEARPERIODCALLBACK(<x>)
|
||||
#xtranslate hb_INETRECV([<x,...>]) => INETRECV(<x>)
|
||||
#xtranslate hb_INETRECVALL([<x,...>]) => INETRECVALL(<x>)
|
||||
#xtranslate hb_INETRECVLINE([<x,...>]) => INETRECVLINE(<x>)
|
||||
#xtranslate hb_INETRECVENDBLOCK([<x,...>]) => INETRECVENDBLOCK(<x>)
|
||||
#xtranslate hb_INETDATAREADY([<x,...>]) => INETDATAREADY(<x>)
|
||||
#xtranslate hb_INETSEND([<x,...>]) => INETSEND(<x>)
|
||||
#xtranslate hb_INETSENDALL([<x,...>]) => INETSENDALL(<x>)
|
||||
#xtranslate hb_INETGETHOSTS([<x,...>]) => INETGETHOSTS(<x>)
|
||||
#xtranslate hb_INETGETALIAS([<x,...>]) => INETGETALIAS(<x>)
|
||||
#xtranslate hb_INETSERVER([<x,...>]) => INETSERVER(<x>)
|
||||
#xtranslate hb_INETACCEPT([<x,...>]) => INETACCEPT(<x>)
|
||||
#xtranslate hb_INETCONNECT([<x,...>]) => INETCONNECT(<x>)
|
||||
#xtranslate hb_INETCONNECTIP([<x,...>]) => INETCONNECTIP(<x>)
|
||||
#xtranslate hb_INETDGRAMBIND([<x,...>]) => INETDGRAMBIND(<x>)
|
||||
#xtranslate hb_INETDGRAM([<x,...>]) => INETDGRAM(<x>)
|
||||
#xtranslate hb_INETDGRAMSEND([<x,...>]) => INETDGRAMSEND(<x>)
|
||||
#xtranslate hb_INETDGRAMRECV([<x,...>]) => INETDGRAMRECV(<x>)
|
||||
#xtranslate hb_INETCRLF([<x,...>]) => INETCRLF(<x>)
|
||||
#xtranslate hb_INETISSOCKET([<x,...>]) => INETISSOCKET(<x>)
|
||||
#xtranslate hb_INETCLOSE([<x,...>]) => INETDESTROY(<x>)
|
||||
#xtranslate hb_inetInit( [<x,...>] ) => inetInit( <x> )
|
||||
#xtranslate hb_inetCleanup( [<x,...>] ) => inetCleanup( <x> )
|
||||
#xtranslate hb_inetCreate( [<x,...>] ) => inetCreate( <x> )
|
||||
#xtranslate hb_inetClose( [<x,...>] ) => inetClose( <x> )
|
||||
#xtranslate hb_inetFD( [<x,...>] ) => inetFD( <x> )
|
||||
#xtranslate hb_inetstatus( [<x,...>] ) => inetStatus( <x> )
|
||||
#xtranslate hb_inetErrorCode( [<x,...>] ) => inetErrorCode( <x> )
|
||||
#xtranslate hb_inetErrorDesc( [<x,...>] ) => inetErrorDesc( <x> )
|
||||
#xtranslate hb_inetClearError( [<x,...>] ) => inetClearError( <x> )
|
||||
#xtranslate hb_inetCount( [<x,...>] ) => inetCount( <x> )
|
||||
#xtranslate hb_inetAddress( [<x,...>] ) => inetAddress( <x> )
|
||||
#xtranslate hb_inetPort( [<x,...>] ) => inetPort( <x> )
|
||||
#xtranslate hb_inetTimeout( <x>, <y> ) => inetSetTimeout( <x>, <y> )
|
||||
#xtranslate hb_inetTimeout( <x> ) => inetGetTimeout( <x> )
|
||||
#xtranslate hb_inetClearTimeout( [<x,...>] ) => inetClearTimeout( <x> )
|
||||
#xtranslate hb_inetTimeLimit( <x>, <y> ) => inetSetTimeLimit( <x>, <y> )
|
||||
#xtranslate hb_inetTimeLimit( <x> ) => inetGetTimeLimit( <x> )
|
||||
#xtranslate hb_inetClearTimeLimit( [<x,...>] ) => inetClearTimeLimit( <x> )
|
||||
#xtranslate hb_inetPeriodCallback( <x>, <y> ) => inetSetPeriodCallback( <x>, <y> )
|
||||
#xtranslate hb_inetPeriodCallback( <x> ) => inetGetPeriodCallback( <x> )
|
||||
#xtranslate hb_inetClearPeriodCallback( [<x,...>] ) => inetClearPeriodCallback( <x> )
|
||||
#xtranslate hb_inetRecv( [<x,...>] ) => inetRecv( <x> )
|
||||
#xtranslate hb_inetRecvAll( [<x,...>] ) => inetRecvAll( <x> )
|
||||
#xtranslate hb_inetRecvLine( [<x,...>] ) => inetRecvLine( <x> )
|
||||
#xtranslate hb_inetRecvEndbLock( [<x,...>] ) => inetRecvEndBlock( <x> )
|
||||
#xtranslate hb_inetDataReady( [<x,...>] ) => inetDataReady( <x> )
|
||||
#xtranslate hb_inetSend( [<x,...>] ) => inetSend( <x> )
|
||||
#xtranslate hb_inetSendAll( [<x,...>] ) => inetSendAll( <x> )
|
||||
#xtranslate hb_inetGetHosts( [<x,...>] ) => inetGetHosts( <x> )
|
||||
#xtranslate hb_inetGetAlias( [<x,...>] ) => inetGetAlias( <x> )
|
||||
#xtranslate hb_inetServer( [<x,...>] ) => inetServer( <x> )
|
||||
#xtranslate hb_inetAccept( [<x,...>] ) => inetAccept( <x> )
|
||||
#xtranslate hb_inetConnect( [<x,...>] ) => inetConnect( <x> )
|
||||
#xtranslate hb_inetConnectIP( [<x,...>] ) => inetConnectIP( <x> )
|
||||
#xtranslate hb_inetDGramBind( [<x,...>] ) => inetDGramBind( <x> )
|
||||
#xtranslate hb_inetDGram( [<x,...>] ) => inetDGram( <x> )
|
||||
#xtranslate hb_inetDGramSend( [<x,...>] ) => inetDGramSend( <x> )
|
||||
#xtranslate hb_inetDGramRecv( [<x,...>] ) => inetDGramRecv( <x> )
|
||||
#xtranslate hb_inetCRLF( [<x,...>] ) => inetCRLF( <x> )
|
||||
#xtranslate hb_inetIsSocket( [<x,...>] ) => inetIsSocket( <x> )
|
||||
#xtranslate hb_inetClose( [<x,...>] ) => inetDestroy( <x> )
|
||||
|
||||
/* Some statement endings */
|
||||
#xcommand ENDSEQUENCE => END
|
||||
@@ -273,11 +272,11 @@
|
||||
#xtranslate hb_eol() => hb_osNewLine()
|
||||
#xtranslate hb_ps() => hb_osPathSeparator()
|
||||
|
||||
#xtranslate MaxRow(.T.) => hb_gtInfo( HB_GTI_VIEWPORTHEIGHT )
|
||||
#xtranslate MaxCol(.T.) => hb_gtInfo( HB_GTI_VIEWPORTWIDTH )
|
||||
#xtranslate MaxRow( .T. ) => hb_gtInfo( HB_GTI_VIEWPORTHEIGHT )
|
||||
#xtranslate MaxCol( .T. ) => hb_gtInfo( HB_GTI_VIEWPORTWIDTH )
|
||||
#xtranslate NextKey( [<x>] ) => hb_keyNext( <x> )
|
||||
|
||||
#xtranslate Str(<x>,[<y>],[<y>],<z>) => iif( <z>, hb_ntos( <x> ), Str( <x> ) )
|
||||
#xtranslate Str( <x>, [<y>], [<y>], <z> ) => iif( <z>, hb_ntOS( <x> ), Str( <x> ) )
|
||||
|
||||
#xuntranslate NetName( =>
|
||||
#xuntranslate MemoWrit( =>
|
||||
@@ -288,14 +287,14 @@
|
||||
#xuntranslate AIns( =>
|
||||
#xuntranslate ADel( =>
|
||||
|
||||
#xtranslate AIns(<a>,<n>,[<x,...>]) => hb_AIns( <a>, <n>, <x> )
|
||||
#xtranslate ADel(<a>,<n>,<l>) => hb_ADel( <a>, <n>, <l> )
|
||||
#xtranslate AIns( <a>, <n>, [<x,...>] ) => hb_AIns( <a>, <n>, <x> )
|
||||
#xtranslate ADel( <a>, <n>, <l> ) => hb_ADel( <a>, <n>, <l> )
|
||||
|
||||
#xtranslate AScan(<a>,<b>,[<c>],[<d>],<e>) => hb_AScan( <a>, <b>, <c>, <d>, <e> )
|
||||
#xtranslate At(<a>,<b>,[<x,...>]) => hb_At( <a>, <b>, <x> )
|
||||
#xtranslate At( <a>, <b>, [<x,...>] ) => hb_At( <a>, <b>, <x> )
|
||||
|
||||
#xtranslate GetEnv([<x,...>]) => hb_GetEnv( <x> )
|
||||
#xtranslate SetKey([<x,...>]) => hb_SetKey( <x> )
|
||||
#xtranslate GetEnv( [<x,...>] ) => hb_GetEnv( <x> )
|
||||
#xtranslate SetKey( [<x,...>] ) => hb_SetKey( <x> )
|
||||
|
||||
/* TEXT INTO <varname> */
|
||||
#xcommand TEXT INTO <v> => #pragma __text|<v>+=%s+hb_eol();<v>:=""
|
||||
@@ -304,7 +303,7 @@
|
||||
#xcommand DEFAULT => OTHERWISE
|
||||
|
||||
/* FOR EACH hb_enumIndex() */
|
||||
#xtranslate hb_enumIndex(<!v!>) => <v>:__enumIndex()
|
||||
#xtranslate hb_enumIndex( <!v!> ) => <v>:__enumIndex()
|
||||
|
||||
/* TRY / CATCH / FINALLY / END */
|
||||
#xcommand TRY => BEGIN SEQUENCE WITH {| oErr | Break( oErr ) }
|
||||
@@ -316,20 +315,20 @@
|
||||
#xcommand > [<*x*>] => } <x>
|
||||
|
||||
/* xHarbour operators: IN, HAS, LIKE, >>, <<, |, &, ^^ */
|
||||
#translate ( <exp1> IN <exp2> ) => ( (<exp1>) $ (<exp2>) )
|
||||
#translate ( <exp1> HAS <exp2> ) => ( HB_REGEXHAS( (<exp2>), (<exp1>) ) )
|
||||
#translate ( <exp1> LIKE <exp2> ) => ( HB_REGEXLIKE( (<exp2>), (<exp1>) ) )
|
||||
#translate ( <exp1> \<\< <exp2> ) => ( HB_BITSHIFT( (<exp1>), (<exp2>) ) )
|
||||
#translate ( <exp1> >> <exp2> ) => ( HB_BITSHIFT( (<exp1>), -(<exp2>) ) )
|
||||
#translate ( <exp1> IN <exp2> ) => ( ( <exp1> ) $ ( <exp2> ) )
|
||||
#translate ( <exp1> HAS <exp2> ) => ( hb_regexHas( ( <exp2> ), ( <exp1> ) ) )
|
||||
#translate ( <exp1> LIKE <exp2> ) => ( hb_regexLike( ( <exp2> ), ( <exp1> ) ) )
|
||||
#translate ( <exp1> \<\< <exp2> ) => ( hb_bitShift( ( <exp1> ), ( <exp2> ) ) )
|
||||
#translate ( <exp1> >> <exp2> ) => ( hb_bitShift( ( <exp1> ), -( <exp2> ) ) )
|
||||
/* NOTE: These macros can break some valid Harbour/Clipper constructs,
|
||||
so they are disabled by default. Enable them with care, or
|
||||
even better to switch to use HB_BIT*() functions directly.
|
||||
They are optimized by Harbour compiler the same way (and even
|
||||
more) as these C-like operators, without any bad side-effects. */
|
||||
#if defined( XHB_BITOP )
|
||||
#translate ( <exp1> | <exp2> ) => ( HB_BITOR( (<exp1>), (<exp2>) ) )
|
||||
#translate ( <exp1> & <exp2> ) => ( HB_BITAND( (<exp1>), (<exp2>) ) )
|
||||
#translate ( <exp1> ^^ <exp2> ) => ( HB_BITXOR( (<exp1>), (<exp2>) ) )
|
||||
#translate ( <exp1> | <exp2> ) => ( hb_bitOr( ( <exp1> ), ( <exp2> ) ) )
|
||||
#translate ( <exp1> & <exp2> ) => ( hb_bitAnd( ( <exp1> ), ( <exp2> ) ) )
|
||||
#translate ( <exp1> ^^ <exp2> ) => ( hb_bitXor( ( <exp1> ), ( <exp2> ) ) )
|
||||
#endif
|
||||
|
||||
#command @ <row>, <col> PROMPT <prompt> [ MESSAGE <msg> ] [ COLOR <color> ] => ;
|
||||
@@ -344,61 +343,61 @@
|
||||
|
||||
#xtranslate gtSetClipboard( <x> ) => hb_gtInfo( HB_GTI_CLIPBOARDDATA, <x> )
|
||||
#xtranslate gtGetClipboard() => hb_gtInfo( HB_GTI_CLIPBOARDDATA )
|
||||
#xtranslate gtGetClipBoardSize() => Len( hb_gtInfo( HB_GTI_CLIPBOARDDATA ) )
|
||||
#xtranslate gtPasteClipBoard() => hb_gtInfo( HB_GTI_CLIPBOARDPASTE )
|
||||
#xtranslate gtGetClipboardSize() => Len( hb_gtInfo( HB_GTI_CLIPBOARDDATA ) )
|
||||
#xtranslate gtPasteClipboard() => hb_gtInfo( HB_GTI_CLIPBOARDPASTE )
|
||||
#xtranslate gtProcessMessages() => NextKey()
|
||||
#xtranslate SetInkeyBeforeBlock([<x>]) => hb_gtInfo( HB_GTI_INKEYREAD [, <x>] ) <-x->
|
||||
#xtranslate SetInkeyAfterBlock([<x>]) => hb_gtInfo( HB_GTI_INKEYFILTER [, <x>] ) <-x->
|
||||
#xtranslate gfxPrimitive([<x,...>]) => hb_gfxPrimitive( <x> )
|
||||
#xtranslate gfxText([<x,...>]) => hb_gfxText( <x> )
|
||||
#xtranslate SetInkeyBeforeBlock( [<x>] ) => hb_gtInfo( HB_GTI_INKEYREAD [, <x>] ) <-x->
|
||||
#xtranslate SetInkeyAfterBlock( [<x>] ) => hb_gtInfo( HB_GTI_INKEYFILTER [, <x>] ) <-x->
|
||||
#xtranslate GfxPrimitive( [<x,...>] ) => hb_gfxPrimitive( <x> )
|
||||
#xtranslate GfxText( [<x,...>] ) => hb_gfxText( <x> )
|
||||
|
||||
#xtranslate hb_openProcess([<x,...>]) => hb_processOpen( <x> )
|
||||
#xtranslate hb_closeProcess([<x,...>]) => hb_processClose( <x> )
|
||||
#xtranslate hb_OpenProcess( [<x,...>] ) => hb_processOpen( <x> )
|
||||
#xtranslate hb_CloseProcess( [<x,...>] ) => hb_processClose( <x> )
|
||||
|
||||
#xtranslate hb_isregexstring([<x>]) => hb_isregex( <x> )
|
||||
#xtranslate methodName([<x,...>]) => hb_methodName( <x> )
|
||||
#xtranslate libLoad([<x,...>]) => hb_libLoad( <x> )
|
||||
#xtranslate libFree([<x,...>]) => hb_libFree( <x> )
|
||||
#xtranslate hb_checksum([<x,...>]) => hb_adler32( <x> )
|
||||
#xtranslate setLastKey([<x,...>]) => hb_keySetLast( <x> )
|
||||
#xtranslate CStr([<x,...>]) => hb_CStr( <x> )
|
||||
#xtranslate ValToPrgExp([<x,...>]) => hb_valToExp( <x> )
|
||||
#xtranslate SecondsSleep([<x,...>]) => hb_idleSleep( <x> )
|
||||
#xtranslate WildMatch([<x,...>]) => hb_WildMatch( <x> )
|
||||
#xtranslate hb_bitIsSet([<x,...>]) => hb_bitTest( <x> )
|
||||
#xtranslate hb_DeserialNext(<x>) => hb_Deserialize( <x> )
|
||||
#xtranslate hb_funcptr(<x>) => __dynsn2sym( <x> )
|
||||
#xtranslate hb_IsRegexString( [<x>] ) => hb_IsRegex( <x> )
|
||||
#xtranslate MethodName( [<x,...>] ) => hb_MethodName( <x> )
|
||||
#xtranslate LibLoad( [<x,...>] ) => hb_libLoad( <x> )
|
||||
#xtranslate LibFree( [<x,...>] ) => hb_libFree( <x> )
|
||||
#xtranslate hb_Checksum( [<x,...>] ) => hb_Adler32( <x> )
|
||||
#xtranslate hb_SetLastKey( [<x,...>] ) => hb_keySetLast( <x> )
|
||||
#xtranslate CStr( [<x,...>] ) => hb_CStr( <x> )
|
||||
#xtranslate ValToPrgExp( [<x,...>] ) => hb_ValToExp( <x> )
|
||||
#xtranslate SecondsSleep( [<x,...>] ) => hb_idleSleep( <x> )
|
||||
#xtranslate WildMatch( [<x,...>] ) => hb_WildMatch( <x> )
|
||||
#xtranslate hb_bitIsSet( [<x,...>] ) => hb_bitTest( <x> )
|
||||
#xtranslate hb_DeserialNext( <x> ) => hb_Deserialize( <x> )
|
||||
#xtranslate hb_FuncPtr( <x> ) => __dynSN2Sym( <x> )
|
||||
|
||||
#xtranslate HexToNum([<c,...>]) => hb_HexToNum( <c> )
|
||||
#xtranslate NumToHex([<n,...>]) => hb_NumToHex( <n> )
|
||||
#xtranslate HexToStr([<c,...>]) => hb_HexToStr( <c> )
|
||||
#xtranslate StrToHex([<c,...>]) => hb_StrToHex( <c> )
|
||||
#xtranslate HexToNum( [<c,...>] ) => hb_HexToNum( <c> )
|
||||
#xtranslate NumToHex( [<n,...>] ) => hb_NumToHex( <n> )
|
||||
#xtranslate HexToStr( [<c,...>] ) => hb_HexToStr( <c> )
|
||||
#xtranslate StrToHex( [<c,...>] ) => hb_StrToHex( <c> )
|
||||
|
||||
#xtranslate ISPOINTER( <xValue> ) => hb_ISPOINTER( <xValue> )
|
||||
#xtranslate IsPointer( <xValue> ) => HB_ISPOINTER( <xValue> )
|
||||
|
||||
#xtranslate hb_SetIniComment([<x,...>]) => hb_IniSetComment( <x> )
|
||||
#xtranslate hb_ReadIni([<x,...>]) => hb_IniRead( <x> )
|
||||
#xtranslate hb_WriteIni([<x,...>]) => hb_IniWrite( <x> )
|
||||
#xtranslate hb_SetIniComment( [<x,...>] ) => hb_iniSetComment( <x> )
|
||||
#xtranslate hb_ReadIni( [<x,...>] ) => hb_iniRead( <x> )
|
||||
#xtranslate hb_WriteIni( [<x,...>] ) => hb_iniWrite( <x> )
|
||||
|
||||
#xtranslate DisableWaitLocks([<x>]) => hb_DisableWaitLocks( <x> )
|
||||
#xtranslate DisableWaitLocks( [<x>] ) => hb_DisableWaitLocks( <x> )
|
||||
|
||||
#xtranslate HBCONSOLELOCK() => hb_gtLock()
|
||||
#xtranslate HBCONSOLEUNLOCK() => hb_gtUnLock()
|
||||
#xtranslate hbConsoleLock() => hb_gtLock()
|
||||
#xtranslate hbConsoleUnLock() => hb_gtUnLock()
|
||||
|
||||
#xtranslate hb_CMDARGARGV([<x,...>]) => hb_ARGV( <x> )
|
||||
#xtranslate hb_CmdArgArgV( [<x,...>] ) => hb_argv( <x> )
|
||||
|
||||
#xtranslate RAScan([<x,...>]) => hb_RAScan( <x> )
|
||||
#xtranslate RAScan( [<x,...>] ) => hb_RAScan( <x> )
|
||||
|
||||
#xtranslate AsizeAlloc( <a> [, <n,...>] ) => AFill( <a> )
|
||||
#xtranslate ASizeAlloc( <a> [, <n,...>] ) => AFill( <a> )
|
||||
#xtranslate ALenAlloc( <a> [, <n,...>] ) => Len( <a> )
|
||||
|
||||
#xtranslate DateTime([<x,...>]) => hb_DateTime( <x> )
|
||||
#xtranslate Hour([<x>]) => hb_Hour( <x> )
|
||||
#xtranslate Minute([<x>]) => hb_Minute( <x> )
|
||||
#xtranslate TToS([<x>]) => hb_TToS( <x> )
|
||||
#xtranslate SToT([<x>]) => hb_SToT( <x> )
|
||||
#xtranslate TToC([<x,...>]) => hb_TToC( <x> )
|
||||
#xtranslate CToT([<x,...>]) => hb_CToT( <x> )
|
||||
#xtranslate DateTime( [<x,...>] ) => hb_DateTime( <x> )
|
||||
#xtranslate Hour( [<x>] ) => hb_Hour( <x> )
|
||||
#xtranslate Minute( [<x>] ) => hb_Minute( <x> )
|
||||
#xtranslate TToS( [<x>] ) => hb_TToS( <x> )
|
||||
#xtranslate SToT( [<x>] ) => hb_SToT( <x> )
|
||||
#xtranslate TToC( [<x,...>] ) => hb_TToC( <x> )
|
||||
#xtranslate CToT( [<x,...>] ) => hb_CToT( <x> )
|
||||
|
||||
#xtranslate i18n( <x> ) => hb_i18n_gettext( <x> )
|
||||
|
||||
@@ -407,10 +406,10 @@
|
||||
/* MT functions */
|
||||
#xtranslate hb_MultiThread() => hb_mtvm()
|
||||
#xtranslate GetCurrentThread() => hb_threadSelf()
|
||||
#xtranslate GetThreadId( [<x,...>] ) => hb_threadId( <x> )
|
||||
#xtranslate ThreadGetCurrentInternal() => hb_threadId()
|
||||
#xtranslate IsSameThread( <x> [,<y>] ) => ( hb_threadId( <x> ) == hb_threadId( <y> ) )
|
||||
#xtranslate IsValidThread( <x> ) => ( hb_threadId( <x> ) != 0 )
|
||||
#xtranslate GetThreadId( [<x,...>] ) => hb_threadID( <x> )
|
||||
#xtranslate ThreadGetCurrentInternal() => hb_threadID()
|
||||
#xtranslate IsSameThread( <x> [,<y>] ) => ( hb_threadID( <x> ) == hb_threadID( <y> ) )
|
||||
#xtranslate IsValidThread( <x> ) => ( hb_threadID( <x> ) != 0 )
|
||||
#xtranslate JoinThread( <x> ) => hb_threadJoin( <x> )
|
||||
#xtranslate KillThread( <x> ) => hb_threadQuitRequest( <x> )
|
||||
#xtranslate StopThread( <x> ) => hb_threadQuitRequest( <x> ); hb_threadJoin( <x> )
|
||||
@@ -441,21 +440,21 @@
|
||||
|
||||
#xtranslate StartThread( [<x>] ) => hb_threadStart( <x> )
|
||||
#xtranslate StartThread( <x>, <y> [, <z,...>] ) => iif( HB_ISOBJECT( <x> ) .AND. HB_ISSTRING( <y> ), ;
|
||||
hb_threadStart( {| ... | (<x>):&(<y>)( ... ) } [, <z>] ), ;
|
||||
hb_threadStart( {| ... | ( <x> ):&( <y> )( ... ) } [, <z>] ), ;
|
||||
hb_threadStart( <x>, <y> [, <z>] ) )
|
||||
|
||||
/* not possible to well replicate xHarbour behavior because it's buggy
|
||||
these function results are different on different platform, chosen
|
||||
translation which returns compatible types (numeric) */
|
||||
#xtranslate ThreadGetCurrent() => hb_threadId()
|
||||
#xtranslate GetSystemThreadId( [<x,...>] ) => hb_threadId( <x> )
|
||||
#xtranslate ThreadGetCurrent() => hb_threadID()
|
||||
#xtranslate GetSystemThreadId( [<x,...>] ) => hb_threadID( <x> )
|
||||
|
||||
/* do not need translation */
|
||||
/* hb_MutexCreate() => hb_mutexCreate() */
|
||||
/* hb_MutexUnlock( <x> ) => hb_mutexUnlock( <x> ) */
|
||||
/* hb_mutexCreate() => hb_mutexCreate() */
|
||||
/* hb_mutexUnLock( <x> ) => hb_mutexUnLock( <x> ) */
|
||||
|
||||
/* do not need translation only when xHarbour code is compiled by Harbour */
|
||||
/* hb_MutexLock( <x> ) => hb_mutexLock( <x> ) */
|
||||
/* hb_mutexLock( <x> ) => hb_mutexLock( <x> ) */
|
||||
|
||||
/* functions I do not want to document as public .prg API in Harbour */
|
||||
/* ThreadInspect() */
|
||||
@@ -470,96 +469,96 @@
|
||||
/* hb_ThreadCountStacks() */
|
||||
|
||||
/* Hash item functions */
|
||||
#xtranslate HASH([<x,...>]) => hb_HASH( <x> )
|
||||
#xtranslate HHASKEY([<x,...>]) => hb_HHASKEY( <x> )
|
||||
#xtranslate HGETPOS([<x,...>]) => hb_HPOS( <x> )
|
||||
#xtranslate HGET([<x,...>]) => hb_HGET( <x> )
|
||||
#xtranslate HSET([<x,...>]) => hb_HSET( <x> )
|
||||
#xtranslate HDEL([<x,...>]) => hb_HDEL( <x> )
|
||||
#xtranslate HGETKEYAT([<x,...>]) => hb_HKEYAT( <x> )
|
||||
#xtranslate HGETVALUEAT([<x,...>]) => hb_HVALUEAT( <x> )
|
||||
#xtranslate HSETVALUEAT([<x,...>]) => hb_HVALUEAT( <x> )
|
||||
#xtranslate HGETPAIRAT([<x,...>]) => hb_HPAIRAT( <x> )
|
||||
#xtranslate HDELAT([<x,...>]) => hb_HDELAT( <x> )
|
||||
#xtranslate HGETKEYS([<x,...>]) => hb_HKEYS( <x> )
|
||||
#xtranslate HGETVALUES([<x,...>]) => hb_HVALUES( <x> )
|
||||
#xtranslate HFILL([<x,...>]) => hb_HFILL( <x> )
|
||||
#xtranslate HCLONE([<x,...>]) => hb_HCLONE( <x> )
|
||||
#xtranslate HCOPY([<x,...>]) => hb_HCOPY( <x> )
|
||||
#xtranslate HMERGE([<x,...>]) => hb_HMERGE( <x> )
|
||||
#xtranslate HEVAL([<x,...>]) => hb_HEVAL( <x> )
|
||||
#xtranslate HSCAN([<x,...>]) => hb_HSCAN( <x> )
|
||||
#xtranslate HSETCASEMATCH([<x,...>]) => hb_HSETCASEMATCH( <x> )
|
||||
#xtranslate HGETCASEMATCH([<x,...>]) => hb_HCASEMATCH( <x> )
|
||||
#xtranslate HSETAUTOADD([<x,...>]) => hb_HSETAUTOADD( <x> )
|
||||
#xtranslate HGETAUTOADD([<x,...>]) => hb_HAUTOADD( <x> )
|
||||
#xtranslate HALLOCATE([<x,...>]) => hb_HALLOCATE( <x> )
|
||||
#xtranslate HDEFAULT([<x,...>]) => hb_HDEFAULT( <x> )
|
||||
#xtranslate HSETPARTITION([<x,...>]) =>
|
||||
#xtranslate Hash( [<x,...>] ) => hb_Hash( <x> )
|
||||
#xtranslate HHasKey( [<x,...>] ) => hb_HHasKey( <x> )
|
||||
#xtranslate HGetPos( [<x,...>] ) => hb_HPos( <x> )
|
||||
#xtranslate HGet( [<x,...>] ) => hb_HGet( <x> )
|
||||
#xtranslate HSet( [<x,...>] ) => hb_HSet( <x> )
|
||||
#xtranslate HDel( [<x,...>] ) => hb_HDel( <x> )
|
||||
#xtranslate HGetKeyAt( [<x,...>] ) => hb_HKeyAt( <x> )
|
||||
#xtranslate HGetValueAt( [<x,...>] ) => hb_HValueAt( <x> )
|
||||
#xtranslate HSetValueAt( [<x,...>] ) => hb_HValueAt( <x> )
|
||||
#xtranslate HGetPaiRAt( [<x,...>] ) => hb_HPaiRAt( <x> )
|
||||
#xtranslate HDelAt( [<x,...>] ) => hb_HDelAt( <x> )
|
||||
#xtranslate HGetKeys( [<x,...>] ) => hb_HKeys( <x> )
|
||||
#xtranslate HGetValues( [<x,...>] ) => hb_HValues( <x> )
|
||||
#xtranslate HFill( [<x,...>] ) => hb_HFill( <x> )
|
||||
#xtranslate HClone( [<x,...>] ) => hb_HClone( <x> )
|
||||
#xtranslate HCopy( [<x,...>] ) => hb_HCopy( <x> )
|
||||
#xtranslate HMerge( [<x,...>] ) => hb_HMerge( <x> )
|
||||
#xtranslate HEVal( [<x,...>] ) => hb_HEVal( <x> )
|
||||
#xtranslate HScan( [<x,...>] ) => hb_HScan( <x> )
|
||||
#xtranslate HSetCaseMatch( [<x,...>] ) => hb_HSetCaseMatch( <x> )
|
||||
#xtranslate HGetCaseMatch( [<x,...>] ) => hb_HCaseMatch( <x> )
|
||||
#xtranslate HSetAutoAdd( [<x,...>] ) => hb_HSetAutoAdd( <x> )
|
||||
#xtranslate HGetAutoAdd( [<x,...>] ) => hb_HAutoAdd( <x> )
|
||||
#xtranslate HAllocate( [<x,...>] ) => hb_HAllocate( <x> )
|
||||
#xtranslate HDefault( [<x,...>] ) => hb_HDefault( <x> )
|
||||
#xtranslate HSetPartition( [<x,...>] ) =>
|
||||
|
||||
/* Associative hash array functions */
|
||||
#xtranslate HAAGETKEYAT([<x,...>]) => hb_HKEYAT( <x> )
|
||||
#xtranslate HAAGETVALUEAT([<x,...>]) => hb_HVALUEAT( <x> )
|
||||
#xtranslate HAADELAT([<x,...>]) => hb_HDELAT( <x> )
|
||||
#xtranslate HAAGETPOS([<x,...>]) => hb_HPOS( <x> )
|
||||
#xtranslate HAAGETREALPOS(<x>,<y>) => iif( HB_ISNUMERIC( <y> ) .AND. <y> >= 1 .AND. ;
|
||||
int( <y> ) <= len( <x> ), int( <y> ), 0 )
|
||||
#xtranslate HGETVAAPOS(<x>) => {| h | ;;
|
||||
local a := array( len( h ), v ;;
|
||||
for each v in a ;;
|
||||
#xtranslate haAGetKeyAt( [<x,...>] ) => hb_HKeyAt( <x> )
|
||||
#xtranslate haAGetValueAt( [<x,...>] ) => hb_HValueAt( <x> )
|
||||
#xtranslate haADelAt( [<x,...>] ) => hb_HDelAt( <x> )
|
||||
#xtranslate haAGetPos( [<x,...>] ) => hb_HPos( <x> )
|
||||
#xtranslate haAGetRealPos( <x>, <y> ) => iif( HB_ISNUMERIC( <y> ) .AND. <y> >= 1 .AND. ;
|
||||
Int( <y> ) <= Len( <x> ), Int( <y> ), 0 )
|
||||
#xtranslate HGetVaaPos( <x> ) => {| h | ;;
|
||||
LOCAL a := Array( Len( h ), v ;;
|
||||
FOR EACH v IN a ;;
|
||||
v := v:__enumIndex() ;;
|
||||
next ;;
|
||||
return a ; }:eval( <x> )
|
||||
#xtranslate HGETAACOMPATIBILITY(<x>) => hb_HKEEPORDER( <x> )
|
||||
#xtranslate HSETAACOMPATIBILITY([<x,...>]) => {| h | ;;
|
||||
hb_HKEEPORDER( h ) ;;
|
||||
return .T. ; }:eval( <x> )
|
||||
NEXT ;;
|
||||
RETURN a ; }:eval( <x> )
|
||||
#xtranslate HGetAACompatibility( <x> ) => hb_HKeepOrder( <x> )
|
||||
#xtranslate HSetAACompatibility( [<x,...>] ) => {| h | ;;
|
||||
hb_HKeepOrder( h ) ;;
|
||||
RETURN .T. ; }:eval( <x> )
|
||||
|
||||
/* Inet functions */
|
||||
#xtranslate INETINIT([<x,...>]) => hb_INETINIT( <x> )
|
||||
#xtranslate INETCLEANUP([<x,...>]) => hb_INETCLEANUP( <x> )
|
||||
#xtranslate INETCREATE([<x,...>]) => hb_INETCREATE( <x> )
|
||||
#xtranslate INETCLOSE([<x,...>]) => hb_INETCLOSE( <x> )
|
||||
#xtranslate INETFD([<x,...>]) => hb_INETFD( <x> )
|
||||
#xtranslate INETSTATUS([<x,...>]) => hb_INETSTATUS( <x> )
|
||||
#xtranslate INETERRORCODE([<x,...>]) => hb_INETERRORCODE( <x> )
|
||||
#xtranslate INETERRORDESC([<x,...>]) => hb_INETERRORDESC( <x> )
|
||||
#xtranslate INETCLEARERROR([<x,...>]) => hb_INETCLEARERROR( <x> )
|
||||
#xtranslate INETCOUNT([<x,...>]) => hb_INETCOUNT( <x> )
|
||||
#xtranslate INETADDRESS([<x,...>]) => hb_INETADDRESS( <x> )
|
||||
#xtranslate INETPORT([<x,...>]) => hb_INETPORT( <x> )
|
||||
#xtranslate INETSETTIMEOUT([<x,...>]) => hb_INETTIMEOUT( <x> )
|
||||
#xtranslate INETGETTIMEOUT([<x,...>]) => hb_INETTIMEOUT( <x> )
|
||||
#xtranslate INETCLEARTIMEOUT([<x,...>]) => hb_INETCLEARTIMEOUT( <x> )
|
||||
#xtranslate INETSETTIMELIMIT([<x,...>]) => hb_INETTIMELIMIT( <x> )
|
||||
#xtranslate INETGETTIMELIMIT([<x,...>]) => hb_INETTIMELIMIT( <x> )
|
||||
#xtranslate INETCLEARTIMELIMIT([<x,...>]) => hb_INETCLEARTIMELIMIT( <x> )
|
||||
#xtranslate INETSETPERIODCALLBACK([<x,...>]) => hb_INETPERIODCALLBACK( <x> )
|
||||
#xtranslate INETGETPERIODCALLBACK([<x,...>]) => hb_INETPERIODCALLBACK( <x> )
|
||||
#xtranslate INETCLEARPERIODCALLBACK([<x,...>]) => hb_INETCLEARPERIODCALLBACK( <x> )
|
||||
#xtranslate INETRECV([<x,...>]) => hb_INETRECV( <x> )
|
||||
#xtranslate INETRECVALL([<x,...>]) => hb_INETRECVALL( <x> )
|
||||
#xtranslate INETRECVLINE([<x,...>]) => hb_INETRECVLINE( <x> )
|
||||
#xtranslate INETRECVENDBLOCK([<x,...>]) => hb_INETRECVENDBLOCK( <x> )
|
||||
#xtranslate INETDATAREADY([<x,...>]) => hb_INETDATAREADY( <x> )
|
||||
#xtranslate INETSEND([<x,...>]) => hb_INETSEND( <x> )
|
||||
#xtranslate INETSENDALL([<x,...>]) => hb_INETSENDALL( <x> )
|
||||
#xtranslate INETGETHOSTS([<x,...>]) => hb_INETGETHOSTS( <x> )
|
||||
#xtranslate INETGETALIAS([<x,...>]) => hb_INETGETALIAS( <x> )
|
||||
#xtranslate INETSERVER([<x,...>]) => hb_INETSERVER( <x> )
|
||||
#xtranslate INETACCEPT([<x,...>]) => hb_INETACCEPT( <x> )
|
||||
#xtranslate INETCONNECT([<x,...>]) => hb_INETCONNECT( <x> )
|
||||
#xtranslate INETCONNECTIP([<x,...>]) => hb_INETCONNECTIP( <x> )
|
||||
#xtranslate INETDGRAMBIND([<x,...>]) => hb_INETDGRAMBIND( <x> )
|
||||
#xtranslate INETDGRAM([<x,...>]) => hb_INETDGRAM( <x> )
|
||||
#xtranslate INETDGRAMSEND([<x,...>]) => hb_INETDGRAMSEND( <x> )
|
||||
#xtranslate INETDGRAMRECV([<x,...>]) => hb_INETDGRAMRECV( <x> )
|
||||
#xtranslate INETCRLF([<x,...>]) => hb_INETCRLF( <x> )
|
||||
#xtranslate INETISSOCKET([<x,...>]) => hb_INETISSOCKET( <x> )
|
||||
#xtranslate INETDESTROY([<x,...>]) => iif( HB_INETISSOCKET( <x> ), hb_INETCLOSE( <x> ), )
|
||||
#xtranslate inetInit( [<x,...>] ) => hb_inetInit( <x> )
|
||||
#xtranslate inetCleanup( [<x,...>] ) => hb_inetCleanup( <x> )
|
||||
#xtranslate inetCreate( [<x,...>] ) => hb_inetCreate( <x> )
|
||||
#xtranslate inetClose( [<x,...>] ) => hb_inetClose( <x> )
|
||||
#xtranslate inetFD( [<x,...>] ) => hb_inetFD( <x> )
|
||||
#xtranslate inetStatus( [<x,...>] ) => hb_inetstatus( <x> )
|
||||
#xtranslate inetErrorCode( [<x,...>] ) => hb_inetErrorCode( <x> )
|
||||
#xtranslate inetErrorDesc( [<x,...>] ) => hb_inetErrorDesc( <x> )
|
||||
#xtranslate inetClearError( [<x,...>] ) => hb_inetClearError( <x> )
|
||||
#xtranslate inetCount( [<x,...>] ) => hb_inetCount( <x> )
|
||||
#xtranslate inetAddress( [<x,...>] ) => hb_inetAddress( <x> )
|
||||
#xtranslate inetPort( [<x,...>] ) => hb_inetPort( <x> )
|
||||
#xtranslate inetSetTimeout( [<x,...>] ) => hb_inetTimeout( <x> )
|
||||
#xtranslate inetGetTimeout( [<x,...>] ) => hb_inetTimeout( <x> )
|
||||
#xtranslate inetClearTimeout( [<x,...>] ) => hb_inetClearTimeout( <x> )
|
||||
#xtranslate inetSetTimeLimit( [<x,...>] ) => hb_inetTimeLimit( <x> )
|
||||
#xtranslate inetGetTimeLimit( [<x,...>] ) => hb_inetTimeLimit( <x> )
|
||||
#xtranslate inetClearTimeLimit( [<x,...>] ) => hb_inetClearTimeLimit( <x> )
|
||||
#xtranslate inetSetPeriodCallback( [<x,...>] ) => hb_inetPeriodCallback( <x> )
|
||||
#xtranslate inetGetPeriodCallback( [<x,...>] ) => hb_inetPeriodCallback( <x> )
|
||||
#xtranslate inetClearPeriodCallback( [<x,...>] ) => hb_inetClearPeriodCallback( <x> )
|
||||
#xtranslate inetRecv( [<x,...>] ) => hb_inetRecv( <x> )
|
||||
#xtranslate inetRecvAll( [<x,...>] ) => hb_inetRecvAll( <x> )
|
||||
#xtranslate inetRecvLine( [<x,...>] ) => hb_inetRecvLine( <x> )
|
||||
#xtranslate inetRecvEndBlock( [<x,...>] ) => hb_inetRecvEndbLock( <x> )
|
||||
#xtranslate inetDataReady( [<x,...>] ) => hb_inetDataReady( <x> )
|
||||
#xtranslate inetSend( [<x,...>] ) => hb_inetSend( <x> )
|
||||
#xtranslate inetSendAll( [<x,...>] ) => hb_inetSendAll( <x> )
|
||||
#xtranslate inetGetHosts( [<x,...>] ) => hb_inetGetHosts( <x> )
|
||||
#xtranslate inetGetAlias( [<x,...>] ) => hb_inetGetAlias( <x> )
|
||||
#xtranslate inetServer( [<x,...>] ) => hb_inetServer( <x> )
|
||||
#xtranslate inetAccept( [<x,...>] ) => hb_inetAccept( <x> )
|
||||
#xtranslate inetConnect( [<x,...>] ) => hb_inetConnect( <x> )
|
||||
#xtranslate inetConnectIP( [<x,...>] ) => hb_inetConnectIP( <x> )
|
||||
#xtranslate inetDGramBind( [<x,...>] ) => hb_inetDGramBind( <x> )
|
||||
#xtranslate inetDGram( [<x,...>] ) => hb_inetDGram( <x> )
|
||||
#xtranslate inetDGramSend( [<x,...>] ) => hb_inetDGramSend( <x> )
|
||||
#xtranslate inetDGramRecv( [<x,...>] ) => hb_inetDGramRecv( <x> )
|
||||
#xtranslate inetCRLF( [<x,...>] ) => hb_inetCRLF( <x> )
|
||||
#xtranslate inetIsSocket( [<x,...>] ) => hb_inetIsSocket( <x> )
|
||||
#xtranslate inetDestroy( [<x,...>] ) => iif( hb_inetIsSocket( <x> ), hb_inetClose( <x> ), )
|
||||
|
||||
/* THROW => generate error */
|
||||
#xtranslate THROW( <oErr> ) => ( Eval( ErrorBlock(), <oErr> ), Break( <oErr> ) )
|
||||
#xtranslate Throw( <oErr> ) => ( Eval( ErrorBlock(), <oErr> ), Break( <oErr> ) )
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -50,40 +50,40 @@
|
||||
*/
|
||||
|
||||
#ifndef __HBCTYPES_CH_
|
||||
#define __HBCTYPES_CH_
|
||||
#define __HBCTYPES_CH_
|
||||
|
||||
#define CTYPE_VOID 0
|
||||
#define CTYPE_VOID 0
|
||||
|
||||
#define CTYPE_CHAR 1
|
||||
#define CTYPE_UNSIGNED_CHAR -1
|
||||
#define CTYPE_CHAR_PTR 10
|
||||
#define CTYPE_UNSIGNED_CHAR_PTR -10
|
||||
#define CTYPE_CHAR 1
|
||||
#define CTYPE_UNSIGNED_CHAR -1
|
||||
#define CTYPE_CHAR_PTR 10
|
||||
#define CTYPE_UNSIGNED_CHAR_PTR -10
|
||||
|
||||
#define CTYPE_SHORT 2
|
||||
#define CTYPE_UNSIGNED_SHORT -2
|
||||
#define CTYPE_SHORT_PTR 20
|
||||
#define CTYPE_UNSIGNED_SHORT_PTR -20
|
||||
#define CTYPE_SHORT 2
|
||||
#define CTYPE_UNSIGNED_SHORT -2
|
||||
#define CTYPE_SHORT_PTR 20
|
||||
#define CTYPE_UNSIGNED_SHORT_PTR -20
|
||||
|
||||
#define CTYPE_INT 3
|
||||
#define CTYPE_UNSIGNED_INT -3
|
||||
#define CTYPE_INT_PTR 30
|
||||
#define CTYPE_UNSIGNED_INT_PTR -30
|
||||
#define CTYPE_INT 3
|
||||
#define CTYPE_UNSIGNED_INT -3
|
||||
#define CTYPE_INT_PTR 30
|
||||
#define CTYPE_UNSIGNED_INT_PTR -30
|
||||
|
||||
#define CTYPE_LONG 4
|
||||
#define CTYPE_UNSIGNED_LONG -4
|
||||
#define CTYPE_LONG_PTR 40
|
||||
#define CTYPE_UNSIGNED_LONG_PTR -40
|
||||
#define CTYPE_LONG 4
|
||||
#define CTYPE_UNSIGNED_LONG -4
|
||||
#define CTYPE_LONG_PTR 40
|
||||
#define CTYPE_UNSIGNED_LONG_PTR -40
|
||||
|
||||
#define CTYPE_FLOAT 5
|
||||
#define CTYPE_FLOAT_PTR 50
|
||||
#define CTYPE_FLOAT 5
|
||||
#define CTYPE_FLOAT_PTR 50
|
||||
|
||||
#define CTYPE_DOUBLE 6
|
||||
#define CTYPE_DOUBLE_PTR 60
|
||||
#define CTYPE_DOUBLE 6
|
||||
#define CTYPE_DOUBLE_PTR 60
|
||||
|
||||
#define CTYPE_VOID_PTR 7
|
||||
#define CTYPE_VOID_PTR 7
|
||||
|
||||
/* _Must_ be smaller than CTYPE_STRUCTURE_PTR */
|
||||
#define CTYPE_STRUCTURE 1000
|
||||
#define CTYPE_STRUCTURE_PTR 10000
|
||||
/* _Must_ be smaller than CTYPE_STRUCTURE_PTR */
|
||||
#define CTYPE_STRUCTURE 1000
|
||||
#define CTYPE_STRUCTURE_PTR 10000
|
||||
|
||||
#endif /* __HBCTYPES_CH_ */
|
||||
|
||||
@@ -74,10 +74,10 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, iif( <.CallConvention.>, <CallConvention>, DC_CALL_STD ), iif( <.DllFuncName.>, #<DllFuncName>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
IF <.ArgName.>;;
|
||||
RETURN DllExecuteCall( t_cTemplate, <ArgName> [, <ArgNameN>] );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate )
|
||||
|
||||
#xcommand IMPORT [<Qualifier: STATIC>] [<CallConvention: 0x0000, 0x0001, 0x0010, 0x0020, 0x0100, 0x0200> ] ;
|
||||
@@ -86,10 +86,10 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, iif( <.CallConvention.>, <CallConvention>, DC_CALL_STD ), iif( <.DllFuncName.>, #<DllFuncName>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
IF <.ArgName.>;;
|
||||
RETURN DllExecuteCall( t_cTemplate, <ArgName> [, <ArgNameN>] );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate )
|
||||
|
||||
|
||||
@@ -99,10 +99,10 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, iif( <.CallConvention.>, <CallConvention>, DC_CALL_STD ), iif( <.DllFuncName.>, #<DllFuncName>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
IF <.ArgName.>;;
|
||||
RETURN DllExecuteCall( t_cTemplate, <ArgName> [, <ArgNameN>] );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate )
|
||||
|
||||
#xcommand IMPORT [<Qualifier: STATIC>] [<CallConvention: 0x0000, 0x0001, 0x0010, 0x0020, 0x0100, 0x0200> ] ;
|
||||
@@ -111,10 +111,10 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, iif( <.CallConvention.>, <CallConvention>, DC_CALL_STD ), iif( <.DllFuncName.>, #<DllFuncName>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
IF <.ArgName.>;;
|
||||
RETURN DllExecuteCall( t_cTemplate, <ArgName> [, <ArgNameN>] );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate )
|
||||
|
||||
// FoxPro syntax
|
||||
@@ -123,7 +123,7 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, DC_CALL_STD, iif( <.DllFuncName.>, <(DllFuncName)>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate, ... )
|
||||
|
||||
// FWH
|
||||
@@ -132,7 +132,7 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, iif( <.Pascal.>, DC_CALL_STD, DC_CALL_CDECL ), iif( <.DllFuncName.>, <(DllFuncName)>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate [, <ArgName>] [, <ArgNameN>] )
|
||||
|
||||
#xcommand DLL32 [<Qualifier: STATIC>] FUNCTION <FuncName>( [ <ArgName> AS <ArgType> ] [, <ArgNameN> AS <ArgTypeN> ] ) AS <Type> [<Pascal: PASCAL>] [ FROM <DllFuncName> ] LIB <(DllName)> => ;
|
||||
@@ -140,7 +140,7 @@
|
||||
THREAD STATIC t_cTemplate;;
|
||||
IF t_cTemplate == NIL;;
|
||||
t_cTemplate := DllPrepareCall( <(DllName)>, iif( <.Pascal.>, DC_CALL_STD, DC_CALL_CDECL ), iif( <.DllFuncName.>, <(DllFuncName)>, #<FuncName> ) );;
|
||||
end;;
|
||||
END;;
|
||||
RETURN DllExecuteCall( t_cTemplate [, <ArgName>] [, <ArgNameN>] )
|
||||
|
||||
#endif
|
||||
|
||||
@@ -73,37 +73,37 @@
|
||||
[<ema: EMAIL> ([<nEmaPrio> [,<cHelo>[,<cServer>[,<cDest>[,<cSubject>[,<cFrom>]]]]]])] ;
|
||||
[<dbg: DEBUG> ( [<nDebugPrio> [,<nMaxDebugPrio>]] )] ;
|
||||
[NAME <cName>]=>;
|
||||
HB_InitStandardLog() ;;
|
||||
if <.con.>;;
|
||||
HB_StandardLogAdd( HB_LogConsole():New( <nConPrio> ));;
|
||||
end ;;
|
||||
if <.fil.> ;;
|
||||
HB_StandardLogAdd( HB_LogFile():New( <nFilPrio>, <cFileName>, <nFileSize>, <nFileCount> ));;
|
||||
end ;;
|
||||
if <.mon.> ;;
|
||||
HB_StandardLogAdd( HB_LogInetPort():New( <nMonPrio>, <nMonPort> ));;
|
||||
end ;;
|
||||
if <.sys.> ;;
|
||||
HB_StandardLogAdd( HB_LogSyslog():New( <nSysPrio>, <nSysId> ));;
|
||||
end ;;
|
||||
if <.ema.> ;;
|
||||
HB_StandardLogAdd( HB_LogEmail():New( <nEmaPrio> ,<cHelo>,<cServer>,<cDest>,<cSubject>,<cFrom>));;
|
||||
end ;;
|
||||
if <.dbg.> ;;
|
||||
HB_StandardLogAdd( HB_LogDebug():New( <nDebugPrio>, <nMaxDebugPrio> ) ) ;;
|
||||
end ;;
|
||||
HB_StandardLogName( <cName> );;
|
||||
HB_OpenStandardLog()
|
||||
hb_InitStandardLog() ;;
|
||||
IF <.con.>;;
|
||||
hb_StandardLogAdd( hb_LogConsole():New( <nConPrio> ));;
|
||||
END ;;
|
||||
IF <.fil.> ;;
|
||||
hb_StandardLogAdd( hb_LogFile():New( <nFilPrio>, <cFileName>, <nFileSize>, <nFileCount> ));;
|
||||
END ;;
|
||||
IF <.mon.> ;;
|
||||
hb_StandardLogAdd( hb_LoginetPort():New( <nMonPrio>, <nMonPort> ));;
|
||||
END ;;
|
||||
IF <.sys.> ;;
|
||||
hb_StandardLogAdd( hb_LogSysLog():New( <nSysPrio>, <nSysId> ));;
|
||||
END ;;
|
||||
IF <.ema.> ;;
|
||||
hb_StandardLogAdd( hb_LogEmail():New( <nEmaPrio> ,<cHelo>,<cServer>,<cDest>,<cSubject>,<cFrom>));;
|
||||
END ;;
|
||||
IF <.dbg.> ;;
|
||||
hb_StandardLogAdd( hb_LogDebug():New( <nDebugPrio>, <nMaxDebugPrio> ) ) ;;
|
||||
END ;;
|
||||
hb_StandardLogName( <cName> );;
|
||||
hb_OpenStandardLog()
|
||||
|
||||
|
||||
#xcommand SET LOG STYLE <nStyle> => HB_SetStandardLogStyle( <nStyle> )
|
||||
#xcommand SET LOG STYLE <nStyle> => hb_SetStandardLogStyle( <nStyle> )
|
||||
|
||||
#xcommand LOG <data,...> [PRIORITY <prio>] => ;
|
||||
HB_StandardLog( HB_BldLogMsg( <data> ), <prio> )
|
||||
hb_StandardLog( hb_BldLogMsg( <data> ), <prio> )
|
||||
#xcommand LOG <data,...> [PRIO <prio>] => ;
|
||||
HB_StandardLog( HB_BldLogMsg( <data> ), <prio> )
|
||||
hb_StandardLog( hb_BldLogMsg( <data> ), <prio> )
|
||||
|
||||
#xcommand CLOSE LOG => HB_CloseStandardLog()
|
||||
#xcommand CLOSE LOG => hb_CloseStandardLog()
|
||||
|
||||
#xtranslate PRIO[RITY] DEFAULT => PRIO HB_LOG_DEFAULT
|
||||
#xtranslate PRIO[RITY] CRITICAL => PRIO HB_LOG_CRITICAL
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
#xtranslate CRLF() => ( Chr( 13 ) + Chr( 10 ) )
|
||||
|
||||
/*
|
||||
#xCommand DEFINE HTML ;
|
||||
#xcommand DEFINE HTML ;
|
||||
[FILE <file>] ;
|
||||
[TITLE <title>] ;
|
||||
[LINKTITLE <linktitle>] ;
|
||||
@@ -93,7 +93,7 @@
|
||||
[<nRefresh>], [<cRefreshURL>],;
|
||||
<cStyleScr>,<.lcache.>)
|
||||
*/
|
||||
#xCommand DEFINE HTML ;
|
||||
#xcommand DEFINE HTML ;
|
||||
[FILE <file>] ;
|
||||
[TITLE <title>] ;
|
||||
[LINKTITLE <linktitle>] ;
|
||||
@@ -137,7 +137,7 @@
|
||||
<nMarginTop>, <nMarginHeight>, <nMarginWidth>, <nMarginLeft> ,;
|
||||
.F.,<file>)
|
||||
|
||||
#xCommand DEFINE CGI ;
|
||||
#xcommand DEFINE CGI ;
|
||||
[FILE <file>] ;
|
||||
[TITLE <title>] ;
|
||||
[LINKTITLE <linktitle>] ;
|
||||
@@ -185,7 +185,7 @@
|
||||
// [<.auth.>]
|
||||
|
||||
|
||||
#xCommand DEFINE TABLE ;
|
||||
#xcommand DEFINE TABLE ;
|
||||
[COLS <cols>] ;
|
||||
[BORDER <border>] ;
|
||||
[WIDTH <width>] ;
|
||||
@@ -218,7 +218,7 @@
|
||||
<cStyle>, <id> , <nof>)
|
||||
|
||||
|
||||
#xCommand DEFINE TABLE HEADER ;
|
||||
#xcommand DEFINE TABLE HEADER ;
|
||||
[TEXT <cHead>] ;
|
||||
[COLOR <cColor>] ;
|
||||
[<aln:LEFT,RIGHT,CENTER,MIDDLE,TOP,TEXTTOP,BOTTOM,ABSMIDDLE,ABSCENTER,ABSBOTTOM,BASELINE>];
|
||||
@@ -232,7 +232,7 @@
|
||||
<nSize>, <cFntColor>, <nHeight> )
|
||||
|
||||
|
||||
#xCommand DEFINE CELL ;
|
||||
#xcommand DEFINE CELL ;
|
||||
[COLOR <cColor>] ;
|
||||
[ALING <aln:LEFT,RIGHT,CENTER,MIDDLE,TOP,TEXTTOP,BOTTOM,ABSMIDDLE,ABSCENTER,ABSBOTTOM,BASELINE>];
|
||||
[FONT <cFont>] ;
|
||||
@@ -258,7 +258,7 @@
|
||||
<cspan>, <rspan> ,__HTML_ALING__ [<valn>], <clrdrk>, <clrlt>, <bclrlt>, <cClass>)
|
||||
|
||||
|
||||
#xCommand TABLE CELL ;
|
||||
#xcommand TABLE CELL ;
|
||||
[COLOR <cColor>] ;
|
||||
[FONT <cFont>] ;
|
||||
[SIZE <nSize>] ;
|
||||
@@ -278,7 +278,7 @@
|
||||
<cspan>, <rspan> )
|
||||
|
||||
|
||||
#xCommand TABLE ROW ;
|
||||
#xcommand TABLE ROW ;
|
||||
[COLOR <cColor>] ;
|
||||
[<aln:LEFT,RIGHT,CENTER,MIDDLE,TOP,TEXTTOP,BOTTOM,ABSMIDDLE,ABSCENTER,ABSBOTTOM,BASELINE>];
|
||||
[ALIGN <aln1:LEFT,RIGHT,CENTER,MIDDLE,TOP,TEXTTOP,BOTTOM,ABSMIDDLE,ABSCENTER,ABSBOTTOM,BASELINE>];
|
||||
@@ -286,7 +286,7 @@
|
||||
=> ;
|
||||
<oHtm>:NewTableRow( <cColor>, __HTML_ALING__ [<aln>], __HTML_ALING__ [<aln1>] );
|
||||
|
||||
#xCommand DEFINE FONT [<cFont>] ;
|
||||
#xcommand DEFINE FONT [<cFont>] ;
|
||||
[<ftype:BOLD,ITALIC,ULINE,UNDERLINE>] ;
|
||||
[SIZE <s>] ;
|
||||
[COLOR <c>] ;
|
||||
@@ -296,7 +296,7 @@
|
||||
[<s>], [<c>] )
|
||||
|
||||
|
||||
#xCommand SET FONT [<cFont>] ;
|
||||
#xcommand SET FONT [<cFont>] ;
|
||||
[<bold:BOLD>] ;
|
||||
[<itl:ITALIC>] ;
|
||||
[<uln:UNDERLINE>] ;
|
||||
@@ -310,7 +310,7 @@
|
||||
[<s>], [<c>], ! <.lset.> )
|
||||
|
||||
|
||||
#xCommand START FONT [<cFont>] ;
|
||||
#xcommand START FONT [<cFont>] ;
|
||||
[<bold:BOLD>] ;
|
||||
[<itl:ITALIC>] ;
|
||||
[<uln:UNDERLINE>] ;
|
||||
@@ -324,12 +324,12 @@
|
||||
[<s>], [<c>], ! <.lset.> )
|
||||
|
||||
|
||||
#xCommand FONTEND[<cFont>] ;
|
||||
#xcommand FONTEND[<cFont>] ;
|
||||
[OF <oHtm>] ;
|
||||
=> ;
|
||||
<oHtm>:EndFont()
|
||||
|
||||
#xCommand END FONT ;
|
||||
#xcommand END FONT ;
|
||||
[OF <oHtm>] ;
|
||||
=> ;
|
||||
<oHtm>:EndFont()
|
||||
@@ -382,12 +382,12 @@
|
||||
[<(style)>], [<(id)>] )
|
||||
|
||||
|
||||
#xCommand END BUTTON OF <oHtm> ;
|
||||
#xcommand END BUTTON OF <oHtm> ;
|
||||
=>;
|
||||
<oHtm>:endButton()
|
||||
|
||||
|
||||
#xCommand IMAGE <image> ;
|
||||
#xcommand IMAGE <image> ;
|
||||
URL <url> ;
|
||||
[BORDER <border>] ;
|
||||
[HEIGHT <height>] ;
|
||||
@@ -406,7 +406,7 @@
|
||||
<name>, <alt>, <target>, <width>,<.break.>)
|
||||
|
||||
|
||||
#xCommand IMAGE <image> ;
|
||||
#xcommand IMAGE <image> ;
|
||||
[BORDER <border>] ;
|
||||
[HEIGHT <height>] ;
|
||||
[WIDTH <width>] ;
|
||||
@@ -428,7 +428,7 @@
|
||||
<name>, <alt>, ;
|
||||
<target>, <width>, <.break.>, <iD>, <map>, __HTML_ALING__ [<aln1>] , <hspace>)
|
||||
|
||||
#xCommand LINK <url> ;
|
||||
#xcommand LINK <url> ;
|
||||
[TEXT <text>] ;
|
||||
[FONT <font>] ;
|
||||
[FONTCOLOR <clr>] ;
|
||||
@@ -447,7 +447,7 @@
|
||||
<onclick>, <onmsover>, <onmsout>, ;
|
||||
<target>, <font>, <clr>, <size>, <style>, <.bld.> ,<.break.>, <cClass>)
|
||||
|
||||
#xCommand LINK <url> ;
|
||||
#xcommand LINK <url> ;
|
||||
[IMAGE <image>] ;
|
||||
[WIDTH <width>] ;
|
||||
[HEIGHT <height>] ;
|
||||
@@ -470,7 +470,7 @@
|
||||
<target>, <width>, <.break.>, <cClass>, <id>, < hspace >, __HTML_ALING__ [<aln1>] )
|
||||
|
||||
|
||||
#xCommand NEW FRAMEPAGE ;
|
||||
#xcommand NEW FRAMEPAGE ;
|
||||
[TITLE <title>] ;
|
||||
[FILE <file>] ;
|
||||
OF <oFrm> ;
|
||||
@@ -478,7 +478,7 @@
|
||||
<oFrm>:=THtmlFrameSet():New( <file>, <title> )
|
||||
|
||||
|
||||
#xCommand FRAMESET ;
|
||||
#xcommand FRAMESET ;
|
||||
[TITLE <title>] ;
|
||||
[FILE <file>] ;
|
||||
[ROWS <rows,...>] ;
|
||||
@@ -492,7 +492,7 @@
|
||||
|
||||
|
||||
|
||||
#xCommand FRAME ;
|
||||
#xcommand FRAME ;
|
||||
[NAME <name>] ;
|
||||
[URL <url>] ;
|
||||
[<brd:NOBORDER>] ;
|
||||
@@ -509,8 +509,8 @@
|
||||
[<mw>], [<mh>], [<target>], ;
|
||||
__HTML_SCROLL__ [<scrl>] )
|
||||
|
||||
#xCommand ENDSET <oFrm> => <oFrm>:EndSet()
|
||||
#xCommand END FRAMEPAGE <oFrm> => <oFrm>:End()
|
||||
#xcommand ENDSET <oFrm> => <oFrm>:EndSet()
|
||||
#xcommand END FRAMEPAGE <oFrm> => <oFrm>:End()
|
||||
|
||||
|
||||
#xcommand MARQUEE <cText> ;
|
||||
@@ -570,7 +570,7 @@
|
||||
|
||||
|
||||
|
||||
#xCommand END MARQUEE OF <oHtm> => <oHtm>:endMarquee()
|
||||
#xcommand END MARQUEE OF <oHtm> => <oHtm>:endMarquee()
|
||||
|
||||
|
||||
|
||||
@@ -603,13 +603,13 @@
|
||||
[FOLDER <folder>] ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
putCounter( <oHtm>, <num>, <folder>, <dig>, <w>, <clr>, <b> )
|
||||
PutCounter( <oHtm>, <num>, <folder>, <dig>, <w>, <clr>, <b> )
|
||||
|
||||
/*******************************************/
|
||||
/* New Commands */
|
||||
/*******************************************/
|
||||
|
||||
#xCommand LINKS <url> ;
|
||||
#xcommand LINKS <url> ;
|
||||
[TEXT <text>] ;
|
||||
[IMAGE <image>] ;
|
||||
[WIDTH <width>] ;
|
||||
@@ -628,24 +628,24 @@
|
||||
<oHtm>:putTextImageURL( <image>, <border>, <height>, <url>,;
|
||||
<onclick>, <onmsover>, <onmsout>, <name>, <alt> , ;
|
||||
<target>,<width>, <.break.>, <cClass>, <text>)
|
||||
#xCommand SPAN <text> ;
|
||||
#xcommand SPAN <text> ;
|
||||
[STYLE <cStyle>] ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:Span(<text>,<cStyle>)
|
||||
|
||||
#xCommand Comment <text> ;
|
||||
#xcommand Comment <text> ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:Comment(<text>)
|
||||
|
||||
#xCommand LINKNAME <cName> ;
|
||||
#xcommand LINKNAME <cName> ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:PutLinkName(<cName>)
|
||||
|
||||
|
||||
#xCommand CREATE OBJECT ;
|
||||
#xcommand CREATE OBJECT ;
|
||||
[NAME <cName>] ;
|
||||
[TYPE <cType>] ;
|
||||
[CLASSID <cClassid>] ;
|
||||
@@ -659,34 +659,34 @@
|
||||
=> ;
|
||||
<oHtm>:ADDOBJECT(<cType>,<cClassid>,__HTML_ALING__ [<aln>],<cCode>,<.lDisable.>,<cCodeBase>,<cName>,<nWidth>,<nHeight>)
|
||||
|
||||
#xCommand OBJECT PARAM ;
|
||||
#xcommand OBJECT PARAM ;
|
||||
NAME <cName> ;
|
||||
VALUE <cValue> ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:ADDPARAM(<cName>,<cValue>)
|
||||
|
||||
#xCommand END OBJECT ;
|
||||
#xcommand END OBJECT ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:ENDOBJECT()
|
||||
|
||||
#xCommand MAPEND ;
|
||||
#xcommand MAPEND ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:EndMap()
|
||||
|
||||
#xCommand CELLEND ;
|
||||
#xcommand CELLEND ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:EndTableCell( .F. )
|
||||
|
||||
#xCommand ROWEND ;
|
||||
#xcommand ROWEND ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:EndTableRow()
|
||||
|
||||
#xCommand TABLEEND ;
|
||||
#xcommand TABLEEND ;
|
||||
OF <oHtm> ;
|
||||
=> ;
|
||||
<oHtm>:EndTable()
|
||||
@@ -705,41 +705,41 @@
|
||||
=>;
|
||||
<ohtm>:MapArea( <(Shape)>, <Alt>, <coord>, <Url> )
|
||||
|
||||
#xtranslate __HTML_SCROLL__ => "AUTO"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:NO> => "NO"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:OFF> => "NO"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:ON> => "YES"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:YES> => "YES"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:AUTO> => "AUTO"
|
||||
#xtranslate __HTML_SCROLL__ => "AUTO"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:NO> => "NO"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:OFF> => "NO"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:ON> => "YES"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:YES> => "YES"
|
||||
#xtranslate __HTML_SCROLL__ <scrl:AUTO> => "AUTO"
|
||||
|
||||
|
||||
#xtranslate __HTML_ALING__ => NIL
|
||||
#xtranslate __HTML_ALING__ <aln:LEFT> => "LEFT"
|
||||
#xtranslate __HTML_ALING__ <aln:RIGHT> => "RIGHT"
|
||||
#xtranslate __HTML_ALING__ <aln:CENTER> => "center"
|
||||
#xtranslate __HTML_ALING__ <aln:MIDDLE> => "MIDDLE"
|
||||
#xtranslate __HTML_ALING__ <aln:TOP> => "TOP"
|
||||
#xtranslate __HTML_ALING__ <aln:TEXTTOP> => "TEXTTOP"
|
||||
#xtranslate __HTML_ALING__ <aln:BOTTOM> => "BOTTOM"
|
||||
#xtranslate __HTML_ALING__ <aln:ABSMIDDLE> => "ABSMIDDLE"
|
||||
#xtranslate __HTML_ALING__ <aln:ABSCENTER> => "ABSMIDDLE"
|
||||
#xtranslate __HTML_ALING__ <aln:ABSBOTTOM> => "ABSBOTTOM"
|
||||
#xtranslate __HTML_ALING__ <aln:BASELINE> => "BASELINE"
|
||||
#xtranslate __HTML_ALING__ => NIL
|
||||
#xtranslate __HTML_ALING__ <aln:LEFT> => "LEFT"
|
||||
#xtranslate __HTML_ALING__ <aln:RIGHT> => "RIGHT"
|
||||
#xtranslate __HTML_ALING__ <aln:CENTER> => "center"
|
||||
#xtranslate __HTML_ALING__ <aln:MIDDLE> => "MIDDLE"
|
||||
#xtranslate __HTML_ALING__ <aln:TOP> => "TOP"
|
||||
#xtranslate __HTML_ALING__ <aln:TEXTTOP> => "TEXTTOP"
|
||||
#xtranslate __HTML_ALING__ <aln:BOTTOM> => "BOTTOM"
|
||||
#xtranslate __HTML_ALING__ <aln:ABSMIDDLE> => "ABSMIDDLE"
|
||||
#xtranslate __HTML_ALING__ <aln:ABSCENTER> => "ABSMIDDLE"
|
||||
#xtranslate __HTML_ALING__ <aln:ABSBOTTOM> => "ABSBOTTOM"
|
||||
#xtranslate __HTML_ALING__ <aln:BASELINE> => "BASELINE"
|
||||
|
||||
#xtranslate __HTML_POS__ => NIL
|
||||
#xtranslate __HTML_POS__ <pos:TOP> => "TOP"
|
||||
#xtranslate __HTML_POS__ <pos:MIDDLE> => "MIDDLE"
|
||||
#xtranslate __HTML_POS__ <pos:BOTTOM> => "BOTTOM"
|
||||
#xtranslate __HTML_POS__ => NIL
|
||||
#xtranslate __HTML_POS__ <pos:TOP> => "TOP"
|
||||
#xtranslate __HTML_POS__ <pos:MIDDLE> => "MIDDLE"
|
||||
#xtranslate __HTML_POS__ <pos:BOTTOM> => "BOTTOM"
|
||||
|
||||
#xtranslate __HTML_DIR__ => NIL
|
||||
#xtranslate __HTML_DIR__ <dir:LEFT> => "LEFT"
|
||||
#xtranslate __HTML_DIR__ <dir:RIGHT> => "RIGHT"
|
||||
#xtranslate __HTML_DIR__ => NIL
|
||||
#xtranslate __HTML_DIR__ <dir:LEFT> => "LEFT"
|
||||
#xtranslate __HTML_DIR__ <dir:RIGHT> => "RIGHT"
|
||||
|
||||
#xtranslate __HTML_BEHAVE__ => NIL
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:SCROLL> => "SCROLL"
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:SLIDE> => "SLIDE"
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:ALTERNATE> => "ALTERNATE"
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:ALT> => "ALTERNATE"
|
||||
#xtranslate __HTML_BEHAVE__ => NIL
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:SCROLL> => "SCROLL"
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:SLIDE> => "SLIDE"
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:ALTERNATE> => "ALTERNATE"
|
||||
#xtranslate __HTML_BEHAVE__ <bhv:ALT> => "ALTERNATE"
|
||||
|
||||
#xtranslate __HTML_FTYPE__ => NIL
|
||||
#xtranslate __HTML_FTYPE__ <ftype:ITALIC> => "<I>"
|
||||
|
||||
@@ -46,146 +46,146 @@
|
||||
|
||||
#ifndef _COLORS_CH
|
||||
|
||||
#define ALICEBLUE '#A0CF00'
|
||||
#define ANTIQUEWHITE '#FFE8D0'
|
||||
#define AQUA '#00FFFF'
|
||||
#define AQUAMARINE '#7FFFD0'
|
||||
#define AZURE '#F0FFFF'
|
||||
#define BEIGE '#F0F7DF'
|
||||
#define BISQUE '#FFE7C0'
|
||||
#define BLACK '#000000'
|
||||
#define BLANCHEDALMOND '#FFE8CF'
|
||||
#define BLUE '#0000FF'
|
||||
#define BLUEVIOLET '#8F28E0'
|
||||
#define BROWN '#A0282F'
|
||||
#define BURLYWOOD '#DFB880'
|
||||
#define CADETBLUE '#5F9FA0'
|
||||
#define CHARTREUSE '#7FFF00'
|
||||
#define CHOCOLATE '#D0861F'
|
||||
#define CORAL '#FF7F50'
|
||||
#define CORNFLOWERBLUE '#6097EF'
|
||||
#define CORNSILK '#FFF8DF'
|
||||
#define CRIMSON '#DF173F'
|
||||
#define CYAN '#00FFFF'
|
||||
#define DARKBLUE '#00008F'
|
||||
#define DARKCYAN '#00888F'
|
||||
#define DARKGOLDENROD '#BF87F0'
|
||||
#define DARKGRAY '#AFA8AF'
|
||||
#define DARKGREEN '#006700'
|
||||
#define DARKKHAKI '#BFB76F'
|
||||
#define DARKMAGENTA '#8F008F'
|
||||
#define DARKOLIVEGREEN '#50682F'
|
||||
#define DARKORANGE '#FF8F00'
|
||||
#define DARKORCHID '#9F30CF'
|
||||
#define DARKRED '#8F0000'
|
||||
#define DARKSALMON '#EF977F'
|
||||
#define DARKSEAGREEN '#8FBF8F'
|
||||
#define DARKSLATEBLUE '#4F3F8F'
|
||||
#define DARKSLATEGRAY '#2F4F4F'
|
||||
#define DARKTURQUOISE '#00CFD0'
|
||||
#define DARKVIOLET '#9000D0'
|
||||
#define DEEPPINK '#FF1790'
|
||||
#define DEEPSKYBLUE '#00BFFF'
|
||||
#define DIMGRAY '#6F686F'
|
||||
#define DODGERBLUE '#1F90FF'
|
||||
#define FIREBRICK '#B02020'
|
||||
#define FLORALWHITE '#FFF8F0'
|
||||
#define FORESTGREEN '#208820'
|
||||
#define FUCHSIA '#FF00FF'
|
||||
#define GAINSBORO '#DFDFDF'
|
||||
#define GHOSTWHITE '#FFF8FF'
|
||||
#define GOLD '#FFD700'
|
||||
#define GOLDENROD '#DFA720'
|
||||
#define GRAY '#808080'
|
||||
#define GREEN '#008000'
|
||||
#define GREENYELLOW '#AFFF2F'
|
||||
#define HONEYDEW '#F0FFF0'
|
||||
#define HOTPINK '#FF68B0'
|
||||
#define INDIANRED '#CF5F5F'
|
||||
#define INDIGO '#4F0080'
|
||||
#define IVORY '#FFFFF0'
|
||||
#define KHAKI '#F0E78F'
|
||||
#define LAVENDER '#E0E7FF'
|
||||
#define LAVENDERBLUSH '#FFF0F0'
|
||||
#define LAWNGREEN '#7FFF00'
|
||||
#define LEMONCHIFFON '#FFF8CF'
|
||||
#define LIGHTBLUE '#AFD8E0'
|
||||
#define LIGHTCORAL '#F08080'
|
||||
#define LIGHTCYAN '#E0FFFF'
|
||||
#define LIGHTGOLDENRODYELLOW '#FFF8D0'
|
||||
#define LIGHTGREEN '#90EF90'
|
||||
#define LIGHTGREY '#D0D0D0'
|
||||
#define LIGHTPINK '#FFB7C0'
|
||||
#define LIGHTSALMON '#FFA07F'
|
||||
#define LIGHTSEAGREEN '#20B0AF'
|
||||
#define LIGHTSKYBLUE '#80CFFF'
|
||||
#define LIGHTSLATEGRAY '#70889F'
|
||||
#define LIGHTSTEELBLUE '#B0C7DF'
|
||||
#define LIGHTYELLOW '#FFFFE0'
|
||||
#define LIME '#00FF00'
|
||||
#define LIMEGREEN '#30CF30'
|
||||
#define LINEN '#FFF0E0'
|
||||
#define MAGENTA '#FF00FF'
|
||||
#define MAROON '#800000'
|
||||
#define MEDIUMAQUAMARINE '#60CFAF'
|
||||
#define MEDIUMBLUE '#0000CF'
|
||||
#define MEDIUMORCHID '#BF57D0'
|
||||
#define MEDIUMPURPLE '#9070DF'
|
||||
#define MEDIUMSEAGREEN '#3FB070'
|
||||
#define MEDIUMSLATEBLUE '#7F68EF'
|
||||
#define MEDIUMSPRINGGREEN '#00F89F'
|
||||
#define MEDIUMTURQUOISE '#4FD0CF'
|
||||
#define MEDIUMVIOLETRED '#C01780'
|
||||
#define MIDNIGHTBLUE '#1F1870'
|
||||
#define MINTCREAM '#F0FFFF'
|
||||
#define MISTYROSE '#FFE7E0'
|
||||
#define MOCCASIN '#FFE7B0'
|
||||
#define NAVAJOWHITE '#FFDFAF'
|
||||
#define NAVY '#000080'
|
||||
#define OLDLACE '#FFF7E0'
|
||||
#define OLIVE '#808000'
|
||||
#define OLIVEDRAB '#6F8F20'
|
||||
#define ORANGE '#FFA700'
|
||||
#define ORANGERED '#FF4700'
|
||||
#define ORCHID '#DF70D0'
|
||||
#define PALEGOLDENROD '#EFE8AF'
|
||||
#define PALEGREEN '#9FF89F'
|
||||
#define PALETURQUOISE '#AFEFEF'
|
||||
#define PALEVIOLETRED '#DF7090'
|
||||
#define PAPAYAWHIP '#FFEFD0'
|
||||
#define PEACHPUFF '#FFD8BF'
|
||||
#define PERU '#CF873F'
|
||||
#define PINK '#FFC0CF'
|
||||
#define PLUM '#DFA1DF'
|
||||
#define POWDERBLUE '#B0E0E0'
|
||||
#define PURPLE '#800080'
|
||||
#define RED '#FF0000'
|
||||
#define ROSYBROWN '#BF8F8F'
|
||||
#define ROYALBLUE '#4068E0'
|
||||
#define SADDLEBROWN '#8F4710'
|
||||
#define SALMON '#FF8070'
|
||||
#define SANDYBROWN '#F0A760'
|
||||
#define SEAGREEN '#2F8850'
|
||||
#define SEASHELL '#FFF7EF'
|
||||
#define SIENNA '#A0502F'
|
||||
#define SILVER '#C0C0C0'
|
||||
#define SKYBLUE '#80CFEF'
|
||||
#define SLATEBLUE '#6F58CF'
|
||||
#define SLATEGRAY '#708090'
|
||||
#define SNOW '#FFF8FF'
|
||||
#define SPRINGGREEN '#00FF7F'
|
||||
#define STEELBLUE '#4080B0'
|
||||
#define TAN '#D0B78F'
|
||||
#define TEAL '#008080'
|
||||
#define THISTLE '#DFBFDF'
|
||||
#define TOMATO '#FF6040'
|
||||
#define TURQUOISE '#40E0D0'
|
||||
#define VIOLET '#EF80EF'
|
||||
#define WHEAT '#F0DFB0'
|
||||
#define WHITE '#FFFFFF'
|
||||
#define WHITESMOKE '#F0F7F0'
|
||||
#define YELLOW '#FFFF00'
|
||||
#define YELLOWGREEN '#9FCF30'
|
||||
#define ALICEBLUE "#A0CF00"
|
||||
#define ANTIQUEWHITE "#FFE8D0"
|
||||
#define AQUA "#00FFFF"
|
||||
#define AQUAMARINE "#7FFFD0"
|
||||
#define AZURE "#F0FFFF"
|
||||
#define BEIGE "#F0F7DF"
|
||||
#define BISQUE "#FFE7C0"
|
||||
#define BLACK "#000000"
|
||||
#define BLANCHEDALMOND "#FFE8CF"
|
||||
#define BLUE "#0000FF"
|
||||
#define BLUEVIOLET "#8F28E0"
|
||||
#define BROWN "#A0282F"
|
||||
#define BURLYWOOD "#DFB880"
|
||||
#define CADETBLUE "#5F9FA0"
|
||||
#define CHARTREUSE "#7FFF00"
|
||||
#define CHOCOLATE "#D0861F"
|
||||
#define CORAL "#FF7F50"
|
||||
#define CORNFLOWERBLUE "#6097EF"
|
||||
#define CORNSILK "#FFF8DF"
|
||||
#define CRIMSON "#DF173F"
|
||||
#define CYAN "#00FFFF"
|
||||
#define DARKBLUE "#00008F"
|
||||
#define DARKCYAN "#00888F"
|
||||
#define DARKGOLDENROD "#BF87F0"
|
||||
#define DARKGRAY "#AFA8AF"
|
||||
#define DARKGREEN "#006700"
|
||||
#define DARKKHAKI "#BFB76F"
|
||||
#define DARKMAGENTA "#8F008F"
|
||||
#define DARKOLIVEGREEN "#50682F"
|
||||
#define DARKORANGE "#FF8F00"
|
||||
#define DARKORCHID "#9F30CF"
|
||||
#define DARKRED "#8F0000"
|
||||
#define DARKSALMON "#EF977F"
|
||||
#define DARKSEAGREEN "#8FBF8F"
|
||||
#define DARKSLATEBLUE "#4F3F8F"
|
||||
#define DARKSLATEGRAY "#2F4F4F"
|
||||
#define DARKTURQUOISE "#00CFD0"
|
||||
#define DARKVIOLET "#9000D0"
|
||||
#define DEEPPINK "#FF1790"
|
||||
#define DEEPSKYBLUE "#00BFFF"
|
||||
#define DIMGRAY "#6F686F"
|
||||
#define DODGERBLUE "#1F90FF"
|
||||
#define FIREBRICK "#B02020"
|
||||
#define FLORALWHITE "#FFF8F0"
|
||||
#define FORESTGREEN "#208820"
|
||||
#define FUCHSIA "#FF00FF"
|
||||
#define GAINSBORO "#DFDFDF"
|
||||
#define GHOSTWHITE "#FFF8FF"
|
||||
#define GOLD "#FFD700"
|
||||
#define GOLDENROD "#DFA720"
|
||||
#define GRAY "#808080"
|
||||
#define GREEN "#008000"
|
||||
#define GREENYELLOW "#AFFF2F"
|
||||
#define HONEYDEW "#F0FFF0"
|
||||
#define HOTPINK "#FF68B0"
|
||||
#define INDIANRED "#CF5F5F"
|
||||
#define INDIGO "#4F0080"
|
||||
#define IVORY "#FFFFF0"
|
||||
#define KHAKI "#F0E78F"
|
||||
#define LAVENDER "#E0E7FF"
|
||||
#define LAVENDERBLUSH "#FFF0F0"
|
||||
#define LAWNGREEN "#7FFF00"
|
||||
#define LEMONCHIFFON "#FFF8CF"
|
||||
#define LIGHTBLUE "#AFD8E0"
|
||||
#define LIGHTCORAL "#F08080"
|
||||
#define LIGHTCYAN "#E0FFFF"
|
||||
#define LIGHTGOLDENRODYELLOW "#FFF8D0"
|
||||
#define LIGHTGREEN "#90EF90"
|
||||
#define LIGHTGREY "#D0D0D0"
|
||||
#define LIGHTPINK "#FFB7C0"
|
||||
#define LIGHTSALMON "#FFA07F"
|
||||
#define LIGHTSEAGREEN "#20B0AF"
|
||||
#define LIGHTSKYBLUE "#80CFFF"
|
||||
#define LIGHTSLATEGRAY "#70889F"
|
||||
#define LIGHTSTEELBLUE "#B0C7DF"
|
||||
#define LIGHTYELLOW "#FFFFE0"
|
||||
#define LIME "#00FF00"
|
||||
#define LIMEGREEN "#30CF30"
|
||||
#define LINEN "#FFF0E0"
|
||||
#define MAGENTA "#FF00FF"
|
||||
#define MAROON "#800000"
|
||||
#define MEDIUMAQUAMARINE "#60CFAF"
|
||||
#define MEDIUMBLUE "#0000CF"
|
||||
#define MEDIUMORCHID "#BF57D0"
|
||||
#define MEDIUMPURPLE "#9070DF"
|
||||
#define MEDIUMSEAGREEN "#3FB070"
|
||||
#define MEDIUMSLATEBLUE "#7F68EF"
|
||||
#define MEDIUMSPRINGGREEN "#00F89F"
|
||||
#define MEDIUMTURQUOISE "#4FD0CF"
|
||||
#define MEDIUMVIOLETRED "#C01780"
|
||||
#define MIDNIGHTBLUE "#1F1870"
|
||||
#define MINTCREAM "#F0FFFF"
|
||||
#define MISTYROSE "#FFE7E0"
|
||||
#define MOCCASIN "#FFE7B0"
|
||||
#define NAVAJOWHITE "#FFDFAF"
|
||||
#define NAVY "#000080"
|
||||
#define OLDLACE "#FFF7E0"
|
||||
#define OLIVE "#808000"
|
||||
#define OLIVEDRAB "#6F8F20"
|
||||
#define ORANGE "#FFA700"
|
||||
#define ORANGERED "#FF4700"
|
||||
#define ORCHID "#DF70D0"
|
||||
#define PALEGOLDENROD "#EFE8AF"
|
||||
#define PALEGREEN "#9FF89F"
|
||||
#define PALETURQUOISE "#AFEFEF"
|
||||
#define PALEVIOLETRED "#DF7090"
|
||||
#define PAPAYAWHIP "#FFEFD0"
|
||||
#define PEACHPUFF "#FFD8BF"
|
||||
#define PERU "#CF873F"
|
||||
#define PINK "#FFC0CF"
|
||||
#define PLUM "#DFA1DF"
|
||||
#define POWDERBLUE "#B0E0E0"
|
||||
#define PURPLE "#800080"
|
||||
#define RED "#FF0000"
|
||||
#define ROSYBROWN "#BF8F8F"
|
||||
#define ROYALBLUE "#4068E0"
|
||||
#define SADDLEBROWN "#8F4710"
|
||||
#define SALMON "#FF8070"
|
||||
#define SANDYBROWN "#F0A760"
|
||||
#define SEAGREEN "#2F8850"
|
||||
#define SEASHELL "#FFF7EF"
|
||||
#define SIENNA "#A0502F"
|
||||
#define SILVER "#C0C0C0"
|
||||
#define SKYBLUE "#80CFEF"
|
||||
#define SLATEBLUE "#6F58CF"
|
||||
#define SLATEGRAY "#708090"
|
||||
#define SNOW "#FFF8FF"
|
||||
#define SPRINGGREEN "#00FF7F"
|
||||
#define STEELBLUE "#4080B0"
|
||||
#define TAN "#D0B78F"
|
||||
#define TEAL "#008080"
|
||||
#define THISTLE "#DFBFDF"
|
||||
#define TOMATO "#FF6040"
|
||||
#define TURQUOISE "#40E0D0"
|
||||
#define VIOLET "#EF80EF"
|
||||
#define WHEAT "#F0DFB0"
|
||||
#define WHITE "#FFFFFF"
|
||||
#define WHITESMOKE "#F0F7F0"
|
||||
#define YELLOW "#FFFF00"
|
||||
#define YELLOWGREEN "#9FCF30"
|
||||
|
||||
#define _COLORS_CH
|
||||
#endif
|
||||
|
||||
@@ -68,12 +68,12 @@
|
||||
<.frame.>, <cap> ) ;;
|
||||
[<oFrm>:setTarget( <(target)> ) ;] ;
|
||||
[<oFrm>:setEncType( <(enctype)> ) ;] ;
|
||||
[<oFrm>:setCapClr( <(capclr)> ) ;] ;
|
||||
[<oFrm>:setCapFntClr( <(capfntclr)> ) ;] ;
|
||||
[<oFrm>:setCapImage( <(capimage)> ) ;] ;
|
||||
[<oFrm>:setBgImage( <(bgimg)> ) ;] ;
|
||||
[<oFrm>:setFontColor( <(fntclr)> ) ;] ;
|
||||
[<oFrm>:setFrmColor( <(clr)> ) ;] ;
|
||||
[<oFrm>:setCapClr( <(capclr)> ) ;] ;
|
||||
[<oFrm>:setCapFntClr( <(capfntclr)> ) ;] ;
|
||||
[<oFrm>:setCapImage( <(capimage)> ) ;] ;
|
||||
[<oFrm>:setBgImage( <(bgimg)> ) ;] ;
|
||||
[<oFrm>:setFontColor( <(fntclr)> ) ;] ;
|
||||
[<oFrm>:setFrmColor( <(clr)> ) ;] ;
|
||||
[<oFrm>:setwidth( <w> ) ;] ;
|
||||
[<oFrm>:setAction( <(action)> ) ;] ;
|
||||
[<oFrm>:setOnSubmit( <(onsubmit)> ) ;] ;
|
||||
@@ -82,7 +82,7 @@
|
||||
|
||||
#xCommand ACTIVATE <oFrm> ;
|
||||
=>;
|
||||
<oFrm>:Put(.T.) ; <oFrm>:End()
|
||||
<oFrm>:Put( .T. ) ; <oFrm>:End()
|
||||
|
||||
|
||||
// --> Controls
|
||||
@@ -125,15 +125,15 @@
|
||||
[ <obj>:= ] THtmlControl():SetControl(;
|
||||
<(name)>, <rows>, <cols>, <size>, <maxchars>, ;
|
||||
<(value)>, ;
|
||||
<(onfocus)>,<(onblur)>,<(onchange)>,<(onselect)>,;
|
||||
<(onclick)>,<(onmsover)>,<(onmsout)>,<(onmsdn)>,<(onmsup)>,;
|
||||
<(onkdown)>,<(onkup)>,<(onkprs)>,;
|
||||
<(pic)>,<(cap)>,;
|
||||
<.dis.>,<.ro.>,<.mult.>,<.chk.>,;
|
||||
<(onfocus)>, <(onblur)>, <(onchange)>, <(onselect)>, ;
|
||||
<(onclick)>, <(onmsover)>, <(onmsout)>, <(onmsdn)>, <(onmsup)>, ;
|
||||
<(onkdown)>, <(onkup)>, <(onkprs)>, ;
|
||||
<(pic)>, <(cap)>, ;
|
||||
<.dis.>, <.ro.>, <.mult.>, <.chk.>, ;
|
||||
__ALIGN__ [<aln>], ;
|
||||
__WRAP__ [<wrap>], ;
|
||||
__TYPE__ [<typ>],;
|
||||
<style>, <id> ,<.l.>) )
|
||||
__TYPE__ [<typ>], ;
|
||||
<style>, <id>, <.l.> ) )
|
||||
|
||||
|
||||
#xCommand DEFINE <typ:EDIT,TEXT,TEXTAREA,PASSWORD,BUTTON,IMAGE,CHECKBOX,CHECK,HIDDEN,RADIO,FILE,RESET,SUBMIT,SELECT,LISTBOX> <oCtr>;
|
||||
@@ -164,7 +164,7 @@
|
||||
[CAPTION <cap>] ;
|
||||
[STYLE <style>] ;
|
||||
[ID <id>] ;
|
||||
[<l:LABEL>] ;
|
||||
[<l:LABEL>] ;
|
||||
IN <oForm> ;
|
||||
=> ;
|
||||
<oCtr> := THtmlControl() ;;
|
||||
@@ -174,29 +174,29 @@
|
||||
[<oCtr>:SetCols( <cols> ) ;] ;
|
||||
[<oCtr>:SetAlign( __ALIGN__ <aln> );] ;
|
||||
[<oCtr>:SetWrap( __WRAP__ <wrap> );] ;
|
||||
[<oCtr>:SetSource(<(source)>);] ;
|
||||
[<oCtr>:SetSource( <(source)> );] ;
|
||||
[<oCtr>:SetMaxChars( <maxchars> );] ;
|
||||
[<oCtr>:SetValue( <(value)> );] ;
|
||||
[<oCtr>:SetOnFocus(<(onfocus)>);] ;
|
||||
[<oCtr>:SetOnBlur(<(onblur)>);] ;
|
||||
[<oCtr>:SetOnChange(<(onchange)>);] ;
|
||||
[<oCtr>:SetOnSelect(<(onselect)>);] ;
|
||||
[<oCtr>:SetonClick(<(onclick)>);] ;
|
||||
[<oCtr>:SetonMsOver(<(onmsover)>);] ;
|
||||
[<oCtr>:SetonMsOut(<(onmsout)>);] ;
|
||||
[<oCtr>:SetonKDown(<(onkdown)>);] ;
|
||||
[<oCtr>:SetonKUp(<(onkup)>);] ;
|
||||
[<oCtr>:SetonKPress(<(onkprs)>);] ;
|
||||
[<oCtr>:SetPicture(<(pic)>);] ;
|
||||
[<oCtr>:SetCaption(<cap>);] ;
|
||||
[<oCtr>:SetStyle(<(style)>);] ;
|
||||
[<oCtr>:SetId(<(id)>);] ;
|
||||
[<oCtr>:SetChecked( <.checked.>);] ;
|
||||
[<oCtr>:SetMultiple(<.mult.>);] ;
|
||||
[<oCtr>:SetDisabled(<.dis.>);] ;
|
||||
[<oCtr>:SetReadonly(<.ro.>);] ;
|
||||
[<oCtr>:SetLabel(<.l.>);] ;
|
||||
<oCtr>:Type := __TYPE__ <typ> ;;
|
||||
[<oCtr>:SetOnFocus( <(onfocus)> );] ;
|
||||
[<oCtr>:SetOnBlur( <(onblur)> );] ;
|
||||
[<oCtr>:SetOnChange( <(onchange)> );] ;
|
||||
[<oCtr>:SetOnSelect( <(onselect)> );] ;
|
||||
[<oCtr>:SetonClick( <(onclick)> );] ;
|
||||
[<oCtr>:SetonMsOver( <(onmsover)> );] ;
|
||||
[<oCtr>:SetonMsOut( <(onmsout)> );] ;
|
||||
[<oCtr>:SetonKDown( <(onkdown)> );] ;
|
||||
[<oCtr>:SetonKUp( <(onkup)> );] ;
|
||||
[<oCtr>:SetonKPress( <(onkprs)> );] ;
|
||||
[<oCtr>:SetPicture( <(pic)> );] ;
|
||||
[<oCtr>:SetCaption( <cap> );] ;
|
||||
[<oCtr>:SetStyle( <(style)> );] ;
|
||||
[<oCtr>:SetId( <(id)> );] ;
|
||||
[<oCtr>:SetChecked( <.checked.> );] ;
|
||||
[<oCtr>:SetMultiple( <.mult.> );] ;
|
||||
[<oCtr>:SetDisabled( <.dis.> );] ;
|
||||
[<oCtr>:SetReadonly( <.ro.> );] ;
|
||||
[<oCtr>:SetLabel( <.l.> );] ;
|
||||
<oCtr>:Type := __TYPE__ <typ> ;;
|
||||
<oForm>:AddControl( <oCtr> )
|
||||
|
||||
#xcommand DEFINE OPTION <text> [OF <oSelect>] ;
|
||||
@@ -221,16 +221,16 @@
|
||||
#xCommand LINE BREAK ;
|
||||
IN <oForm> ;
|
||||
=> ;
|
||||
<oForm>:AddControl( "<BR>"+CRLF() )
|
||||
<oForm>:AddControl( "<BR>" + CRLF() )
|
||||
|
||||
|
||||
#xCommand LINE IN <oForm> ;
|
||||
=> ;
|
||||
<oForm>:AddControl( CRLF()+'<HR WIDTH = 100%>'+CRLF() )
|
||||
<oForm>:AddControl( CRLF() + "<HR WIDTH = 100%>" + CRLF() )
|
||||
|
||||
#xCommand SPACE <n> IN <oForm> ;
|
||||
=> ;
|
||||
<oForm>:AddControl( replicate( " ", <n> ) )
|
||||
<oForm>:AddControl( Replicate( " ", <n> ) )
|
||||
|
||||
|
||||
#xCommand TEXT <c> IN <oForm> ;
|
||||
@@ -243,33 +243,33 @@
|
||||
|
||||
|
||||
#xCommand START GROUP <c> IN <oForm> => ;
|
||||
<oForm>:AddControl( CRLF()+"<FIELDSET><LEGEND>"+<c>+"</LEGEND>"+CRLF() )
|
||||
<oForm>:AddControl( CRLF() + "<FIELDSET><LEGEND>" + <c> + "</LEGEND>" + CRLF() )
|
||||
|
||||
#xCommand END GROUP IN <oForm> => ;
|
||||
<oForm>:AddControl( CRLF()+"</FIELDSET>"+CRLF() )
|
||||
<oForm>:AddControl( CRLF() + "</FIELDSET>" + CRLF() )
|
||||
|
||||
|
||||
#xtranslate __TYPE__ => "TEXT"
|
||||
#xtranslate __TYPE__ <typ:EDIT> => "TEXT"
|
||||
#xtranslate __TYPE__ <typ:TEXT> => "TEXT"
|
||||
#xtranslate __TYPE__ <typ:TEXTAREA> => "TEXTAREA"
|
||||
#xtranslate __TYPE__ <typ:PASSWORD> => "PASSWORD"
|
||||
#xtranslate __TYPE__ <typ:IMAGE> => "IMAGE"
|
||||
#xtranslate __TYPE__ <typ:BUTTON> => "BUTTON"
|
||||
#xtranslate __TYPE__ <typ:CHECKBOX> => "CHECKBOX"
|
||||
#xtranslate __TYPE__ <typ:CHECK> => "CHECKBOX"
|
||||
#xtranslate __TYPE__ <typ:HIDDEN> => "HIDDEN"
|
||||
#xtranslate __TYPE__ <typ:RADIO> => "RADIO"
|
||||
#xtranslate __TYPE__ <typ:FILE> => "FILE"
|
||||
#xtranslate __TYPE__ <typ:RESET> => "RESET"
|
||||
#xtranslate __TYPE__ <typ:SUBMIT> => "SUBMIT"
|
||||
#xtranslate __TYPE__ <typ:SELECT> => "SELECT"
|
||||
#xtranslate __TYPE__ => "TEXT"
|
||||
#xtranslate __TYPE__ <typ:EDIT> => "TEXT"
|
||||
#xtranslate __TYPE__ <typ:TEXT> => "TEXT"
|
||||
#xtranslate __TYPE__ <typ:TEXTAREA> => "TEXTAREA"
|
||||
#xtranslate __TYPE__ <typ:PASSWORD> => "PASSWORD"
|
||||
#xtranslate __TYPE__ <typ:IMAGE> => "IMAGE"
|
||||
#xtranslate __TYPE__ <typ:BUTTON> => "BUTTON"
|
||||
#xtranslate __TYPE__ <typ:CHECKBOX> => "CHECKBOX"
|
||||
#xtranslate __TYPE__ <typ:CHECK> => "CHECKBOX"
|
||||
#xtranslate __TYPE__ <typ:HIDDEN> => "HIDDEN"
|
||||
#xtranslate __TYPE__ <typ:RADIO> => "RADIO"
|
||||
#xtranslate __TYPE__ <typ:FILE> => "FILE"
|
||||
#xtranslate __TYPE__ <typ:RESET> => "RESET"
|
||||
#xtranslate __TYPE__ <typ:SUBMIT> => "SUBMIT"
|
||||
#xtranslate __TYPE__ <typ:SELECT> => "SELECT"
|
||||
|
||||
#xtranslate __WRAP__ => NIL
|
||||
#xtranslate __WRAP__ <wrap:OFF> => "OFF"
|
||||
#xtranslate __WRAP__ <wrap:VIRTUAL> => "VIRTUAL"
|
||||
#xtranslate __WRAP__ <wrap:PHYSICAL> => "PHYSICAL"
|
||||
#xtranslate __WRAP__ <wrap:NORMAL> => "NORMAL"
|
||||
#xtranslate __WRAP__ => NIL
|
||||
#xtranslate __WRAP__ <wrap:OFF> => "OFF"
|
||||
#xtranslate __WRAP__ <wrap:VIRTUAL> => "VIRTUAL"
|
||||
#xtranslate __WRAP__ <wrap:PHYSICAL> => "PHYSICAL"
|
||||
#xtranslate __WRAP__ <wrap:NORMAL> => "NORMAL"
|
||||
|
||||
#xtranslate __ALIGN__ => NIL
|
||||
#xtranslate __ALIGN__ <aln:LEFT> => "LEFT"
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
[<new: NEW>] ;
|
||||
[<ro: READONLY>] ;
|
||||
=> ;
|
||||
netDbUse( <(cDBF)>, <(cAlias)>, <nSecs>, <cRDD>, ;
|
||||
NetDbUse( <(cDBF)>, <(cAlias)>, <nSecs>, <cRDD>, ;
|
||||
<.new.>, NET_OPEN_MODE, <.ro.> )
|
||||
|
||||
|
||||
@@ -154,7 +154,7 @@
|
||||
<oObj>:ClassAdd( <"cFld">,, {| Self | [<xpression>] },,)
|
||||
|
||||
|
||||
// --> ::undo() buffer constants
|
||||
// --> ::unDo() buffer constants
|
||||
|
||||
#define _WRITE_BUFFER 1
|
||||
#define _DELETE_BUFFER 2
|
||||
@@ -167,17 +167,17 @@
|
||||
[STEP <n>] ;
|
||||
IN <oTable> ;
|
||||
=> ;
|
||||
<oTable>:Undo( <nType>, [<n>] )
|
||||
<oTable>:UnDo( <nType>, [<n>] )
|
||||
|
||||
#xCommand END TRANSACTION IN <oTable> => <oTable>:SetMonitor( .F. )
|
||||
|
||||
#command SKIP in <o> => <o>:dbSkip(1)
|
||||
#command SKIP in <o> => <o>:dbSkip( 1 )
|
||||
#command SKIP <n> in <o> => <o>:dbSkip( <n> )
|
||||
|
||||
#command SEEK <xpr> ;
|
||||
[<soft: SOFTSEEK>] ;
|
||||
[<last: LAST>] in <o> ;
|
||||
=> <o>:dbSeek( <xpr>, if( <.soft.>, .T., NIL ), if( <.last.>, .T., NIL ) )
|
||||
[<last: LAST>] in <o> ;
|
||||
=> <o>:dbSeek( <xpr>, iif( <.soft.>, .T., NIL ), iif( <.last.>, .T., NIL ) )
|
||||
|
||||
#translate CSY_TYPE Character => "C"
|
||||
|
||||
@@ -192,7 +192,7 @@
|
||||
[ TYPE <cType> ] ;
|
||||
[ LEN <nLen> ] ;
|
||||
[ DEC <nDec> ] ;
|
||||
OF <oDbf> ;
|
||||
OF <oDbf> ;
|
||||
=> ;
|
||||
[ <oFld> := ] _TABLE_:AddField( <(cName)>,CSY_TYPE <cType>, <nLen>, <nDec>)
|
||||
#xCommand BUILD TABLE <o> => _TABLE_:Gentable()
|
||||
|
||||
@@ -1441,7 +1441,7 @@ METHOD OnError( uParam ) CLASS HBTable
|
||||
LOCAL nPos
|
||||
LOCAL uRet, oErr
|
||||
|
||||
IF uParam != NIL .AND. Left( cMsg, 1 ) == '_'
|
||||
IF uParam != NIL .AND. Left( cMsg, 1 ) == "_"
|
||||
cMsg := SubStr( cMsg, 2 )
|
||||
ENDIF
|
||||
nPos := ( ::Alias )->( FieldPos( cMsg ) )
|
||||
|
||||
@@ -50,64 +50,64 @@
|
||||
*/
|
||||
|
||||
#ifndef __WINTYPES_CH
|
||||
#define __WINTYPES_CH
|
||||
#define __WINTYPES_CH
|
||||
|
||||
#include "cstruct.ch"
|
||||
#include "cstruct.ch"
|
||||
|
||||
#define VOID CTYPE_VOID
|
||||
#define UINT CTYPE_UNSIGNED_INT
|
||||
#define HANDLE CTYPE_UNSIGNED_LONG
|
||||
#define HICON CTYPE_UNSIGNED_LONG
|
||||
#define HBITMAP CTYPE_UNSIGNED_LONG
|
||||
#define HCURSOR CTYPE_UNSIGNED_LONG
|
||||
#define HBRUSH CTYPE_UNSIGNED_LONG
|
||||
#define LPCSTR CTYPE_CHAR_PTR
|
||||
#define WNDPROC CTYPE_UNSIGNED_LONG
|
||||
#define BOOL CTYPE_LONG
|
||||
#define LPVOID CTYPE_VOID_PTR
|
||||
#define DWORD CTYPE_UNSIGNED_LONG
|
||||
#define WORD CTYPE_UNSIGNED_SHORT
|
||||
#define LPCTSTR CTYPE_CHAR_PTR
|
||||
#define COLORREF CTYPE_UNSIGNED_LONG
|
||||
#define BYTE CTYPE_CHAR
|
||||
#define TCHAR CTYPE_UNSIGNED_CHAR
|
||||
#define HINSTANCE CTYPE_UNSIGNED_LONG
|
||||
#define HMENU CTYPE_UNSIGNED_LONG
|
||||
#define HTREEITEM CTYPE_UNSIGNED_LONG
|
||||
#define INT CTYPE_INT
|
||||
#define int CTYPE_INT
|
||||
#define HWND CTYPE_UNSIGNED_LONG
|
||||
#define LPARAM CTYPE_LONG
|
||||
#define HGLOBAL CTYPE_UNSIGNED_LONG
|
||||
#define WPARAM CTYPE_INT
|
||||
#define HKEY CTYPE_UNSIGNED_LONG
|
||||
#define char CTYPE_CHAR
|
||||
#define LONG CTYPE_LONG
|
||||
#define BCHAR CTYPE_UNSIGNED_CHAR
|
||||
#define WCHAR CTYPE_UNSIGNED_SHORT
|
||||
#define DOUBLE CTYPE_DOUBLE
|
||||
#define LPTSTR CTYPE_CHAR_PTR
|
||||
#define LPSTR CTYPE_CHAR_PTR
|
||||
#define ULONG CTYPE_UNSIGNED_LONG
|
||||
#define UCHAR CTYPE_UNSIGNED_CHAR
|
||||
#define SHORT CTYPE_SHORT
|
||||
#define USHORT CTYPE_UNSIGNED_SHORT
|
||||
#define PVOID CTYPE_VOID_PTR
|
||||
#define ULONG_PTR CTYPE_UNSIGNED_LONG_PTR
|
||||
#define VOID CTYPE_VOID
|
||||
#define UINT CTYPE_UNSIGNED_INT
|
||||
#define HANDLE CTYPE_UNSIGNED_LONG
|
||||
#define HICON CTYPE_UNSIGNED_LONG
|
||||
#define HBITMAP CTYPE_UNSIGNED_LONG
|
||||
#define HCURSOR CTYPE_UNSIGNED_LONG
|
||||
#define HBRUSH CTYPE_UNSIGNED_LONG
|
||||
#define LPCSTR CTYPE_CHAR_PTR
|
||||
#define WNDPROC CTYPE_UNSIGNED_LONG
|
||||
#define BOOL CTYPE_LONG
|
||||
#define LPVOID CTYPE_VOID_PTR
|
||||
#define DWORD CTYPE_UNSIGNED_LONG
|
||||
#define WORD CTYPE_UNSIGNED_SHORT
|
||||
#define LPCTSTR CTYPE_CHAR_PTR
|
||||
#define COLORREF CTYPE_UNSIGNED_LONG
|
||||
#define BYTE CTYPE_CHAR
|
||||
#define TCHAR CTYPE_UNSIGNED_CHAR
|
||||
#define HINSTANCE CTYPE_UNSIGNED_LONG
|
||||
#define HMENU CTYPE_UNSIGNED_LONG
|
||||
#define HTREEITEM CTYPE_UNSIGNED_LONG
|
||||
#define INT CTYPE_INT
|
||||
#define int CTYPE_INT
|
||||
#define HWND CTYPE_UNSIGNED_LONG
|
||||
#define LPARAM CTYPE_LONG
|
||||
#define HGLOBAL CTYPE_UNSIGNED_LONG
|
||||
#define WPARAM CTYPE_INT
|
||||
#define HKEY CTYPE_UNSIGNED_LONG
|
||||
#define char CTYPE_CHAR
|
||||
#define LONG CTYPE_LONG
|
||||
#define BCHAR CTYPE_UNSIGNED_CHAR
|
||||
#define WCHAR CTYPE_UNSIGNED_SHORT
|
||||
#define DOUBLE CTYPE_DOUBLE
|
||||
#define LPTSTR CTYPE_CHAR_PTR
|
||||
#define LPSTR CTYPE_CHAR_PTR
|
||||
#define ULONG CTYPE_UNSIGNED_LONG
|
||||
#define UCHAR CTYPE_UNSIGNED_CHAR
|
||||
#define SHORT CTYPE_SHORT
|
||||
#define USHORT CTYPE_UNSIGNED_SHORT
|
||||
#define PVOID CTYPE_VOID_PTR
|
||||
#define ULONG_PTR CTYPE_UNSIGNED_LONG_PTR
|
||||
|
||||
#define LPOFNHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPCFHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPFRHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPPAGESETUPHOOK CTYPE_UNSIGNED_LONG
|
||||
#define LPPAGEPAINTHOOK CTYPE_UNSIGNED_LONG
|
||||
#define LPPRINTHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPSETUPHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPOFNHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPCFHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPFRHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPPAGESETUPHOOK CTYPE_UNSIGNED_LONG
|
||||
#define LPPAGEPAINTHOOK CTYPE_UNSIGNED_LONG
|
||||
#define LPPRINTHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
#define LPSETUPHOOKPROC CTYPE_UNSIGNED_LONG
|
||||
|
||||
#define BFFCALLBACK CTYPE_UNSIGNED_LONG
|
||||
#define BFFCALLBACK CTYPE_UNSIGNED_LONG
|
||||
|
||||
#define HDC CTYPE_UNSIGNED_LONG
|
||||
#define HIMAGELIST CTYPE_UNSIGNED_LONG
|
||||
#define HDC CTYPE_UNSIGNED_LONG
|
||||
#define HIMAGELIST CTYPE_UNSIGNED_LONG
|
||||
|
||||
#ytranslate CTYPE_INT(<x>) => Int(<x>) /* Fixes conflict with INT() function */
|
||||
#ytranslate CTYPE_Int( <x> ) => Int( <x> ) /* Fixes conflict with Int() function */
|
||||
|
||||
#endif /* __WINTYPES_CH */
|
||||
|
||||
@@ -61,31 +61,31 @@
|
||||
#pragma -ks+
|
||||
REQUEST XHB_LIB
|
||||
|
||||
#xtranslate __Keyboard([<x,...>]) => xhb__Keyboard(<x>)
|
||||
#xtranslate __CopyFile([<x,...>]) => xhb_CopyFile(<x>)
|
||||
#xtranslate __Keyboard( [<x,...>] ) => xhb__Keyboard( <x> )
|
||||
#xtranslate __CopyFile( [<x,...>] ) => xhb_CopyFile( <x> )
|
||||
|
||||
#xuntranslate AIns( =>
|
||||
#xuntranslate ADel( =>
|
||||
#xuntranslate AIns( =>
|
||||
#xuntranslate ADel( =>
|
||||
|
||||
#xtranslate AIns(<a>,<n>,[<x,...>]) => xhb_AIns(<a>,<n>,<x>)
|
||||
#xtranslate ADel(<a>,<n>,<l>) => xhb_ADel(<a>,<n>,<l>)
|
||||
#xtranslate AIns( <a>, <n>, [<x,...>] ) => xhb_AIns( <a>, <n>, <x> )
|
||||
#xtranslate ADel( <a>, <n>, <l> ) => xhb_ADel( <a>, <n>, <l> )
|
||||
|
||||
#xuntranslate NetName( =>
|
||||
#xuntranslate MemoWrit( =>
|
||||
#xuntranslate NetName( =>
|
||||
#xuntranslate MemoWrit( =>
|
||||
|
||||
#xtranslate NetName([<x,...>]) => xhb_NetName(<x>)
|
||||
#xtranslate MemoWrit([<x,...>]) => xhb_MemoWrit(<x>)
|
||||
#xtranslate NetName( [<x,...>] ) => xhb_NetName( <x> )
|
||||
#xtranslate MemoWrit( [<x,...>] ) => xhb_MemoWrit( <x> )
|
||||
|
||||
#xtranslate SaveScreen([<x,...>]) => xhb_SaveScreen(<x>)
|
||||
#xtranslate RestScreen([<x,...>]) => xhb_RestScreen(<x>)
|
||||
#xtranslate RTrim([<x,...>]) => xhb_RTrim(<x>)
|
||||
#xtranslate Trim([<x,...>]) => xhb_Trim(<x>)
|
||||
#xtranslate AllTrim([<x,...>]) => xhb_AllTrim(<x>)
|
||||
#xtranslate SaveScreen( [<x,...>] ) => xhb_SaveScreen( <x> )
|
||||
#xtranslate RestScreen( [<x,...>] ) => xhb_RestScreen( <x> )
|
||||
#xtranslate RTrim( [<x,...>] ) => xhb_RTrim( <x> )
|
||||
#xtranslate Trim( [<x,...>] ) => xhb_Trim( <x> )
|
||||
#xtranslate AllTrim( [<x,...>] ) => xhb_AllTrim( <x> )
|
||||
|
||||
/* _SET_TRACE* / TraceLog() */
|
||||
#xtranslate Set(_SET_TRACE [,<x,...>]) => xhb_setTrace( <x> )
|
||||
#xtranslate Set(_SET_TRACEFILE [,<x,...>]) => xhb_setTraceFile( <x> )
|
||||
#xtranslate Set(_SET_TRACESTACK [,<x,...>]) => xhb_setTraceStack( <x> )
|
||||
#xtranslate Set( _SET_TRACE [,<x,...>] ) => xhb_SetTrace( <x> )
|
||||
#xtranslate Set( _SET_TRACEFILE [,<x,...>] ) => xhb_SetTraceFile( <x> )
|
||||
#xtranslate Set( _SET_TRACESTACK [,<x,...>] ) => xhb_SetTraceStack( <x> )
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -102,7 +102,7 @@
|
||||
[SCOPE <scope>] [<persist: PERSISTENT>] ;
|
||||
[<case: NOUPPER>] => ;
|
||||
__clsAddMsg( <Class>():classH, #<Message>, ;
|
||||
{| Self | HB_SYMBOL_UNUSED( Self ), <code> }, ;
|
||||
{| Self | HB_SYMBOL_UNUsed( Self ), <code> }, ;
|
||||
HB_OO_MSG_INLINE, NIL, ;
|
||||
__xhb_cls_scope( <scope>, <.persist.> ) )
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
[SCOPE <scope>] [<persist: PERSISTENT>] ;
|
||||
[<case: NOUPPER>] => ;
|
||||
__clsAddMsg( <Class>():classH, #<Message>, ;
|
||||
{| Self, <params> | HB_SYMBOL_UNUSED( Self ), <code> }, ;
|
||||
{| Self, <params> | HB_SYMBOL_UNUsed( Self ), <code> }, ;
|
||||
HB_OO_MSG_INLINE, NIL, ;
|
||||
__xhb_cls_scope( <scope>, <.persist.> ) )
|
||||
|
||||
|
||||
@@ -969,7 +969,7 @@ FUNCTION Sp_Split( cWord )
|
||||
cWord2 := SubStr( cWord, x )
|
||||
IF Len( cWord1 ) > 1 .AND. Len( cWord2 ) > 1
|
||||
IF SP_Check( cWord1 ) .AND. SP_Check( cWord2 )
|
||||
AAdd( arr_, cWord1 + ' ' + cWord2 )
|
||||
AAdd( arr_, cWord1 + " " + cWord2 )
|
||||
ENDIF
|
||||
ENDIF
|
||||
NEXT
|
||||
|
||||
@@ -1163,7 +1163,7 @@ FUNCTION pdfText( cString, nTop, nLeft, nLength, nTab, nJustify, cUnits, cColor,
|
||||
LOCAL lParagraph, nSpace, nNew, nTokenLen, nCRLF, nTokens, nLen
|
||||
|
||||
__defaultNIL( @nTab, -1 )
|
||||
__defaultNIL( @cUnits, 'R' )
|
||||
__defaultNIL( @cUnits, "R" )
|
||||
__defaultNIL( @nJustify, 4 ) // justify
|
||||
__defaultNIL( @lPrint, .T. )
|
||||
__defaultNIL( @cColor, "" )
|
||||
@@ -1363,9 +1363,9 @@ FUNCTION pdfOpenHeader( cFile )
|
||||
IF ! Empty( cFile )
|
||||
cFile := AllTrim( cFile )
|
||||
IF Len( cFile ) > 12 .OR. ;
|
||||
At( ' ', cFile ) > 0 .OR. ;
|
||||
( At( ' ', cFile ) == 0 .AND. Len( cFile ) > 8 ) .OR. ;
|
||||
( ( nAt := At( '.', cFile ) ) > 0 .AND. Len( SubStr( cFile, nAt + 1 ) ) > 3 )
|
||||
At( " ", cFile ) > 0 .OR. ;
|
||||
( At( " ", cFile ) == 0 .AND. Len( cFile ) > 8 ) .OR. ;
|
||||
( ( nAt := At( ".", cFile ) ) > 0 .AND. Len( SubStr( cFile, nAt + 1 ) ) > 3 )
|
||||
COPY File ( cFile ) TO temp.tmp
|
||||
cFile := "temp.tmp"
|
||||
ENDIF
|
||||
@@ -1442,7 +1442,7 @@ FUNCTION pdfDisableHeader( cId )
|
||||
|
||||
FUNCTION pdfSaveHeader( cFile )
|
||||
|
||||
Array2File( 'temp.tmp', t_aReport[ HEADER ] )
|
||||
Array2File( "temp.tmp", t_aReport[ HEADER ] )
|
||||
COPY file temp.tmp to ( cFile )
|
||||
|
||||
RETURN NIL
|
||||
@@ -1809,7 +1809,7 @@ FUNCTION pdfCreateHeader( _file, _size, _orient, _lpi, _width )
|
||||
|
||||
FUNCTION pdfImageInfo( cFile )
|
||||
|
||||
LOCAL cTemp := Upper( SubStr( cFile, RAt( '.', cFile ) + 1 ) ), aTemp := {}
|
||||
LOCAL cTemp := Upper( SubStr( cFile, RAt( ".", cFile ) + 1 ) ), aTemp := {}
|
||||
|
||||
DO CASE
|
||||
CASE cTemp == "TIF"
|
||||
@@ -1833,10 +1833,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
|
||||
nHandle := FOpen( cFile )
|
||||
|
||||
c2 := ' '
|
||||
c2 := " "
|
||||
FRead( nHandle, @c2, 2 )
|
||||
FRead( nHandle, @c2, 2 )
|
||||
cIFDNext := ' '
|
||||
cIFDNext := " "
|
||||
FRead( nHandle, @cIFDNext, 4 )
|
||||
|
||||
cTemp := Space( 12 )
|
||||
@@ -1847,7 +1847,7 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
nIFD := Bin2L( cIFDNext )
|
||||
|
||||
FSeek( nHandle, nIFD )
|
||||
// ? '*** IFD ' + hb_ntos( ++nPages )
|
||||
// ? "*** IFD " + hb_ntos( ++nPages )
|
||||
|
||||
FRead( nHandle, @c2, 2 )
|
||||
nFields := Bin2I( c2 )
|
||||
@@ -1896,9 +1896,9 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
IF nFieldType == ASCII
|
||||
--nCount
|
||||
ENDIF
|
||||
// ? 'Tag'
|
||||
// ?? ' ' + padr( nTag, 10 )
|
||||
// cTag := ''
|
||||
// ? "Tag"
|
||||
// ?? " " + padr( nTag, 10 )
|
||||
// cTag := ""
|
||||
DO CASE
|
||||
CASE nTag == 256
|
||||
/*
|
||||
@@ -1907,11 +1907,11 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = SHORT or LONG
|
||||
The number of columns in the image, i.e., the number of pixels per scanline.
|
||||
*/
|
||||
// ?? 'ImageWidth'
|
||||
// cTag := 'ImageWidth'
|
||||
// ?? "ImageWidth"
|
||||
// cTag := "ImageWidth"
|
||||
#if 0
|
||||
IF nFieldType != SHORT .AND. nFieldType != LONG
|
||||
Alert( 'Wrong Type for ImageWidth' )
|
||||
Alert( "Wrong Type for ImageWidth" )
|
||||
ENDIF
|
||||
#endif
|
||||
IF nFieldType == SHORT
|
||||
@@ -1927,11 +1927,11 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = SHORT or LONG
|
||||
The number of rows (sometimes described as scanlines) in the image.
|
||||
*/
|
||||
// ?? 'ImageLength'
|
||||
// cTag := 'ImageLength'
|
||||
// ?? "ImageLength"
|
||||
// cTag := "ImageLength"
|
||||
#if 0
|
||||
IF nFieldType != SHORT .AND. nFieldType != LONG
|
||||
Alert( 'Wrong Type for ImageLength' )
|
||||
Alert( "Wrong Type for ImageLength" )
|
||||
ENDIF
|
||||
#endif
|
||||
IF nFieldType == SHORT
|
||||
@@ -1949,17 +1949,17 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Allowable values for Baseline TIFF grayscale images are 4 and 8, allowing either
|
||||
16 or 256 distinct shades of gray.
|
||||
*/
|
||||
// ?? 'BitsPerSample'
|
||||
// cTag := 'BitsPerSample'
|
||||
// ?? "BitsPerSample"
|
||||
// cTag := "BitsPerSample"
|
||||
nTemp := 0
|
||||
IF nFieldType == SHORT
|
||||
nTemp := Bin2W( cValues )
|
||||
ELSE
|
||||
// alert('Wrong Type for BitsPerSample')
|
||||
// Alert( "Wrong Type for BitsPerSample" )
|
||||
ENDIF
|
||||
nBits := nTemp
|
||||
// IF nTemp != 4 .and. nTemp != 8
|
||||
// alert('Wrong Value for BitsPerSample')
|
||||
// Alert( "Wrong Value for BitsPerSample" )
|
||||
// ENDIF
|
||||
CASE nTag == 259
|
||||
/*
|
||||
@@ -1978,16 +1978,16 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
unaffected.
|
||||
Baseline TIFF readers must handle all three compression schemes.
|
||||
*/
|
||||
// ?? 'Compression'
|
||||
// cTag := 'Compression'
|
||||
// ?? "Compression"
|
||||
// cTag := "Compression"
|
||||
/*nTemp := 0
|
||||
IF nFieldType == SHORT
|
||||
nTemp := bin2w( cValues )
|
||||
ELSE
|
||||
//alert('Wrong Type for Compression')
|
||||
// Alert( "Wrong Type for Compression" )
|
||||
ENDIF*/
|
||||
// IF nTemp != 1 .and. nTemp != 2 .and. nTemp != 32773
|
||||
// alert('Wrong Value for Compression')
|
||||
// Alert( "Wrong Value for Compression" )
|
||||
// ENDIF
|
||||
CASE nTag == 262
|
||||
/*
|
||||
@@ -2001,16 +2001,16 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
value is imaged as white. If this value is specified for Compression=2, the
|
||||
image should display and print reversed.
|
||||
*/
|
||||
// ?? 'PhotometricInterpretation'
|
||||
// cTag := 'PhotometricInterpretation'
|
||||
// ?? "PhotometricInterpretation"
|
||||
// cTag := "PhotometricInterpretation"
|
||||
nTemp := -1
|
||||
IF nFieldType == SHORT
|
||||
nTemp := Bin2W( cValues )
|
||||
ELSE
|
||||
// alert('Wrong Type for PhotometricInterpretation')
|
||||
// Alert( "Wrong Type for PhotometricInterpretation" )
|
||||
ENDIF
|
||||
IF nTemp != 0 .AND. nTemp != 1 .AND. nTemp != 2 .AND. nTemp != 3
|
||||
// alert('Wrong Value for PhotometricInterpretation')
|
||||
// Alert( "Wrong Value for PhotometricInterpretation" )
|
||||
ENDIF
|
||||
CASE nTag == 264
|
||||
/*
|
||||
@@ -2021,10 +2021,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
N = 1
|
||||
No default. See also Threshholding.
|
||||
*/
|
||||
// ?? 'CellWidth'
|
||||
// cTag := 'CellWidth'
|
||||
// ?? "CellWidth"
|
||||
// cTag := "CellWidth"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for CellWidth')
|
||||
// Alert( "Wrong Type for CellWidth" )
|
||||
ENDIF
|
||||
CASE nTag == 265
|
||||
/*
|
||||
@@ -2037,10 +2037,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
This field should only be present if Threshholding = 2
|
||||
No default. See also Threshholding.
|
||||
*/
|
||||
// ?? 'CellLength'
|
||||
// cTag := 'CellLength'
|
||||
// ?? "CellLength"
|
||||
// cTag := "CellLength"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for CellLength')
|
||||
// Alert( "Wrong Type for CellLength" )
|
||||
ENDIF
|
||||
CASE nTag == 266
|
||||
/*
|
||||
@@ -2050,10 +2050,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = SHORT
|
||||
N = 1
|
||||
*/
|
||||
// ?? 'FillOrder'
|
||||
// cTag := 'FillOrder'
|
||||
// ?? "FillOrder"
|
||||
// cTag := "FillOrder"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for FillOrder')
|
||||
// Alert( "Wrong Type for FillOrder" )
|
||||
ENDIF
|
||||
CASE nTag == 273
|
||||
/*
|
||||
@@ -2062,10 +2062,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = SHORT or LONG
|
||||
For each strip, the byte offset of that strip.
|
||||
*/
|
||||
// ?? 'StripOffsets'
|
||||
// cTag := 'StripOffsets'
|
||||
// ?? "StripOffsets"
|
||||
// cTag := "StripOffsets"
|
||||
IF nFieldType != SHORT .AND. nFieldType != LONG
|
||||
// alert('Wrong Type for StripOffsets')
|
||||
// Alert( "Wrong Type for StripOffsets" )
|
||||
ENDIF
|
||||
|
||||
IF nFieldType == SHORT
|
||||
@@ -2082,10 +2082,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
The number of components per pixel. This number is 3 for RGB images, unless
|
||||
extra samples are present. See the ExtraSamples field for further information.
|
||||
*/
|
||||
// ?? 'SamplesPerPixel'
|
||||
// cTag := 'SamplesPerPixel'
|
||||
// ?? "SamplesPerPixel"
|
||||
// cTag := "SamplesPerPixel"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for SamplesPerPixel')
|
||||
// Alert( "Wrong Type for SamplesPerPixel" )
|
||||
ENDIF
|
||||
CASE nTag == 278
|
||||
/*
|
||||
@@ -2098,10 +2098,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
third strip. (The data in the last strip is not padded with 6 extra rows of dummy
|
||||
data.)
|
||||
*/
|
||||
// ?? 'RowsPerStrip'
|
||||
// cTag := 'RowsPerStrip'
|
||||
// ?? "RowsPerStrip"
|
||||
// cTag := "RowsPerStrip"
|
||||
IF nFieldType != SHORT .AND. nFieldType != LONG
|
||||
// alert('Wrong Type for RowsPerStrip')
|
||||
// Alert( "Wrong Type for RowsPerStrip" )
|
||||
ENDIF
|
||||
CASE nTag == 279
|
||||
/*
|
||||
@@ -2110,10 +2110,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = SHORT or LONG
|
||||
For each strip, the number of bytes in that strip after any compression.
|
||||
*/
|
||||
// ?? 'StripByteCounts'
|
||||
// cTag := 'StripByteCounts'
|
||||
// ?? "StripByteCounts"
|
||||
// cTag := "StripByteCounts"
|
||||
IF nFieldType != SHORT .AND. nFieldType != LONG
|
||||
// alert('Wrong Type for StripByteCounts')
|
||||
// Alert( "Wrong Type for StripByteCounts" )
|
||||
ENDIF
|
||||
|
||||
IF nFieldType == SHORT
|
||||
@@ -2132,10 +2132,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
The number of pixels per ResolutionUnit in the ImageWidth (typically, horizontal
|
||||
- see Orientation) direction.
|
||||
*/
|
||||
// ?? 'XResolution'
|
||||
// cTag := 'XResolution'
|
||||
// ?? "XResolution"
|
||||
// cTag := "XResolution"
|
||||
IF nFieldType != RATIONAL
|
||||
// alert('Wrong Type for XResolution')
|
||||
// Alert( "Wrong Type for XResolution" )
|
||||
ENDIF
|
||||
xRes := Bin2L( SubStr( cValues, 1, 4 ) )
|
||||
CASE nTag == 283
|
||||
@@ -2146,17 +2146,17 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
The number of pixels per ResolutionUnit in the ImageLength (typically, vertical)
|
||||
direction.
|
||||
*/
|
||||
// ?? 'YResolution'
|
||||
// cTag := 'YResolution'
|
||||
// ?? "YResolution"
|
||||
// cTag := "YResolution"
|
||||
IF nFieldType != RATIONAL
|
||||
// alert('Wrong Type for YResolution')
|
||||
// Alert( "Wrong Type for YResolution" )
|
||||
ENDIF
|
||||
yRes := Bin2L( SubStr( cValues, 1, 4 ) )
|
||||
CASE nTag == 284
|
||||
// ?? 'PlanarConfiguration'
|
||||
// cTag := 'PlanarConfiguration'
|
||||
// ?? "PlanarConfiguration"
|
||||
// cTag := "PlanarConfiguration"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for PlanarConfiguration')
|
||||
// Alert( "Wrong Type for PlanarConfiguration" )
|
||||
ENDIF
|
||||
CASE nTag == 288
|
||||
/*
|
||||
@@ -2168,10 +2168,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Not recommended for general interchange.
|
||||
See also FreeByteCounts.
|
||||
*/
|
||||
// ?? 'FreeOffsets'
|
||||
// cTag := 'FreeOffsets'
|
||||
// ?? "FreeOffsets"
|
||||
// cTag := "FreeOffsets"
|
||||
IF nFieldType != LONG
|
||||
// alert('Wrong Type for FreeOffsets')
|
||||
// Alert( "Wrong Type for FreeOffsets" )
|
||||
ENDIF
|
||||
CASE nTag == 289
|
||||
/*
|
||||
@@ -2183,10 +2183,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Not recommended for general interchange.
|
||||
See also FreeOffsets.
|
||||
*/
|
||||
// ?? 'FreeByteCounts'
|
||||
// cTag := 'FreeByteCounts'
|
||||
// ?? "FreeByteCounts"
|
||||
// cTag := "FreeByteCounts"
|
||||
IF nFieldType != LONG
|
||||
// alert('Wrong Type for FreeByteCounts')
|
||||
// Alert( "Wrong Type for FreeByteCounts" )
|
||||
ENDIF
|
||||
CASE nTag == 296
|
||||
/*
|
||||
@@ -2200,22 +2200,22 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
3 = Centimeter.
|
||||
Default = 2 (inch).
|
||||
*/
|
||||
// ?? 'ResolutionUnit'
|
||||
// cTag := 'ResolutionUnit'
|
||||
// ?? "ResolutionUnit"
|
||||
// cTag := "ResolutionUnit"
|
||||
nTemp := 0
|
||||
IF nFieldType == SHORT
|
||||
nTemp := Bin2W( cValues )
|
||||
ELSE
|
||||
// alert('Wrong Type for ResolutionUnit')
|
||||
// Alert( "Wrong Type for ResolutionUnit" )
|
||||
ENDIF
|
||||
IF nTemp != 1 .AND. nTemp != 2 .AND. nTemp != 3
|
||||
// alert('Wrong Value for ResolutionUnit')
|
||||
// Alert( "Wrong Value for ResolutionUnit" )
|
||||
ENDIF
|
||||
CASE nTag == 305
|
||||
// ?? 'Software'
|
||||
// cTag := 'Software'
|
||||
// ?? "Software"
|
||||
// cTag := "Software"
|
||||
IF nFieldType != ASCII
|
||||
// alert('Wrong Type for Software')
|
||||
// Alert( "Wrong Type for Software" )
|
||||
ENDIF
|
||||
CASE nTag == 306
|
||||
/*
|
||||
@@ -2228,10 +2228,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
clock, and one space character between the date and the time. The length of the
|
||||
string, including the terminating NUL, is 20 bytes.
|
||||
*/
|
||||
// ?? 'DateTime'
|
||||
// cTag := 'DateTime'
|
||||
// ?? "DateTime"
|
||||
// cTag := "DateTime"
|
||||
IF nFieldType != ASCII
|
||||
// alert('Wrong Type for DateTime')
|
||||
// Alert( "Wrong Type for DateTime" )
|
||||
ENDIF
|
||||
CASE nTag == 315
|
||||
/*
|
||||
@@ -2241,10 +2241,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = ASCII
|
||||
Note: some older TIFF files used this tag for storing Copyright information.
|
||||
*/
|
||||
// ?? 'Artist'
|
||||
// cTag := 'Artist'
|
||||
// ?? "Artist"
|
||||
// cTag := "Artist"
|
||||
IF nFieldType != ASCII
|
||||
// alert('Wrong Type for Artist')
|
||||
// Alert( "Wrong Type for Artist" )
|
||||
ENDIF
|
||||
CASE nTag == 320
|
||||
/*
|
||||
@@ -2260,10 +2260,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
then the Blue values. In the ColorMap, black is represented by 0,0,0 and white is
|
||||
represented by 65535, 65535, 65535.
|
||||
*/
|
||||
// ?? 'ColorMap'
|
||||
// cTag := 'ColorMap'
|
||||
// ?? "ColorMap"
|
||||
// cTag := "ColorMap"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for ColorMap')
|
||||
// Alert( "Wrong Type for ColorMap" )
|
||||
ENDIF
|
||||
CASE nTag == 338
|
||||
/*
|
||||
@@ -2273,10 +2273,10 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
Type = SHORT
|
||||
N = m
|
||||
*/
|
||||
// ?? 'ExtraSamples'
|
||||
// cTag := 'ExtraSamples'
|
||||
// ?? "ExtraSamples"
|
||||
// cTag := "ExtraSamples"
|
||||
IF nFieldType != SHORT
|
||||
// alert('Wrong Type for ExtraSamples')
|
||||
// Alert( "Wrong Type for ExtraSamples" )
|
||||
ENDIF
|
||||
CASE nTag == 33432
|
||||
/*
|
||||
@@ -2289,68 +2289,68 @@ FUNCTION pdfTIFFInfo( cFile )
|
||||
any dates and statements of claims. For example, Copyright, John Smith, 19xx.
|
||||
All rights reserved.
|
||||
*/
|
||||
// ?? 'Copyright'
|
||||
// cTag := 'Copyright'
|
||||
// ?? "Copyright"
|
||||
// cTag := "Copyright"
|
||||
IF nFieldType != ASCII
|
||||
// alert('Wrong Type for Copyright')
|
||||
// Alert( "Wrong Type for Copyright" )
|
||||
ENDIF
|
||||
OTHERWISE
|
||||
// ?? 'Unknown'
|
||||
// cTag := 'Unknown'
|
||||
// ?? "Unknown"
|
||||
// cTag := "Unknown"
|
||||
ENDCASE
|
||||
#if 0
|
||||
?? PadR( cTag, 30 )
|
||||
?? ' type ' + PadR( aType[ nFieldType ], 10 ) + ' count ' + hb_ntos( nCount ) + ' <'
|
||||
?? " type " + PadR( aType[ nFieldType ], 10 ) + " count " + hb_ntos( nCount ) + " <"
|
||||
DO CASE
|
||||
CASE nFieldType == BYTE
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Asc( SubStr( cValues, nI, 1 ) ) )
|
||||
?? " " + hb_ntos( Asc( SubStr( cValues, nI, 1 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == ASCII
|
||||
?? ' '
|
||||
?? " "
|
||||
FOR nI := 1 TO nCount
|
||||
?? SubStr( cValues, nI, 1 )
|
||||
NEXT
|
||||
CASE nFieldType == SHORT
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Bin2W( SubStr( cValues, ( nI - 1 ) * 2 + 1, 2 ) ) )
|
||||
?? " " + hb_ntos( Bin2W( SubStr( cValues, ( nI - 1 ) * 2 + 1, 2 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == LONG
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 4 + 1, 4 ) ) )
|
||||
?? " " + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 4 + 1, 4 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == RATIONAL
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 8 + 1, 4 ) ) ) + '/' + hb_ntos( Bin2L( SubStr( cValues, nI + 4, 4 ) ) )
|
||||
?? " " + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 8 + 1, 4 ) ) ) + "/" + hb_ntos( Bin2L( SubStr( cValues, nI + 4, 4 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == SBYTE
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Asc( SubStr( cValues, nI, 1 ) ) )
|
||||
?? " " + hb_ntos( Asc( SubStr( cValues, nI, 1 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == UNDEFINED
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + SubStr( cValues, nI, 1 )
|
||||
?? " " + SubStr( cValues, nI, 1 )
|
||||
NEXT
|
||||
CASE nFieldType == SSHORT
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Bin2I( SubStr( cValues, ( nI - 1 ) * 2 + 1, 2 ) ) )
|
||||
?? " " + hb_ntos( Bin2I( SubStr( cValues, ( nI - 1 ) * 2 + 1, 2 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == SLONG
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 4 + 1, 4 ) ) )
|
||||
?? " " + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 4 + 1, 4 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == SRATIONAL
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 8 + 1, 4 ) ) ) + '/' + hb_ntos( Bin2L( SubStr( cValues, nI + 4, 4 ) ) )
|
||||
?? " " + hb_ntos( Bin2L( SubStr( cValues, ( nI - 1 ) * 8 + 1, 4 ) ) ) + "/" + hb_ntos( Bin2L( SubStr( cValues, nI + 4, 4 ) ) )
|
||||
NEXT
|
||||
CASE nFieldType == FLOAT
|
||||
CASE nFieldType == DOUBLE
|
||||
FOR nI := 1 TO nCount
|
||||
?? ' ' + hb_ntos( ctof( SubStr( cValues, ( nI - 1 ) * 8 + 1, 8 ) ) )
|
||||
?? " " + hb_ntos( ctof( SubStr( cValues, ( nI - 1 ) * 8 + 1, 8 ) ) )
|
||||
NEXT
|
||||
|
||||
ENDCASE
|
||||
?? ' >'
|
||||
?? " >"
|
||||
#endif
|
||||
NEXT
|
||||
FRead( nHandle, @cIFDNext, 4 )
|
||||
@@ -2528,7 +2528,7 @@ STATIC FUNCTION WriteData( hFile, xData )
|
||||
ELSEIF HB_ISDATE( xData )
|
||||
cData += I2Bin( 8 ) + DToS( xData )
|
||||
ELSEIF HB_ISLOGICAL( xData )
|
||||
cData += I2Bin( 1 ) + iif( xData, 'T', 'F' )
|
||||
cData += I2Bin( 1 ) + iif( xData, "T", "F" )
|
||||
ELSEIF HB_ISARRAY( xData )
|
||||
cData += I2Bin( Len( xData ) )
|
||||
ELSE
|
||||
@@ -2549,7 +2549,7 @@ STATIC FUNCTION File2Array( cFile, nLen, hFile )
|
||||
ENDIF
|
||||
cData := Space( 3 )
|
||||
FRead( hFile, @cData, 3 )
|
||||
IF !( Left( cData, 1 ) == 'A' )
|
||||
IF !( Left( cData, 1 ) == "A" )
|
||||
RETURN aRay
|
||||
ENDIF
|
||||
nLen := Bin2I( Right( cData, 2 ) )
|
||||
@@ -2562,7 +2562,7 @@ STATIC FUNCTION File2Array( cFile, nLen, hFile )
|
||||
ENDIF
|
||||
cType := PadL( cData, 1 )
|
||||
nDataLen := Bin2I( Right( cData, 2 ) )
|
||||
IF !( cType == 'A' )
|
||||
IF !( cType == "A" )
|
||||
cData := Space( nDataLen )
|
||||
nBytes := FRead( hFile, @cData, nDataLen )
|
||||
IF nBytes < nDataLen
|
||||
@@ -2571,15 +2571,15 @@ STATIC FUNCTION File2Array( cFile, nLen, hFile )
|
||||
ENDIF
|
||||
nDepth++
|
||||
AAdd( aRay, NIL )
|
||||
IF cType == 'C'
|
||||
IF cType == "C"
|
||||
aRay[ nDepth ] := cData
|
||||
ELSEIF cType == 'N'
|
||||
ELSEIF cType == "N"
|
||||
aRay[ nDepth ] := Val( cData )
|
||||
ELSEIF cType == 'D'
|
||||
ELSEIF cType == "D"
|
||||
aRay[ nDepth ] := CToD( Left( cData, 4 ) + "/" + SubStr( cData, 5, 2 ) + "/" + SubStr( cData, 7, 2 ) ) // stod(cData)
|
||||
ELSEIF cType == 'L'
|
||||
aRay[ nDepth ] := ( cData == 'T' )
|
||||
ELSEIF cType == 'A'
|
||||
ELSEIF cType == "L"
|
||||
aRay[ nDepth ] := ( cData == "T" )
|
||||
ELSEIF cType == "A"
|
||||
aRay[ nDepth ] := File2Array(, nDataLen, hFile )
|
||||
ENDIF
|
||||
ENDDO
|
||||
|
||||
@@ -343,11 +343,11 @@ FUNCTION uhttpd_URLEncode( cString, lComplete )
|
||||
CASE ( cChar >= "A" .AND. cChar <= "Z" ) .OR. ;
|
||||
( cChar >= "a" .AND. cChar <= "z" ) .OR. ;
|
||||
( cChar >= "0" .AND. cChar <= "9" ) .OR. ;
|
||||
cChar == '.' .OR. cChar == ',' .OR. cChar == '&' .OR. ;
|
||||
cChar == '/' .OR. cChar == ';' .OR. cChar == '_'
|
||||
cChar == "." .OR. cChar == "," .OR. cChar == "&" .OR. ;
|
||||
cChar == "/" .OR. cChar == ";" .OR. cChar == "_"
|
||||
cRet += cChar
|
||||
|
||||
CASE iif( ! lComplete, cChar == ':' .OR. cChar == '?' .OR. cChar == '=', .F. )
|
||||
CASE iif( ! lComplete, cChar == ":" .OR. cChar == "?" .OR. cChar == "=", .F. )
|
||||
cRet += cChar
|
||||
|
||||
OTHERWISE
|
||||
@@ -482,7 +482,7 @@ FUNCTION uhttpd_OutputString( cString, aTranslate, lProtected )
|
||||
LOCAL cHtml
|
||||
|
||||
__defaultNIL( @lProtected, .F. )
|
||||
__defaultNIL( @aTranslate, { { '"', '"' }, { ' ', ' ' } } )
|
||||
__defaultNIL( @aTranslate, { { '"', """ }, { " ", " " } } )
|
||||
|
||||
// TraceLog( "OutputString( cString, aTranslate, lProtected )", cString, aTranslate, lProtected )
|
||||
IF lProtected
|
||||
@@ -497,9 +497,9 @@ FUNCTION uhttpd_OutputString( cString, aTranslate, lProtected )
|
||||
FUNCTION uhttpd_HtmlSpecialChars( cString, cQuote_style )
|
||||
|
||||
LOCAL aTranslations := { ;
|
||||
{ '&', '&' }, ;
|
||||
{ '<', '<' }, ;
|
||||
{ '>', '>' } }
|
||||
{ "&", "&" }, ;
|
||||
{ "<", "<" }, ;
|
||||
{ ">", ">" } }
|
||||
|
||||
RETURN uhttpd_HtmlConvertChars( cString, cQuote_style, aTranslations )
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ FUNCTION HRBMAIN()
|
||||
|
||||
hGets := _REQUEST
|
||||
|
||||
DEFAULT hGets TO { => }
|
||||
hb_default( @hGets, { => } )
|
||||
|
||||
IF hb_HHasKey( hGets, "page" )
|
||||
|
||||
@@ -116,7 +116,7 @@ FUNCTION HRBMAIN()
|
||||
|
||||
uhttpd_SetHeader( "Content-Type", "text/xml" )
|
||||
uhttpd_Write( '<?xml version="1.0" encoding="ISO-8859-1"?>' )
|
||||
uhttpd_Write( '<pages><page>No Data</page></pages>' )
|
||||
uhttpd_Write( "<pages><page>No Data</page></pages>" )
|
||||
|
||||
ENDIF
|
||||
|
||||
@@ -353,7 +353,7 @@ METHOD xmlEncode( input ) CLASS TableManager
|
||||
FOR i := 1 TO Len( input )
|
||||
c := SubStr( input, i, 1 )
|
||||
SWITCH c
|
||||
CASE '&'
|
||||
CASE "&"
|
||||
out += "&"
|
||||
EXIT
|
||||
CASE "'"
|
||||
@@ -362,14 +362,14 @@ METHOD xmlEncode( input ) CLASS TableManager
|
||||
CASE '"'
|
||||
out += """
|
||||
EXIT
|
||||
CASE '<'
|
||||
CASE "<"
|
||||
out += "<"
|
||||
EXIT
|
||||
CASE '>'
|
||||
CASE ">"
|
||||
out += ">"
|
||||
EXIT
|
||||
#if 0
|
||||
CASE ' '
|
||||
CASE " "
|
||||
out += " "
|
||||
EXIT
|
||||
#endif
|
||||
|
||||
@@ -272,7 +272,7 @@ METHOD Start( cSID ) CLASS uhttpd_Session
|
||||
|
||||
// Should we define the SID?
|
||||
IF lDefine_SID
|
||||
cSID := ::cName + '=' + ::cSID
|
||||
cSID := ::cName + "=" + ::cSID
|
||||
_REQUEST[ ::cName ] := ::cSID
|
||||
ENDIF
|
||||
|
||||
@@ -282,7 +282,7 @@ METHOD Start( cSID ) CLASS uhttpd_Session
|
||||
|
||||
// Start session
|
||||
IF ! ::Open( ::cSavePath, ::cName )
|
||||
uhttpd_Die( 'ERROR: Failed to open session file' )
|
||||
uhttpd_Die( "ERROR: Failed to open session file" )
|
||||
ENDIF
|
||||
|
||||
// Read session data
|
||||
@@ -337,11 +337,11 @@ METHOD Close() CLASS uhttpd_Session
|
||||
|
||||
// Save session
|
||||
IF ! ::Write( ::cSID, cVal )
|
||||
uhttpd_Die( 'Session could not be saved.' )
|
||||
uhttpd_Die( "Session could not be saved." )
|
||||
ENDIF
|
||||
// Close session
|
||||
IF ! Eval( ::bClose )
|
||||
uhttpd_Die( 'Session could not be closed.' )
|
||||
uhttpd_Die( "Session could not be closed." )
|
||||
ENDIF
|
||||
::nActiveSessions--
|
||||
|
||||
@@ -826,7 +826,7 @@ METHOD Decode( cData ) CLASS uhttpd_Session
|
||||
|
||||
SWITCH ValType( xVal )
|
||||
#if 0
|
||||
CASE 'O'
|
||||
CASE "O"
|
||||
// TraceLog( "Decode - xVal - Object", xVal )
|
||||
IF xVal:classname == "TASSOCIATIVEARRAY"
|
||||
// TraceLog( "Decode - xVal - Object - TAssociativeArray - Keys", xVal:Keys )
|
||||
@@ -838,7 +838,7 @@ METHOD Decode( cData ) CLASS uhttpd_Session
|
||||
EXIT
|
||||
#endif
|
||||
|
||||
CASE 'A' // Le variabili sono conservate come array { VarName, Value }
|
||||
CASE "A" // Le variabili sono conservate come array { VarName, Value }
|
||||
// TraceLog( "Decode - xVal - Array", xVal )
|
||||
// ::oCGI:ToLogFile( "Decode - xVal - Array = " + hb_CStr( xVal ) + ", Len = " + hb_CStr( Len( xVal ) ), "/pointtoit/tmp/log.txt" )
|
||||
FOR EACH aElem IN xVal
|
||||
@@ -861,24 +861,24 @@ METHOD SendCacheLimiter() CLASS uhttpd_Session
|
||||
LOCAL dDate
|
||||
|
||||
DO CASE
|
||||
CASE ::cCache_Limiter == 'nocache'
|
||||
// uhttpd_SetHeader( 'Expires', 'Thu, 19 Nov 1981 08:52:00 GMT' )
|
||||
uhttpd_SetHeader( 'Expires', uhttpd_DateToGMT( ,, -1, ) )
|
||||
uhttpd_SetHeader( 'Cache-Control', 'no-cache' )
|
||||
// uhttpd_SetHeader("Cache-Control", "no-store, no-cache, must-revalidate") // HTTP/1.1
|
||||
// uhttpd_SetHeader("Cache-Control", "post-check=0, pre-check=0", .F. )
|
||||
uhttpd_SetHeader( 'Pragma', 'no-cache' )
|
||||
CASE ::cCache_Limiter == 'private'
|
||||
uhttpd_SetHeader( 'Expires', 'Thu, 19 Nov 1981 08:52:00 GMT' )
|
||||
uhttpd_SetHeader( 'Cache-Control', 'private, max-age=' + hb_ntos( ::nCache_Expire * 60 ) )
|
||||
CASE ::cCache_Limiter == "nocache"
|
||||
// uhttpd_SetHeader( "Expires", "Thu, 19 Nov 1981 08:52:00 GMT" )
|
||||
uhttpd_SetHeader( "Expires", uhttpd_DateToGMT( ,, -1, ) )
|
||||
uhttpd_SetHeader( "Cache-Control", "no-cache" )
|
||||
// uhttpd_SetHeader( "Cache-Control", "no-store, no-cache, must-revalidate" ) // HTTP/1.1
|
||||
// uhttpd_SetHeader( "Cache-Control", "post-check=0, pre-check=0", .F. )
|
||||
uhttpd_SetHeader( "Pragma", "no-cache" )
|
||||
CASE ::cCache_Limiter == "private"
|
||||
uhttpd_SetHeader( "Expires", "Thu, 19 Nov 1981 08:52:00 GMT" )
|
||||
uhttpd_SetHeader( "Cache-Control", "private, max-age=" + hb_ntos( ::nCache_Expire * 60 ) )
|
||||
IF hb_FGetDateTime( hb_argv( 0 ), @dDate )
|
||||
uhttpd_SetHeader( 'Last-Modified', uhttpd_DateToGMT( dDate ) )
|
||||
uhttpd_SetHeader( "Last-Modified", uhttpd_DateToGMT( dDate ) )
|
||||
ENDIF
|
||||
CASE ::cCache_Limiter == 'public'
|
||||
uhttpd_SetHeader( 'Expires', uhttpd_DateToGMT( ,,, ::nCache_Expire * 60 ) )
|
||||
uhttpd_SetHeader( 'Cache-Control', 'public, max-age=' + hb_ntos( ::nCache_Expire * 60 ) )
|
||||
CASE ::cCache_Limiter == "public"
|
||||
uhttpd_SetHeader( "Expires", uhttpd_DateToGMT( ,,, ::nCache_Expire * 60 ) )
|
||||
uhttpd_SetHeader( "Cache-Control", "public, max-age=" + hb_ntos( ::nCache_Expire * 60 ) )
|
||||
IF hb_FGetDateTime( hb_argv( 0 ), @dDate )
|
||||
uhttpd_SetHeader( 'Last-Modified', uhttpd_DateToGMT( dDate ) )
|
||||
uhttpd_SetHeader( "Last-Modified", uhttpd_DateToGMT( dDate ) )
|
||||
ENDIF
|
||||
OTHERWISE
|
||||
uhttpd_Die( "ERROR: Caching method " + ::cCache_Limiter + " not implemented." )
|
||||
|
||||
@@ -1239,7 +1239,7 @@ STATIC FUNCTION ParseRequest( cRequest )
|
||||
// hb_toOutDebug( "GET: cFields = %s, hVars = %s, _GET = %s, _REQUEST = %s\n\r", cFields, hb_ValToExp( hVars ), hb_ValToExp( _GET ), hb_ValToExp( _REQUEST ) )
|
||||
|
||||
// POST
|
||||
IF "POST" $ Upper( _SERVER[ 'REQUEST_METHOD' ] )
|
||||
IF "POST" $ Upper( _SERVER[ "REQUEST_METHOD" ] )
|
||||
cFields := ATail( aRequest )
|
||||
IF ! Empty( cFields )
|
||||
hVars := uhttpd_GetVars( cFields )
|
||||
@@ -1252,7 +1252,7 @@ STATIC FUNCTION ParseRequest( cRequest )
|
||||
// hb_toOutDebug( "POST: cFields = %s, hVars = %s, _POST = %s, _REQUEST = %s\n\r", cFields, hb_ValToExp( hVars ), hb_ValToExp( _POST ), hb_ValToExp( _REQUEST ) )
|
||||
|
||||
// COOKIES
|
||||
cFields := _SERVER[ 'HTTP_COOKIE' ]
|
||||
cFields := _SERVER[ "HTTP_COOKIE" ]
|
||||
IF ! Empty( cFields )
|
||||
hVars := uhttpd_GetVars( cFields, ";" )
|
||||
hb_HMerge( _COOKIE, hVars )
|
||||
@@ -1450,7 +1450,7 @@ STATIC PROCEDURE WriteToLog( cRequest )
|
||||
|
||||
cAccess := _SERVER[ "REMOTE_ADDR" ] + " - - [" + Right( cDate, 2 ) + "/" + ;
|
||||
aMonths[ Val( SubStr( cDate, 5, 2 ) ) ] + ;
|
||||
"/" + Left( cDate, 4 ) + ":" + cTime + ' ' + cBias + '] "' + ;
|
||||
"/" + Left( cDate, 4 ) + ":" + cTime + " " + cBias + '] "' + ;
|
||||
Left( cRequest, At( CR_LF, cRequest ) - 1 ) + '" ' + ;
|
||||
hb_ntos( t_nStatusCode ) + " " + iif( nSize == 0, "-", hb_ntos( nSize ) ) + ;
|
||||
' "' + iif( Empty( cReferer ), "-", cReferer ) + '" "' + _SERVER[ "HTTP_USER_AGENT" ] + ;
|
||||
|
||||
@@ -2998,7 +2998,7 @@ FUNCTION hbmk( aArgs, nArgTarget, /* @ */ lPause, nLevel )
|
||||
|
||||
/* Silently ignore these. These options can be used to store options
|
||||
processed by other tools allowing them to keep additional information
|
||||
in .hb? script files. */
|
||||
in .hbp/.hbm script files. */
|
||||
|
||||
CASE Left( cParamL, Len( "-workdir=" ) ) == "-workdir="
|
||||
|
||||
|
||||
Reference in New Issue
Block a user