2012-10-17 15:39 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbct/doc/en/*.txt
* contrib/hbnf/doc/en/*.txt
* cleanups and fixes
This commit is contained in:
@@ -16,6 +16,11 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2012-10-17 15:39 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||
* contrib/hbct/doc/en/*.txt
|
||||
* contrib/hbnf/doc/en/*.txt
|
||||
* cleanups and fixes
|
||||
|
||||
2012-10-17 14:41 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||
* contrib/hbnf/caplock.c
|
||||
* contrib/hbnf/kspeed.c
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
* ? charslist( "Hello World !" ) // --> " !HWdelor"
|
||||
* $TESTS$
|
||||
* charslist( "Hello World !" ) == " !HWdelor"
|
||||
* charslist( "Hello World !" ) == charsort (charlist ("Hello World !"))
|
||||
* charslist( "Hello World !" ) == charsort( charlist( "Hello World !" ) )
|
||||
* charslist( NIL ) == ""
|
||||
* $STATUS$
|
||||
* Ready
|
||||
|
||||
@@ -28,14 +28,14 @@
|
||||
* <cString2> has been processed, the function restarts with the first
|
||||
* character of <cString2>.
|
||||
* $EXAMPLES$
|
||||
* ? charadd( "012345678", chr( 1 ) ) // --> "123456789"
|
||||
* ? charadd( "123456789", chr( 255 ) ) // --> "012345678"
|
||||
* ? charadd( "0000", chr( 0 ) + chr( 1 ) + chr( 2 ) + chr( 3 ) ) // --> "0123"
|
||||
* ? charadd( "012345678", Chr( 1 ) ) // --> "123456789"
|
||||
* ? charadd( "123456789", Chr( 255 ) ) // --> "012345678"
|
||||
* ? charadd( "0000", Chr( 0 ) + Chr( 1 ) + Chr( 2 ) + Chr( 3 ) ) // --> "0123"
|
||||
* $TESTS$
|
||||
* charadd( "012345678", chr( 1 ) ) == "123456789"
|
||||
* charadd( "012345678", chr( 1 ) + chr( 2 ) ) == "133557799"
|
||||
* charadd( "123456789", chr( 255 ) ) == "012345678"
|
||||
* charadd( "123456789", chr( 255 ) + chr( 254 ) ) == "002244668"
|
||||
* charadd( "012345678", Chr( 1 ) ) == "123456789"
|
||||
* charadd( "012345678", Chr( 1 ) + Chr( 2 ) ) == "133557799"
|
||||
* charadd( "123456789", Chr( 255 ) ) == "012345678"
|
||||
* charadd( "123456789", Chr( 255 ) + Chr( 254 ) ) == "002244668"
|
||||
* $STATUS$
|
||||
* Ready
|
||||
* $COMPLIANCE$
|
||||
@@ -80,11 +80,11 @@
|
||||
* character of <cString2>.
|
||||
* $EXAMPLES$
|
||||
* // clear the LSB
|
||||
* ? charand( "012345678", chr( 254 ) ) // --> "002244668"
|
||||
* ? charand( "012345678", chr( 254 ) + chr( 252 ) ) // --> "002044648"
|
||||
* ? charand( "012345678", Chr( 254 ) ) // --> "002244668"
|
||||
* ? charand( "012345678", Chr( 254 ) + Chr( 252 ) ) // --> "002044648"
|
||||
* $TESTS$
|
||||
* charand( "012345678", chr( 254 ) ) == "002244668"
|
||||
* charand( "012345678", chr( 254 ) + chr( 252 ) ) == "002044648"
|
||||
* charand( "012345678", Chr( 254 ) ) == "002244668"
|
||||
* charand( "012345678", Chr( 254 ) + Chr( 252 ) ) == "002044648"
|
||||
* $STATUS$
|
||||
* Ready
|
||||
* $COMPLIANCE$
|
||||
@@ -125,10 +125,10 @@
|
||||
* stored in <cString>, too. By setting the CSETREF()-switch to .T.,
|
||||
* the return value can be omitted.
|
||||
* $EXAMPLES$
|
||||
* ? charnot( chr( 85 ) + chr( 128 ) + chr( 170 ) + chr( 1 ) ) // --> chr( 170 ) + chr( 127 ) + chr( 85 ) + chr( 254 )
|
||||
* ? charnot( Chr( 85 ) + Chr( 128 ) + Chr( 170 ) + Chr( 1 ) ) // --> Chr( 170 ) + Chr( 127 ) + Chr( 85 ) + Chr( 254 )
|
||||
* ? charnot( charnot( "This is a test!" ) ) --> "This is a test!"
|
||||
* $TESTS$
|
||||
* charnot( chr( 85 ) + chr( 128 ) + chr( 170 ) + chr( 1 ) ) == chr( 170 ) + chr( 127 ) + chr( 85 ) + chr( 254 )
|
||||
* charnot( Chr( 85 ) + Chr( 128 ) + Chr( 170 ) + Chr( 1 ) ) == Chr( 170 ) + Chr( 127 ) + Chr( 85 ) + Chr( 254 )
|
||||
* charnot( charnot( "This is a test!" ) ) == "This is a test!"
|
||||
* $STATUS$
|
||||
* Ready
|
||||
@@ -174,11 +174,11 @@
|
||||
* character of <cString2>.
|
||||
* $EXAMPLES$
|
||||
* // set the LSB
|
||||
* ? charor( "012345678", chr( 1 ) ) // --> "113355779"
|
||||
* ? charor( "012345678", chr( 1 ) + chr( 3 ) ) // --> "133357779"
|
||||
* ? charor( "012345678", Chr( 1 ) ) // --> "113355779"
|
||||
* ? charor( "012345678", Chr( 1 ) + Chr( 3 ) ) // --> "133357779"
|
||||
* $TESTS$
|
||||
* charor( "012345678", chr( 1 ) ) == "113355779"
|
||||
* charor( "012345678", chr( 1 ) + chr( 3 ) ) == "133357779"
|
||||
* charor( "012345678", Chr( 1 ) ) == "113355779"
|
||||
* charor( "012345678", Chr( 1 ) + Chr( 3 ) ) == "133357779"
|
||||
* $STATUS$
|
||||
* Ready
|
||||
* $COMPLIANCE$
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is ct.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
@@ -68,7 +68,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is ct.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is datetime.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* EOM(),BOQ(),EOQ(),BOY(),EOY()
|
||||
* $END$
|
||||
@@ -60,7 +60,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is datetime.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* BOM(),BOQ(),EOQ(),BOY(),EOY()
|
||||
* $END$
|
||||
@@ -92,7 +92,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is datetime.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* BOM(),EOM(),EOQ(),BOY(),EOY()
|
||||
* $END$
|
||||
@@ -124,7 +124,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is datetime.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* BOM(),EOM(),BOQ(),BOY(),EOY()
|
||||
* $END$
|
||||
@@ -156,7 +156,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is datetime.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* BOM(),EOM(),BOQ(),EOQ(),EOY()
|
||||
* $END$
|
||||
@@ -188,7 +188,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is datetime.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* BOM(),EOM(),BOQ(),EOQ(),BOY()
|
||||
* $END$
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* NTOCDOW()
|
||||
* $END$
|
||||
@@ -60,7 +60,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* NTOCMONTH()
|
||||
* $END$
|
||||
@@ -94,7 +94,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* MDY()
|
||||
* $END$
|
||||
@@ -128,7 +128,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* DMY()
|
||||
* $END$
|
||||
@@ -160,7 +160,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
@@ -194,7 +194,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
@@ -226,7 +226,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
@@ -260,7 +260,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* DAYSINMONTH()
|
||||
* $END$
|
||||
@@ -292,7 +292,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* DAYSTOMONTH()
|
||||
* $END$
|
||||
@@ -326,7 +326,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
@@ -361,7 +361,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* EOM()
|
||||
* $END$
|
||||
@@ -393,7 +393,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* CTODOW()
|
||||
* $END$
|
||||
@@ -425,7 +425,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* CTOMONTH()
|
||||
* $END$
|
||||
@@ -467,7 +467,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime2.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime3.c, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
*
|
||||
* $END$
|
||||
@@ -110,7 +110,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is dattime3.c, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* SETTIME()
|
||||
* $END$
|
||||
@@ -162,7 +162,7 @@
|
||||
* $PLATFORMS$
|
||||
* Windows, Linux
|
||||
* $FILES$
|
||||
* Source is dattime3.c, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* SETDATE(),TIMEVALID()
|
||||
* $END$
|
||||
@@ -213,7 +213,7 @@
|
||||
* $PLATFORMS$
|
||||
* Windows, Linux
|
||||
* $FILES$
|
||||
* Source is dattime3.c, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* SETTIME()
|
||||
* $END$
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is numconv.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* CTON()
|
||||
* $END$
|
||||
@@ -60,7 +60,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is numconv.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* NTOC()
|
||||
* $END$
|
||||
@@ -92,7 +92,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is numconv.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* CTOBIT()
|
||||
* $END$
|
||||
@@ -124,7 +124,7 @@
|
||||
* $PLATFORMS$
|
||||
* All
|
||||
* $FILES$
|
||||
* Source is numconv.prg, library is libct.
|
||||
* Library is libct.
|
||||
* $SEEALSO$
|
||||
* BITTOC()
|
||||
* $END$
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
* TODO: add documentation
|
||||
* $EXAMPLES$
|
||||
* ? rangerem( "0", "9", "year2002.dbf" ) // "year.dbf", remove all digits
|
||||
* ? rangerem( "9", "0", "year2002.dbf" ) // "22", testing removal from "9" to chr(255)
|
||||
* // and from chr(0) to "0"
|
||||
* ? rangerem( "9", "0", "year2002.dbf" ) // "22", testing removal from "9" to Chr(255)
|
||||
* // and from Chr(0) to "0"
|
||||
* ? rangerem( "0", "9", "yearcurr.dbf" ) // "yearcurr.dbf", test leaving string untouched
|
||||
* $TESTS$
|
||||
* rangerem( "0", "9", "year2002.dbf" ) == "year.dbf"
|
||||
@@ -57,8 +57,8 @@
|
||||
* TODO: add documentation
|
||||
* $EXAMPLES$
|
||||
* ? rangerepl( "0", "9", "year2002.dbf", "?" ) // "year????.dbf", replace all digits
|
||||
* ? rangerepl( "9", "0", "year2002.dbf", "?" ) // "????2??2????", testing replacement from "9" to chr(255)
|
||||
* // and from chr(0) to "0"
|
||||
* ? rangerepl( "9", "0", "year2002.dbf", "?" ) // "????2??2????", testing replacement from "9" to Chr(255)
|
||||
* // and from Chr(0) to "0"
|
||||
* ? rangerepl( "0", "9", "yearcurr.dbf", "?" ) // "yearcurr.dbf", test leaving string untouched
|
||||
* $TESTS$
|
||||
* rangerepl( "0", "9", "year2002.dbf", "?" ) == "year????.dbf"
|
||||
|
||||
@@ -21,10 +21,10 @@
|
||||
* default is the string returned by
|
||||
* hb_eol()
|
||||
* <cTabChar|nTabChar> character indicating a tab stop,
|
||||
* default is chr(9)
|
||||
* default is Chr(9)
|
||||
* <lIgnore141> .T., if the soft-CR used by MEMOEDIT()
|
||||
* should be ignored as a newline indicator,
|
||||
* default is .F. (functions uses chr(141))
|
||||
* default is .F. (functions uses Chr(141))
|
||||
* $RETURNS$
|
||||
*
|
||||
* $DESCRIPTION$
|
||||
@@ -32,13 +32,13 @@
|
||||
* $EXAMPLES$
|
||||
*
|
||||
* $TESTS$
|
||||
* tabexpand("-"+chr(9)+"!") == "- !"
|
||||
* tabexpand("----"+chr(9) +"!") == "---- !"
|
||||
* tabexpand("-"+chr(9)+"!",, "+") == "-+++++++!"
|
||||
* tabexpand("-"+chr(9)+ "!", 4) == "- !"
|
||||
* tabexpand("----"+chr(9)+ "!", 8) == "---- !"
|
||||
* tabexpand("----"+chr(9)+ "!", 8, "+") == "----++++!"
|
||||
* tabexpand("-"+chr(9)+"!"+hb_eol()+"----"+chr(9)+ "!",, "+") == "-+++++++!"+hb_eol()+"----++++!"
|
||||
* tabexpand("-"+Chr(9)+"!") == "- !"
|
||||
* tabexpand("----"+Chr(9) +"!") == "---- !"
|
||||
* tabexpand("-"+Chr(9)+"!",, "+") == "-+++++++!"
|
||||
* tabexpand("-"+Chr(9)+ "!", 4) == "- !"
|
||||
* tabexpand("----"+Chr(9)+ "!", 8) == "---- !"
|
||||
* tabexpand("----"+Chr(9)+ "!", 8, "+") == "----++++!"
|
||||
* tabexpand("-"+Chr(9)+"!"+hb_eol()+"----"+Chr(9)+ "!",, "+") == "-+++++++!"+hb_eol()+"----++++!"
|
||||
* $STATUS$
|
||||
* Started
|
||||
* $COMPLIANCE$
|
||||
@@ -73,10 +73,10 @@
|
||||
* default is the string returned by
|
||||
* hb_eol()
|
||||
* <cTabChar|nTabChar> character indicating a tab stop,
|
||||
* default is chr(9)
|
||||
* default is Chr(9)
|
||||
* <lIgnore141> .T., if the soft-CR used by MEMOEDIT()
|
||||
* should be ignored as a newline indicator,
|
||||
* default is .F. (functions uses chr(141))
|
||||
* default is .F. (functions uses Chr(141))
|
||||
* $RETURNS$
|
||||
*
|
||||
* $DESCRIPTION$
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
* <[@]cString> is the processed string
|
||||
* <cTokenizer> is a list of characters separating the tokens
|
||||
* in <cString>
|
||||
* Default: chr(0)+chr(9)+chr(10)+chr(13)+chr(26)+
|
||||
* chr(32)+chr(32)+chr(138)+chr(141)+
|
||||
* Default: Chr(0)+Chr(9)+Chr(10)+Chr(13)+Chr(26)+
|
||||
* Chr(32)+Chr(32)+Chr(138)+Chr(141)+
|
||||
* ",.;:!\?/\\<>()#&%+-*"
|
||||
* <nSkipWidth> specifies the maximum number of successive
|
||||
* tokenizing characters that are combined as
|
||||
|
||||
@@ -32,19 +32,19 @@
|
||||
* It returns a new array including all the elements of aList1
|
||||
* plus the unique elements of aList2.
|
||||
* $EXAMPLES$
|
||||
* aList1 := {"apple", "orange", "pear"}
|
||||
* aList2 := {"apple ", "banana", "PEAR"}
|
||||
* aList1 := { "apple", "orange", "pear" }
|
||||
* aList2 := { "apple ", "banana", "PEAR" }
|
||||
*
|
||||
* FT_AADDITION( aList1, aList2 )
|
||||
* // ignores spaces, sensitive to case
|
||||
* // returns {"apple","orange","pear","banana","PEAR"}
|
||||
* // returns { "apple", "orange", "pear", "banana", "PEAR" }
|
||||
*
|
||||
* FT_AADDITION( aList1, aList2, , .F. )
|
||||
* // ignores spaces, not sensitive to case
|
||||
* // returns {"apple","orange","pear","banana"}
|
||||
* // returns { "apple", "orange", "pear", "banana" }
|
||||
*
|
||||
* FT_AADDITION( aList1, aList2, .F., .F. )
|
||||
* // sensitive to spaces, not sensitive to case
|
||||
* // returns {"apple","orange","pear","apple ","banana"}
|
||||
* // returns { "apple", "orange", "pear", "apple ", "banana" }
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -27,12 +27,12 @@
|
||||
*
|
||||
* This routine requires FT_ASUM().
|
||||
* $EXAMPLES$
|
||||
* FT_AAVG(aSubTotals) // Get Average of Entire Array
|
||||
* FT_AAVG( aSubTotals ) // Get Average of Entire Array
|
||||
*
|
||||
* FT_AAVG(aSubTotals, 5) // Get Average of 5th Element On
|
||||
* FT_AAVG( aSubTotals, 5 ) // Get Average of 5th Element On
|
||||
*
|
||||
* FT_AAVG(aSubTotals, , 10) // Get Average of 1st 10 Elements
|
||||
* FT_AAVG( aSubTotals, , 10 ) // Get Average of 1st 10 Elements
|
||||
*
|
||||
* FT_AAVG(aSubTotals, 5, 10) // Get Average of Elements 5-10
|
||||
* FT_AAVG( aSubTotals, 5, 10 ) // Get Average of Elements 5-10
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year and month as a character string "YYYYMM"
|
||||
* aDateInfo[2] - The beginning date of the accounting month
|
||||
* aDateInfo[3] - The ending date of the accounting month
|
||||
* aDateInfo[ 1 ] - The year and month as a character string "YYYYMM"
|
||||
* aDateInfo[ 2 ] - The beginning date of the accounting month
|
||||
* aDateInfo[ 3 ] - The ending date of the accounting month
|
||||
* $DESCRIPTION$
|
||||
* FT_ACCTMONTH() creates an array containing data about the
|
||||
* accounting month containing the given date.
|
||||
@@ -41,16 +41,16 @@
|
||||
* weeks.
|
||||
* $EXAMPLES$
|
||||
* // get info about accounting month containing 9/15/90
|
||||
* aDateInfo := FT_ACCTMONTH( SToD("19900915") )
|
||||
* ? aDateInfo[1] // 199009 (9th month)
|
||||
* ? aDateInfo[2] // 09/02/90 beginning of month 9
|
||||
* ? aDateInfo[3] // 09/29/90 end of month 9
|
||||
* aDateInfo := FT_ACCTMONTH( SToD( "19900915" ) )
|
||||
* ? aDateInfo[ 1 ] // 199009 (9th month)
|
||||
* ? aDateInfo[ 2 ] // 09/02/90 beginning of month 9
|
||||
* ? aDateInfo[ 3 ] // 09/29/90 end of month 9
|
||||
*
|
||||
* // get info about accounting month 5 in year containing 9/15/90
|
||||
* aDateInfo := FT_ACCTMONTH( SToD("19900915"), 5 )
|
||||
* ? aDateInfo[1] // 199005
|
||||
* ? aDateInfo[2] // 04/29/89 beginning of month 5
|
||||
* ? aDateInfo[3] // 06/02/90 end of month 5
|
||||
* aDateInfo := FT_ACCTMONTH( SToD( "19900915" ), 5 )
|
||||
* ? aDateInfo[ 1 ] // 199005
|
||||
* ? aDateInfo[ 2 ] // 04/29/89 beginning of month 5
|
||||
* ? aDateInfo[ 3 ] // 06/02/90 end of month 5
|
||||
* $SEEALSO$
|
||||
* FT_DATECNFG() FT_ACCTWEEK() FT_ACCTQTR() FT_ACCTYEAR()
|
||||
* $END$
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year and qtr. as a character string "YYYYQQ"
|
||||
* aDateInfo[2] - The beginning date of the accounting quarter
|
||||
* aDateInfo[3] - The ending date of the accounting quarter
|
||||
* aDateInfo[ 1 ] - The year and qtr. as a character string "YYYYQQ"
|
||||
* aDateInfo[ 2 ] - The beginning date of the accounting quarter
|
||||
* aDateInfo[ 3 ] - The ending date of the accounting quarter
|
||||
* $DESCRIPTION$
|
||||
* FT_ACCTQTR() creates an array containing data about the
|
||||
* accounting quarter containing the given date.
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year and week as a character string "YYYYWW"
|
||||
* aDateInfo[2] - The beginning date of the accounting week
|
||||
* aDateInfo[3] - The ending date of the accounting week
|
||||
* aDateInfo[ 1 ] - The year and week as a character string "YYYYWW"
|
||||
* aDateInfo[ 2 ] - The beginning date of the accounting week
|
||||
* aDateInfo[ 3 ] - The ending date of the accounting week
|
||||
* $DESCRIPTION$
|
||||
* FT_ACCTWEEK() returns an array containing data about the
|
||||
* accounting week containing the given date.
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year as a character string "YYYY"
|
||||
* aDateInfo[2] - The beginning date of the accounting year
|
||||
* aDateInfo[3] - The ending date of the accounting year
|
||||
* aDateInfo[ 1 ] - The year as a character string "YYYY"
|
||||
* aDateInfo[ 2 ] - The beginning date of the accounting year
|
||||
* aDateInfo[ 3 ] - The ending date of the accounting year
|
||||
* $DESCRIPTION$
|
||||
* FT_ACCTYEAR() creates an array containing data about the
|
||||
* accounting year containing the given date.
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
* None
|
||||
* $RETURNS$
|
||||
* Integer representing type of video adapter
|
||||
*
|
||||
*
|
||||
* 0 - monochrome
|
||||
* 1 - CGA
|
||||
* 2 - EGA
|
||||
@@ -23,23 +23,23 @@
|
||||
* $DESCRIPTION$
|
||||
* This function is valuable if you use a graphics library and need to
|
||||
* know what type of graphics adapter is installed.
|
||||
*
|
||||
*
|
||||
* The source code is written to adhere to Turbo Assembler's IDEAL mode.
|
||||
* To use another assembler, you will need to rearrange the PROC and
|
||||
* SEGMENT directives, and also the ENDP and ENDS directives (a very
|
||||
* minor task).
|
||||
* $EXAMPLES$
|
||||
* iVideo := FT_ADAPTER()
|
||||
*
|
||||
*
|
||||
* DO CASE
|
||||
* CASE iVideo == 0
|
||||
* QOUT( "You have a monochrome adapter." )
|
||||
* CASE iVideo == 1
|
||||
* QOUT( "You have a CGA adapter." )
|
||||
* CASE iVideo == 2
|
||||
* QOUT( "You have an EGA adapter." )
|
||||
* CASE iVideo == 3
|
||||
* QOUT( "You have a VGA adapter." )
|
||||
* CASE iVideo == 0
|
||||
* QOut( "You have a monochrome adapter." )
|
||||
* CASE iVideo == 1
|
||||
* QOut( "You have a CGA adapter." )
|
||||
* CASE iVideo == 2
|
||||
* QOut( "You have an EGA adapter." )
|
||||
* CASE iVideo == 3
|
||||
* QOut( "You have a VGA adapter." )
|
||||
* ENDCASE
|
||||
* $SEEALSO$
|
||||
* FT_SETMODE()
|
||||
|
||||
@@ -24,12 +24,12 @@
|
||||
* $DESCRIPTION$
|
||||
* This function is used to sort an array in descending order, i.e., Z-A
|
||||
* $EXAMPLES$
|
||||
* FT_ADESSORT(aNames) // Sort the Entire Array
|
||||
* FT_ADESSORT( aNames ) // Sort the Entire Array
|
||||
*
|
||||
* FT_ADESSORT(aNames, 5) // Sort from the 5th Element On
|
||||
* FT_ADESSORT( aNames, 5 ) // Sort from the 5th Element On
|
||||
*
|
||||
* FT_ADESSORT(aNames, , 10) // Sort the 1st 10 Elements
|
||||
* FT_ADESSORT( aNames, , 10 ) // Sort the 1st 10 Elements
|
||||
*
|
||||
* FT_ADESSORT(aNames, 5, 10) // Sort Elements 5-10
|
||||
* FT_ADESSORT( aNames, 5, 10 ) // Sort Elements 5-10
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -30,18 +30,18 @@
|
||||
* This function will measure each element of an array
|
||||
* dimension and return the longest element.
|
||||
* $EXAMPLES$
|
||||
* FT_AEMAXLEN(aArray) // Measure the 1st dimension of an Array
|
||||
* FT_AEMAXLEN( aArray ) // Measure the 1st dimension of an Array
|
||||
*
|
||||
* FT_AEMAXLEN(aArray,2) // Measure the 2nd dimension of an Array
|
||||
* FT_AEMAXLEN( aArray, 2 ) // Measure the 2nd dimension of an Array
|
||||
*
|
||||
* FT_AEMAXLEN(aArray,2,,9) // Measure Elements 1-9 of the
|
||||
* 2nd dimension or subarray
|
||||
* FT_AEMAXLEN( aArray, 2, , 9 ) // Measure Elements 1-9 of the
|
||||
* 2nd dimension or subarray
|
||||
*
|
||||
* FT_AEMAXLEN(aArray,3,5,9) // Measure Elements 5-9 of the
|
||||
* 3rd dimension or subarray
|
||||
* FT_AEMAXLEN( aArray, 3, 5, 9 ) // Measure Elements 5-9 of the
|
||||
* 3rd dimension or subarray
|
||||
*
|
||||
* FT_AEMAXLEN(aArray,3,5) // Measure Elements 5 to last in the
|
||||
* 3rd dimension or subarray
|
||||
* FT_AEMAXLEN( aArray, 3, 5 ) // Measure Elements 5 to last in the
|
||||
* 3rd dimension or subarray
|
||||
* $SEEALSO$
|
||||
* FT_AEMINLEN()
|
||||
* $END$
|
||||
|
||||
@@ -30,15 +30,15 @@
|
||||
* This function will measure each element of an array
|
||||
* dimension and return the shortest element.
|
||||
* $EXAMPLES$
|
||||
* FT_AEMINLEN(aArray) // Measure the 1st dimension of an Array
|
||||
* FT_AEMINLEN( aArray ) // Measure the 1st dimension of an Array
|
||||
*
|
||||
* FT_AEMINLEN(aArray,2) // Measure the 2nd dimension of an Array
|
||||
* FT_AEMINLEN( aArray, 2 ) // Measure the 2nd dimension of an Array
|
||||
*
|
||||
* FT_AEMINLEN(aArray,2,,9) // Measure Elements 1-9 of 2nd dimension
|
||||
* FT_AEMINLEN( aArray, 2, , 9 ) // Measure Elements 1-9 of 2nd dimension
|
||||
*
|
||||
* FT_AEMINLEN(aArray,3,5,9) // Measure Elements 5-9 of 3rd dimension
|
||||
* FT_AEMINLEN( aArray, 3, 5, 9 ) // Measure Elements 5-9 of 3rd dimension
|
||||
*
|
||||
* FT_AEMINLEN(aArray,3,5) // Measure Elements 5 to end of 3rd dimension
|
||||
* FT_AEMINLEN( aArray, 3, 5 ) // Measure Elements 5 to end of 3rd dimension
|
||||
* $SEEALSO$
|
||||
* FT_AEMAXLEN()
|
||||
* $END$
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* Alt key is pressed, such as during a MemoEdit().
|
||||
* $EXAMPLES$
|
||||
* IF FT_ALT()
|
||||
* @24, 0 say "Alt"
|
||||
* @ 24, 0 SAY "Alt"
|
||||
* ELSE
|
||||
* @24, 0 say " "
|
||||
* @ 24, 0 SAY " "
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_CAPLOCK() FT_CTRL() FT_NUMLOCK() FT_PRTSCR() FT_SHIFT()
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
* be meaningful (i.e., converting from a code block returns an EMPTY()
|
||||
* value of the desired type).
|
||||
* $EXAMPLES$
|
||||
* nNumericValue := FT_XTOY(cInputValue, "N")
|
||||
* IF (FT_XTOY(nInputValue, "L"))
|
||||
* nNumericValue := FT_XTOY( cInputValue, "N" )
|
||||
* IF FT_XTOY( nInputValue, "L" )
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -25,12 +25,12 @@
|
||||
* This function is to sum the elements of a numeric array or to sum the
|
||||
* lengths of a character array.
|
||||
* $EXAMPLES$
|
||||
* FT_ASUM(aSubTotals) // Sum the Entire Array
|
||||
* FT_ASUM( aSubTotals ) // Sum the Entire Array
|
||||
*
|
||||
* FT_ASUM(aSubTotals, 5) // Sum from the 5th Element On
|
||||
* FT_ASUM( aSubTotals, 5 ) // Sum from the 5th Element On
|
||||
*
|
||||
* FT_ASUM(aSubTotals, , 10) // Sum the 1st 10 Elements
|
||||
* FT_ASUM( aSubTotals, , 10 ) // Sum the 1st 10 Elements
|
||||
*
|
||||
* FT_ASUM(aSubTotals, 5, 10) // Sum Elements 5-10
|
||||
* FT_ASUM( aSubTotals, 5, 10 ) // Sum Elements 5-10
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
* $SYNTAX$
|
||||
* FT_BITCLR( <cByte>, <nBitPos> ) -> cByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte> is a character from CHR(0) to CHR(255).
|
||||
* <cByte> is a character from Chr(0) to Chr(255).
|
||||
*
|
||||
* <nBitPos> is a number from 0 to 7 conforming to standard
|
||||
* right-to-left bit numbering convention and representing the
|
||||
@@ -29,19 +29,16 @@
|
||||
* are possible with Clipper code. For greater speed, write .c or
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code would clear bit 4 in a byte represented by CHR(115):
|
||||
* This code would clear bit 4 in a byte represented by Chr( 115 ):
|
||||
*
|
||||
* cNewByte := FT_BITCLR( CHR(115), 4 )
|
||||
* ? ASC( cNewbyte ) // result: 99
|
||||
* ? cNewByte // result: 'c'
|
||||
* cNewByte := FT_BITCLR( Chr( 115 ), 4 )
|
||||
* ? Asc( cNewbyte ) // result: 99
|
||||
* ? cNewByte // result: "c"
|
||||
*
|
||||
* This code would clear bit 5 in the byte represented by letter 'A':
|
||||
* This code would clear bit 5 in the byte represented by letter "A":
|
||||
*
|
||||
* FT_BITCLR( 'A', 5 ) // result: 'A', since
|
||||
* FT_BITCLR( "A", 5 ) // result: "A", since
|
||||
* // bit 5 already clear
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* $SEEALSO$
|
||||
* FT_BITSET() FT_ISBIT()
|
||||
* $END$
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
* $SYNTAX$
|
||||
* FT_BITSET( <cByte>, <nBitPos> ) -> cByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte> is a character from CHR(0) to CHR(255).
|
||||
* <cByte> is a character from Chr(0) to Chr(255).
|
||||
*
|
||||
* <nBitPos> is a number from 0 to 7 conforming to standard right-to-left
|
||||
* bit numbering convention and representing the position of the bit
|
||||
@@ -29,20 +29,17 @@
|
||||
* are possible with Clipper code. For greater speed, write .c or
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code would set bit 4 in a byte represented by CHR(107):
|
||||
* This code would set bit 4 in a byte represented by Chr( 107 ):
|
||||
*
|
||||
* cNewbyte := FT_BITSET( CHR(107), 4 )
|
||||
* ? ASC( cNewbyte ) // result: 123
|
||||
* ? cNewbyte // result: '{'
|
||||
* cNewbyte := FT_BITSET( Chr( 107 ), 4 )
|
||||
* ? Asc( cNewbyte ) // result: 123
|
||||
* ? cNewbyte // result: "{"
|
||||
*
|
||||
*
|
||||
* This code would set bit 5 in the byte represented by the letter 'A'.
|
||||
* This code would set bit 5 in the byte represented by the letter "A".
|
||||
*
|
||||
* ? FT_BITSET( 'A', 5 ) // result: 'a'
|
||||
* ? FT_BITSET( "A", 5 ) // result: "a"
|
||||
* // bit 5 set
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* $SEEALSO$
|
||||
* FT_BITCLR() FT_ISBIT()
|
||||
* $END$
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
* $EXAMPLES$
|
||||
* FT_BLINK( "WAIT", 5, 10 ) // Blinks "WAIT" in current colors @ 5,10
|
||||
*
|
||||
* @5,10 SAY "WAIT - Printing Report"
|
||||
* @ 5,10 SAY "WAIT - Printing Report"
|
||||
* FT_BLINK( "..." ) // Blink "..." after wait message...
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -28,17 +28,14 @@
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* These three code lines perform a bitwise AND on bytes with values of
|
||||
* CHR(20) and CHR(36), and deliver the result as a string in binary (bit)
|
||||
* Chr(20) and Chr(36), and deliver the result as a string in binary (bit)
|
||||
* format.
|
||||
*
|
||||
* ? FT_BYT2BIT(CHR(20)) // byte1: '0001 0100'
|
||||
* ? FT_BYT2BIT(CHR(36)) // byte2: '0010 0100'
|
||||
* ? FT_BYT2BIT( Chr( 20 ) ) // byte1: '0001 0100'
|
||||
* ? FT_BYT2BIT( Chr( 36 ) ) // byte2: '0010 0100'
|
||||
*
|
||||
* ? FT_BYT2BIT(FT_BYTEAND(CHR(20), CHR(36)))
|
||||
* ? FT_BYT2BIT( FT_BYTEAND( Chr( 20 ), Chr( 36 ) ) )
|
||||
* // result: '0000 0100'
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* $SEEALSO$
|
||||
* FT_BYT2HEX()
|
||||
* $END$
|
||||
|
||||
@@ -25,17 +25,14 @@
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* These three code lines perform a bitwise AND on bytes with values of
|
||||
* CHR(20) and CHR(36), and deliver the result as a string in hexadecimal
|
||||
* Chr(20) and Chr(36), and deliver the result as a string in hexadecimal
|
||||
* format, using 'h' to signify hexadecimal.
|
||||
*
|
||||
* ? FT_BYT2HEX(CHR(20)) // byte1: '14h'
|
||||
* ? FT_BYT2HEX(CHR(36)) // byte2: '24h'
|
||||
* ? FT_BYT2HEX( Chr( 20 ) ) // byte1: '14h'
|
||||
* ? FT_BYT2HEX( Chr( 36 ) ) // byte2: '24h'
|
||||
*
|
||||
* ? FT_BYT2HEX(FT_BYTEAND(CHR(20), CHR(36)))
|
||||
* ? FT_BYT2HEX( FT_BYTEAND( Chr( 20 ), Chr( 36 ) ) )
|
||||
* // result: '04h'
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* $SEEALSO$
|
||||
* FT_BYT2BIT()
|
||||
* $END$
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
* $SYNTAX$
|
||||
* FT_BYTEAND( <cByte1>, <cByte2> ) -> cByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte1> and <cByte2> are characters from CHR(0) TO CHR(255).
|
||||
* May be passed in CHR() form, as character literals, or as expressions
|
||||
* evaluating to CHR() values.
|
||||
* <cByte1> and <cByte2> are characters from Chr(0) TO Chr(255).
|
||||
* May be passed in Chr() form, as character literals, or as expressions
|
||||
* evaluating to Chr() values.
|
||||
* $RETURNS$
|
||||
* Returns resulting byte, in CHR() form. If parameters are faulty,
|
||||
* Returns resulting byte, in Chr() form. If parameters are faulty,
|
||||
* returns NIL.
|
||||
* $DESCRIPTION$
|
||||
* Can be used for any bit-wise masking operation. In effect, this is a
|
||||
@@ -27,15 +27,12 @@
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code would mask out the high nibble (four most significant bits)
|
||||
* of the byte represented by chr(123) and leave the low nibble bits as in
|
||||
* of the byte represented by Chr(123) and leave the low nibble bits as in
|
||||
* the parameter byte.
|
||||
*
|
||||
* cNewbyte := FT_BYTEAND( CHR(123), CHR(15) )
|
||||
* ? asc(cNewByte) // result: 11
|
||||
* ? cNewByte // result: non-printable character
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* cNewbyte := FT_BYTEAND( Chr( 123 ), Chr( 15 ) )
|
||||
* ? Asc( cNewByte ) // result: 11
|
||||
* ? cNewByte // result: non-printable character
|
||||
* $SEEALSO$
|
||||
* FT_BYTEOR() FT_BYTEXOR() FT_BYTENOT() FT_BYTENEG()
|
||||
* $END$
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
* $SYNTAX$
|
||||
* FT_BYTENEG( <cByte> ) -> cNewByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte> is a character from CHR(0) to CHR(255).
|
||||
* May be passed in CHR() form, as character literal, or
|
||||
* as expression evaluating to CHR() value.
|
||||
* <cByte> is a character from Chr(0) to Chr(255).
|
||||
* May be passed in Chr() form, as character literal, or
|
||||
* as expression evaluating to Chr() value.
|
||||
* $RETURNS$
|
||||
* Returns resulting byte, in CHR() form. If parameters are faulty,
|
||||
* Returns resulting byte, in Chr() form. If parameters are faulty,
|
||||
* returns NIL.
|
||||
* $DESCRIPTION$
|
||||
* Can be used for bit-wise byte manipulation. In effect, this is a
|
||||
@@ -27,13 +27,10 @@
|
||||
* are possible with Clipper code. For greater speed, write .c or
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code performs a bit-wise NEG on byte represented by CHR(32):
|
||||
* This code performs a bit-wise NEG on byte represented by Chr( 32 ):
|
||||
*
|
||||
* cNewByte := FT_BYTENOT(CHR(32))
|
||||
* ? asc(cNewByte) // result: 224
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* cNewByte := FT_BYTENOT( Chr( 32 ) )
|
||||
* ? Asc( cNewByte ) // result: 224
|
||||
* $SEEALSO$
|
||||
* FT_BYTEOR() FT_BYTEXOR() FT_BYTENOT() FT_BYTEAND()
|
||||
* $END$
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
* $SYNTAX$
|
||||
* FT_BYTENOT( <cByte> ) -> cNewByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte> is a character from CHR(0) to CHR(255).
|
||||
* May be passed in CHR() form, as character literal, or
|
||||
* as expression evaluating to CHR() value.
|
||||
* <cByte> is a character from Chr(0) to Chr(255).
|
||||
* May be passed in Chr() form, as character literal, or
|
||||
* as expression evaluating to Chr() value.
|
||||
* $RETURNS$
|
||||
* Returns resulting byte, in CHR() form. If parameters are faulty,
|
||||
* Returns resulting byte, in Chr() form. If parameters are faulty,
|
||||
* returns NIL.
|
||||
* $DESCRIPTION$
|
||||
* Can be used for bitwise byte manipulation. In effect, this is a
|
||||
@@ -27,13 +27,10 @@
|
||||
* are possible with Clipper code. For greater speed, write .c or
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code performs a bitwise NOT on byte represented by CHR(32):
|
||||
* This code performs a bitwise NOT on byte represented by Chr( 32 ):
|
||||
*
|
||||
* cNewByte := FT_BYTENOT( CHR(32) )
|
||||
* ? ASC( cNewByte ) // result: 223
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* cNewByte := FT_BYTENOT( Chr( 32 ) )
|
||||
* ? Asc( cNewByte ) // result: 223
|
||||
* $SEEALSO$
|
||||
* FT_BYTEOR() FT_BYTEXOR() FT_BYTENEG() FT_BYTEAND()
|
||||
* $END$
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
* $SYNTAX$
|
||||
* FT_BYTEOR( <cByte1>, <cByte2> ) -> cNewByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte1> and <cByte2> are characters from CHR(0) TO CHR(255).
|
||||
* May be passed in CHR() form, as character literals, or as
|
||||
* expressions evaluating to CHR() values.
|
||||
* <cByte1> and <cByte2> are characters from Chr(0) TO Chr(255).
|
||||
* May be passed in Chr() form, as character literals, or as
|
||||
* expressions evaluating to Chr() values.
|
||||
* $RETURNS$
|
||||
* Returns resulting byte, in CHR() form. If parameters are faulty,
|
||||
* Returns resulting byte, in Chr() form. If parameters are faulty,
|
||||
* returns NIL.
|
||||
* $DESCRIPTION$
|
||||
* Can be used for bit-wise byte manipulation. In effect, this is a
|
||||
@@ -27,14 +27,11 @@
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code performs a bit-wise OR on two bytes represented
|
||||
* by CHR(20) and CHR(10):
|
||||
* by Chr( 20 ) and Chr( 10 ):
|
||||
*
|
||||
* cNewByte := FT_BYTEOR( CHR(20), CHR(10) )
|
||||
* ? ASC( cNewByte ) // result: 30
|
||||
* cNewByte := FT_BYTEOR( Chr( 20 ), Chr( 10 ) )
|
||||
* ? Asc( cNewByte ) // result: 30
|
||||
* ? cNewByte // result: non-printable character
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* $SEEALSO$
|
||||
* FT_BYTEXOR() FT_BYTENOT() FT_BYTENEG() FT_BYTEAND()
|
||||
* $END$
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
* $SYNTAX$
|
||||
* FT_BYTEXOR( <cByte1>, <cByte2> ) -> cNewByte
|
||||
* $ARGUMENTS$
|
||||
* <cByte1> and <cByte2> are characters from CHR(0) to CHR(255).
|
||||
* May be passed in CHR() form, as character literals, or
|
||||
* as expressions evaluating to CHR() values.
|
||||
* <cByte1> and <cByte2> are characters from Chr(0) to Chr(255).
|
||||
* May be passed in Chr() form, as character literals, or
|
||||
* as expressions evaluating to Chr() values.
|
||||
* $RETURNS$
|
||||
* Returns resulting byte, in CHR() form. If parameters are faulty,
|
||||
* Returns resulting byte, in Chr() form. If parameters are faulty,
|
||||
* returns NIL.
|
||||
* $DESCRIPTION$
|
||||
* Can be used for bit-wise byte manipulation. In effect, this is a
|
||||
@@ -27,14 +27,11 @@
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code performs a bit-wise XOR on two bytes represented
|
||||
* by CHR(32) and CHR(55):
|
||||
* by Chr( 32 ) and Chr( 55 ):
|
||||
*
|
||||
* cNewByte := FT_BYTEXOR( CHR(32), CHR(55) )
|
||||
* ? ASC( cNewByte ) // result: 23
|
||||
* cNewByte := FT_BYTEXOR( Chr( 32 ), Chr( 55 ) )
|
||||
* ? Asc( cNewByte ) // result: 23
|
||||
* ? cNewByte // result: non-printable character
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* $SEEALSO$
|
||||
* FT_BYTEOR() FT_BYTENOT() FT_BYTENEG() FT_BYTEAND()
|
||||
* $END$
|
||||
|
||||
@@ -55,17 +55,17 @@
|
||||
* from the Nanforum Toolkit!
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* LOCAL aRetVal[8]
|
||||
* CLS
|
||||
* aRetVal := FT_CALENDAR (10,40,'W+/RB',.T.,.T.)
|
||||
* ?aRetVal[1] // Result: 04/20/91
|
||||
* ?aRetVal[2] // Result: 4
|
||||
* ?aRetVal[3] // Result: 20
|
||||
* ?aRetVal[4] // Result: 1991
|
||||
* ?aRetVal[5] // Result: April
|
||||
* ?aRetVal[6] // Result: Saturday
|
||||
* ?aRetVal[7] // Result: 110
|
||||
* ?aRetVal[8] // Result: 12:45:20
|
||||
* LOCAL aRetVal[ 8 ]
|
||||
* CLS
|
||||
* aRetVal := FT_CALENDAR( 10, 40, "W+/RB", .T., .T. )
|
||||
* ? aRetVal[ 1 ] // Result: 04/20/91
|
||||
* ? aRetVal[ 2 ] // Result: 4
|
||||
* ? aRetVal[ 3 ] // Result: 20
|
||||
* ? aRetVal[ 4 ] // Result: 1991
|
||||
* ? aRetVal[ 5 ] // Result: April
|
||||
* ? aRetVal[ 6 ] // Result: Saturday
|
||||
* ? aRetVal[ 7 ] // Result: 110
|
||||
* ? aRetVal[ 8 ] // Result: 12:45:20
|
||||
*
|
||||
* $SEEALSO$
|
||||
* FT_DAYOFYR()
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
* a more appropriate test display.
|
||||
*
|
||||
* [4] cFillChar is the character (for desktop background only)
|
||||
* Default is CHR(177) "▒▒▒▒▒▒▒▒▒▒▒▒▒▒"
|
||||
* Default is Chr(177) "▒▒▒▒▒▒▒▒▒▒▒▒▒▒"
|
||||
*
|
||||
*
|
||||
* <lClrMode> .T. use colour palette
|
||||
@@ -63,7 +63,7 @@
|
||||
*
|
||||
* <cTestChr> 2 Byte character string for colour test display
|
||||
*
|
||||
* Default is the CHR(254)+CHR(254) "■■"
|
||||
* Default is the Chr(254)+Chr(254) "■■"
|
||||
*
|
||||
* $RETURNS$
|
||||
* An array identical to the one passed, with new selected colours
|
||||
@@ -76,8 +76,8 @@
|
||||
* a normal colour string returned.
|
||||
* $EXAMPLES$
|
||||
* LOCAL aClrs := {}
|
||||
* LOCAL lColour := ISCOLOR()
|
||||
* LOCAL cChr := CHR(254) + CHR(254)
|
||||
* LOCAL lColour := IsColor()
|
||||
* LOCAL cChr := Chr( 254 ) + Chr( 254 )
|
||||
*
|
||||
* SET SCOREBOARD Off
|
||||
* SETBLINK( .F. ) // Allow bright backgrounds
|
||||
|
||||
@@ -22,12 +22,12 @@
|
||||
* This function returns the state (ON/OFF, TRUE/FALSE) of the CENTURY
|
||||
* and optionally sets it ON or OFF.
|
||||
* $EXAMPLES$
|
||||
* lOldState := FT_SETCENTURY() // Get current CENTURY Setting
|
||||
* lOldState := FT_SETCENTURY() // Get current CENTURY Setting
|
||||
*
|
||||
* lOldState := FT_SETCENTURY(.T.) // Get the current CENTURY Setting
|
||||
* // and turn it on (set it to TRUE)
|
||||
* lOldState := FT_SETCENTURY( .T. ) // Get the current CENTURY Setting
|
||||
* // and turn it on (set it to TRUE)
|
||||
*
|
||||
* lOldState := FT_SETCENTURY(.F.) // Get the current CENTURY Setting
|
||||
* // and turn it off (set it to FALSE)
|
||||
* lOldState := FT_SETCENTURY( .F. ) // Get the current CENTURY Setting
|
||||
* // and turn it off (set it to FALSE)
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* the Ctrl key is pressed, such as during a MemoEdit().
|
||||
* $EXAMPLES$
|
||||
* IF FT_CTRL()
|
||||
* @24, 0 say "Ctrl"
|
||||
* @ 24, 0 say "Ctrl"
|
||||
* ELSE
|
||||
* @24, 0 say " "
|
||||
* @ 24, 0 say " "
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_CAPLOCK() FT_NUMLOCK() FT_PRTSCR() FT_SHIFT() FT_ALT()
|
||||
|
||||
@@ -4,34 +4,31 @@
|
||||
|
||||
/* $DOC$
|
||||
* $FUNCNAME$
|
||||
* FT_D2E()
|
||||
* FT_D2E()
|
||||
* $CATEGORY$
|
||||
* Conversion
|
||||
* Conversion
|
||||
* $ONELINER$
|
||||
* Convert decimal to scientific notation
|
||||
* Convert decimal to scientific notation
|
||||
* $SYNTAX$
|
||||
* FT_D2E( <nDec>, <nPrecision> ) -> <cNumE>
|
||||
* FT_D2E( <nDec>, <nPrecision> ) -> <cNumE>
|
||||
* $ARGUMENTS$
|
||||
* <nDec> Decimal number to convert
|
||||
* <nDec> Decimal number to convert
|
||||
*
|
||||
* <nPrecision> Number of decimal places in result.
|
||||
* Defaults to 6 decimal places.
|
||||
* <nPrecision> Number of decimal places in result.
|
||||
* Defaults to 6 decimal places.
|
||||
* $RETURNS$
|
||||
* <cNumE> A string representing a number in
|
||||
* scientific notation
|
||||
* <cNumE> A string representing a number in
|
||||
* scientific notation
|
||||
* $DESCRIPTION$
|
||||
* Given a decimal number and the desired precision,
|
||||
* a string representing the equivalent in scientific
|
||||
* notation is returned.
|
||||
* Given a decimal number and the desired precision,
|
||||
* a string representing the equivalent in scientific
|
||||
* notation is returned.
|
||||
* $EXAMPLES$
|
||||
* ? FT_D2E( 12.345, 2 )
|
||||
* -> 1.23E1
|
||||
* ? FT_D2E( 12.345, 2 ) -> 1.23E1
|
||||
*
|
||||
* ? FT_D2E( -12.345, 3 )
|
||||
* -> -1.235E1
|
||||
* ? FT_D2E( -12.345, 3 ) -> -1.235E1
|
||||
*
|
||||
* ? FT_D2E( 0.00000543, 2 )
|
||||
* -> 5.43E-6
|
||||
* ? FT_D2E( 0.00000543, 2 ) -> 5.43E-6
|
||||
* $SEEALSO$
|
||||
* FT_E2D()
|
||||
* $END$
|
||||
|
||||
@@ -58,20 +58,20 @@
|
||||
* // Configure library date functions to begin year on
|
||||
* // July 1st.
|
||||
*
|
||||
* FT_DATECNFG("07/01/80") // year is insignificant
|
||||
* FT_DATECNFG( "07/01/80" ) // year is insignificant
|
||||
*
|
||||
* // Examples of return values:
|
||||
*
|
||||
* // System date format: American aArray[1] aArray[2]
|
||||
* // System date format: American aArray[1] aArray[2]
|
||||
*
|
||||
* aArray := FT_DATECNFG() // '1980.01.01' 1 (Sun.)
|
||||
* aArray := FT_DATECNFG('07/01/80') // '1980.07.01' 1 (Sun.)
|
||||
* aArray := FT_DATECNFG('07/01/80', 2) // '1980.07.01' 2 (Mon.)
|
||||
* aArray := FT_DATECNFG( , 2 ) // '1980.01.01' 2 (Mon.)
|
||||
* aArray := FT_DATECNFG() // "1980.01.01" 1 (Sun.)
|
||||
* aArray := FT_DATECNFG( "07/01/80" ) // "1980.07.01" 1 (Sun.)
|
||||
* aArray := FT_DATECNFG( "07/01/80", 2 ) // "1980.07.01" 2 (Mon.)
|
||||
* aArray := FT_DATECNFG( , 2 ) // "1980.01.01" 2 (Mon.)
|
||||
*
|
||||
* // System date format: British
|
||||
*
|
||||
* aArray := FT_DATECNFG('01/07/80', 2) // '1980.07.01' 2 (Mon.)
|
||||
* aArray := FT_DATECNFG( "01/07/80", 2 ) // "1980.07.01" 2 (Mon.)
|
||||
* $SEEALSO$
|
||||
* FT_ACCTADJ()
|
||||
* $END$
|
||||
|
||||
@@ -27,15 +27,15 @@
|
||||
*
|
||||
* If <nDayNum> is specified:
|
||||
*
|
||||
* aDateInfo[1] - The date of the specified day number
|
||||
* aDateInfo[2] - The beginning date of the year
|
||||
* aDateInfo[3] - The ending date of the year
|
||||
* aDateInfo[ 1 ] - The date of the specified day number
|
||||
* aDateInfo[ 2 ] - The beginning date of the year
|
||||
* aDateInfo[ 3 ] - The ending date of the year
|
||||
*
|
||||
* If <nDayNum> is not specified:
|
||||
*
|
||||
* aDateInfo[1] - The year and day as a character string "YYYYDDD"
|
||||
* aDateInfo[2] - The beginning date of the year
|
||||
* aDateInfo[3] - The ending date of the year
|
||||
* aDateInfo[ 1 ] - The year and day as a character string "YYYYDDD"
|
||||
* aDateInfo[ 2 ] - The beginning date of the year
|
||||
* aDateInfo[ 3 ] - The ending date of the year
|
||||
* $DESCRIPTION$
|
||||
* FT_DAYOFYR() returns an array containing data about a day in the
|
||||
* calendar or fiscal year containing the given date.
|
||||
|
||||
@@ -40,16 +40,16 @@
|
||||
* This is the smallest you should make the buffer. For normal use,
|
||||
* 4096 bytes is recommended
|
||||
* $EXAMPLES$
|
||||
* @ 4,9 TO 11,71
|
||||
* @ 4, 9 TO 11, 71
|
||||
*
|
||||
* FT_DFSETUP("test.txt", 5, 10, 10, 70, 1, 7, 15,;
|
||||
* "AaBb" + Chr(143), .T., 5, 132, 4096)
|
||||
* FT_DFSETUP( "test.txt", 5, 10, 10, 70, 1, 7, 15,;
|
||||
* "AaBb" + Chr( 143 ), .T., 5, 132, 4096 )
|
||||
*
|
||||
* cKey = FT_DISPFILE()
|
||||
* cKey := FT_DISPFILE()
|
||||
*
|
||||
* FT_DFCLOSE()
|
||||
*
|
||||
* @ 20,0 SAY "Key that terminated FT_DISPFILE() was: " + '[' + cKey + ']'
|
||||
* @ 20, 0 SAY "Key that terminated FT_DISPFILE() was: " + "[" + cKey + "]"
|
||||
* $SEEALSO$
|
||||
* FT_DISPFILE() FT_DFCLOSE()
|
||||
* $END$
|
||||
@@ -71,16 +71,16 @@
|
||||
* $DESCRIPTION$
|
||||
* Closes the file opened by FT_DFSETUP()
|
||||
* $EXAMPLES$
|
||||
* @ 4,9 TO 11,71
|
||||
* @ 4, 9 TO 11, 71
|
||||
*
|
||||
* FT_DFSETUP("test.txt", 5, 10, 10, 70, 1, 7, 15,;
|
||||
* "AaBb" + Chr(143), .T., 5, 132, 4096)
|
||||
* FT_DFSETUP( "test.txt", 5, 10, 10, 70, 1, 7, 15,;
|
||||
* "AaBb" + Chr( 143 ), .T., 5, 132, 4096 )
|
||||
*
|
||||
* cKey = FT_DISPFILE()
|
||||
* cKey := FT_DISPFILE()
|
||||
*
|
||||
* FT_DFCLOSE()
|
||||
*
|
||||
* @ 20,0 SAY "Key that terminated FT_DISPFILE() was: " + '[' + cKey + ']'
|
||||
* @ 20, 0 SAY "Key that terminated FT_DISPFILE() was: " + "[" + cKey + "]"
|
||||
* $SEEALSO$
|
||||
* FT_DFSETUP() FT_DISPFILE()
|
||||
* $END$
|
||||
|
||||
@@ -48,16 +48,16 @@
|
||||
* keys must be passed by a unique value and that value
|
||||
* can be found by looking in the keys.h file.
|
||||
* $EXAMPLES$
|
||||
* @ 4,9 TO 11,71
|
||||
* @ 4, 9 TO 11, 71
|
||||
*
|
||||
* FT_DFSETUP("test.txt", 5, 10, 10, 70, 1, 7, 15,;
|
||||
* "AaBb" + Chr(143), .T., 5, 132, 4096)
|
||||
* FT_DFSETUP( "test.txt", 5, 10, 10, 70, 1, 7, 15,;
|
||||
* "AaBb" + Chr( 143 ), .T., 5, 132, 4096 )
|
||||
*
|
||||
* cKey = FT_DISPFILE()
|
||||
* cKey := FT_DISPFILE()
|
||||
*
|
||||
* FT_DFCLOSE()
|
||||
*
|
||||
* @ 20,0 SAY "Key that terminated FT_DISPFILE() was: " + '[' + cKey + ']'
|
||||
* @ 20, 0 SAY "Key that terminated FT_DISPFILE() was: " + "[" + cKey + "]"
|
||||
* $SEEALSO$
|
||||
* FT_DFSETUP() FT_DFCLOSE()
|
||||
* $END$
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
* and returns to the calling procedure.
|
||||
*
|
||||
* FT_DISPMSG( { { "Please Do Not Interrupt" } , ;
|
||||
* { "W+/B", "GR+/B" } } , ;
|
||||
* { "W+/B", "GR+/B" } } , ;
|
||||
* , 5, )
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -28,9 +28,8 @@
|
||||
*
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* PROCEDURE Main()
|
||||
* ? "Dos version: " + FT_DOSVER()
|
||||
* RETURN
|
||||
*
|
||||
* PROCEDURE Main()
|
||||
* ? "Dos version: " + FT_DOSVER()
|
||||
* RETURN
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -8,26 +8,23 @@
|
||||
* $CATEGORY$
|
||||
* Conversion
|
||||
* $ONELINER$
|
||||
* Convert scientific notation string to a decimal
|
||||
* Convert scientific notation string to a decimal
|
||||
* $SYNTAX$
|
||||
* FT_E2D( <cNumE> ) -> <nDec>
|
||||
* FT_E2D( <cNumE> ) -> <nDec>
|
||||
* $ARGUMENTS$
|
||||
* <cNumE> Scientific notation string to convert
|
||||
* <cNumE> Scientific notation string to convert
|
||||
* $RETURNS$
|
||||
* <nDec> Decimal number
|
||||
* <nDec> Decimal number
|
||||
* $DESCRIPTION$
|
||||
* Given a string in the format x.yEz, the decimal
|
||||
* equivalent is returned.
|
||||
* Given a string in the format x.yEz, the decimal
|
||||
* equivalent is returned.
|
||||
* $EXAMPLES$
|
||||
* ? FT_E2D( "1.23E1" )
|
||||
* -> 12.3
|
||||
* ? FT_E2D( "1.23E1" ) -> 12.3
|
||||
*
|
||||
* ? FT_E2D( "-1.235E1" )
|
||||
* -> -12.35
|
||||
* ? FT_E2D( "-1.235E1" ) -> -12.35
|
||||
*
|
||||
* ? ft_d2e( "5.43E-6" )
|
||||
* -> 0.0000543
|
||||
* ? ft_d2e( "5.43E-6" ) -> 0.0000543
|
||||
* $SEEALSO$
|
||||
* FT_D2E()
|
||||
* FT_D2E()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
* Return the absolute difference between two times in hh:mm:ss format
|
||||
* in character hours, minutes and seconds (hh:mm:ss).
|
||||
* $EXAMPLES$
|
||||
* FT_ELTIME( "22:40:12", "23:55:17" ) -> 01:15:05
|
||||
* FT_ELTIME( "23:55:17", "22:40:12" ) -> 01:15:05
|
||||
* FT_ELTIME( "22:40:12", "23:55:17" ) // 01:15:05
|
||||
* FT_ELTIME( "23:55:17", "22:40:12" ) // 01:15:05
|
||||
* $SEEALSO$
|
||||
* FT_ELAPMIN() FT_MIL2MIN() FT_MIN2MIL()
|
||||
* $END$
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
* // the 10th Occurrence of "the", case
|
||||
* // insensitive
|
||||
*
|
||||
* nNextPosition := FT_FINDITH("the", cMemoString, 10)
|
||||
* nNextPosition := FT_FINDITH( "the", cMemoString, 10 )
|
||||
* $SEEALSO$
|
||||
* FT_AT2()
|
||||
* $END$
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
* should be no problems.
|
||||
*
|
||||
* This function does not currently check subst'd drives. So if you
|
||||
* have SUBST E: A:\ then FT_FLOPTST( ASC("E")-ASC("A") ) == 4
|
||||
* have SUBST E: A:\ then FT_FLOPTST( Asc("E")-Asc("A") ) == 4
|
||||
* Any suggestions to fix this limitation are appreciated.
|
||||
*
|
||||
* $EXAMPLES$
|
||||
|
||||
@@ -97,13 +97,13 @@
|
||||
* database workareas.
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* FT_FSELECT(1)
|
||||
* FT_FSELECT( 1 )
|
||||
*
|
||||
* nFile1 := FT_FUSE( "temp.c" )
|
||||
*
|
||||
* ? FT_FLASTRE() // no. of lines in temp.c
|
||||
*
|
||||
* FT_FSELECT(2)
|
||||
* FT_FSELECT( 2 )
|
||||
*
|
||||
* nFile2 := FT_FUSE( "temp.h" )
|
||||
*
|
||||
@@ -183,7 +183,7 @@
|
||||
* $EXAMPLES$
|
||||
* IF ft_fUse( "text.c" ) < 0 // open text file
|
||||
* err := ft_fError()
|
||||
* ? 'Error opening file "Text.c", error code (' + ;
|
||||
* ? 'Error opening file "rext.c", error code (' + ;
|
||||
* LTrim( Str( err ) ) + ')'
|
||||
* ENDIF
|
||||
*
|
||||
@@ -378,7 +378,7 @@
|
||||
* $ONELINER$
|
||||
* Deletes a line from the currently selected text file
|
||||
* $SYNTAX$
|
||||
* FT_FDELETE( [ < nLines > ] ) -> lSuccess
|
||||
* FT_FDELETE( [ <nLines> ] ) -> lSuccess
|
||||
*
|
||||
* $ARGUMENTS$
|
||||
* ^b<nLines>^n is the number of lines to be eliminated, beginning with
|
||||
@@ -416,7 +416,7 @@
|
||||
* $ONELINER$
|
||||
* Inserts a line in the currently selected text file
|
||||
* $SYNTAX$
|
||||
* FT_FINSERT( [ < nLines > ] ) -> lSuccess
|
||||
* FT_FINSERT( [ <nLines> ] ) -> lSuccess
|
||||
*
|
||||
* $ARGUMENTS$
|
||||
* ^b<nLines>^n is the number of lines that should be inserted at the
|
||||
@@ -440,7 +440,7 @@
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* // add a couple of blank lines of text to a file
|
||||
* ft fUse( "test.txt" )
|
||||
* ft_fUse( "test.txt" )
|
||||
*
|
||||
* ft_fGoTo( 10 )
|
||||
*
|
||||
@@ -493,11 +493,11 @@
|
||||
* // add a blank line of text to a file
|
||||
* FT_FUSE( "test.txt" )
|
||||
*
|
||||
* ?FT_FRECNO() // displays 5
|
||||
* ? FT_FRECNO() // displays 5
|
||||
*
|
||||
* FT_FAPPEND()
|
||||
*
|
||||
* ?FT_FRECNO() // displays 6
|
||||
* ? FT_FRECNO() // displays 6
|
||||
*
|
||||
* $SEEALSO$
|
||||
* FT_FRECNO() FT_FDELETE() FT_FINSERT() FT_FLASTRE()
|
||||
@@ -659,7 +659,7 @@
|
||||
*
|
||||
* ? FT_FBOF() // .F.
|
||||
*
|
||||
* FT_FSKIP(-1)
|
||||
* FT_FSKIP( -1 )
|
||||
*
|
||||
* ? FT_FBOF() // .T.
|
||||
*
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
* $RETURNS$
|
||||
* The greatest common divisor of the 2 numbers, or 0 if either is 0.
|
||||
* $DESCRIPTION$
|
||||
* This function calculates the greatest common divisor between 2 numbers,
|
||||
* i.e., the largest number that will divide into both numbers evenly. It
|
||||
* will return zero (0) if either number is zero.
|
||||
* This function calculates the greatest common divisor between 2 numbers,
|
||||
* i.e., the largest number that will divide into both numbers evenly. It
|
||||
* will return zero (0) if either number is zero.
|
||||
* $EXAMPLES$
|
||||
* ? FT_GCD(10,15) // Result: 5
|
||||
* ? FT_GCD(108,54) // Result: 54
|
||||
* ? FT_GCD(102,54) // Result: 6
|
||||
* ? FT_GCD(111,17) // Result: 1
|
||||
* ? FT_GCD( 10, 15 ) // Result: 5
|
||||
* ? FT_GCD( 108, 54 ) // Result: 54
|
||||
* ? FT_GCD( 102, 54 ) // Result: 6
|
||||
* ? FT_GCD( 111, 17 ) // Result: 1
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
*
|
||||
* <xReceiveVar> can be a character type variable, in which case
|
||||
* the function will place all environment strings in the variable
|
||||
* separated by carriage return/line feeds (chr 13 + chr(10)).
|
||||
* separated by carriage return/line feeds (chr 13 + Chr(10)).
|
||||
*
|
||||
* <xReceiveVar> can be an array type, in which case the function
|
||||
* will place each string in an array element. The array MUST be
|
||||
@@ -44,23 +44,23 @@
|
||||
* Get the environment in text form and browse it:
|
||||
*
|
||||
* cEnvBlock := ""
|
||||
* nNumStrings := FT_GETE(@cEnvBlock)
|
||||
* @ 0, 0 to MAXROW() - 1, MAXCOL()
|
||||
* @ MAXROW(), 0 say 'Browse strings, press ESC to exit...'
|
||||
* MEMOWRIT(cEnvBlock, 1, 1, MAXROW() - 2,MAXCOL() - 1, .F.)
|
||||
* nNumStrings := FT_GETE( @cEnvBlock )
|
||||
* @ 0, 0 TO MaxRow() - 1, MaxCol()
|
||||
* @ MaxRow(), 0 SAY 'Browse strings, press ESC to exit...'
|
||||
* MemoWrit( cEnvBlock, 1, 1, MaxRow() - 2, MaxCol() - 1, .F. )
|
||||
*
|
||||
* Get the environment in text form and write it to a file:
|
||||
*
|
||||
* cEnvBlock := ""
|
||||
* FT_GETE(@cEnvBlock)
|
||||
* MEMOWRIT("environ.txt", cEnvBlock)
|
||||
* FT_GETE( @cEnvBlock )
|
||||
* MEMOWRIT( "environ.txt", cEnvBlock )
|
||||
*
|
||||
* Get the environment in Array form:
|
||||
*
|
||||
* aEnvArray := ARRAY(FT_GETE())
|
||||
* FT_GETE(aEnvArray)
|
||||
* ? aEnvArray[1] // "COMSPEC=C:\command.com"
|
||||
* ? aEnvArray[2] // "PATH=C:\;C:\util;C:\harbour"
|
||||
* aEnvArray := Array( FT_GETE() )
|
||||
* FT_GETE( aEnvArray )
|
||||
* ? aEnvArray[ 1 ] // "COMSPEC=C:\command.com"
|
||||
* ? aEnvArray[ 2 ] // "PATH=C:\;C:\util;C:\harbour"
|
||||
* ... etc ...
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
* $SYNTAX$
|
||||
* FT_ISBIT( <cByte>, <nBitPos> ) -> lResult
|
||||
* $ARGUMENTS$
|
||||
* <cByte> is a character from CHR(0) to CHR(255)
|
||||
* <cByte> is a character from Chr(0) to Chr(255)
|
||||
*
|
||||
* <nBitPos> is a number from 0 to 7 conforming to standard right-to-left
|
||||
* bit-numbering convention and representing the position of the
|
||||
@@ -22,7 +22,7 @@
|
||||
* invalid parameters.
|
||||
* $DESCRIPTION$
|
||||
* Tests for status of any selected bit in the byte passed as a parameter.
|
||||
* Byte must be presented in CHR() form, as a literal constant, or as the
|
||||
* Byte must be presented in Chr() form, as a literal constant, or as the
|
||||
* one-byte character result of an expression.
|
||||
*
|
||||
* This function is presented to illustrate that bit-wise operations
|
||||
@@ -30,18 +30,15 @@
|
||||
* .asm versions and use the Clipper Extend system.
|
||||
* $EXAMPLES$
|
||||
* This code tests whether bit 3 is set in the byte represented by
|
||||
* CHR(107):
|
||||
* Chr( 107 ):
|
||||
*
|
||||
* lBitflag := FT_ISBIT(CHR(107), 3)
|
||||
* lBitflag := FT_ISBIT( Chr( 107 ), 3 )
|
||||
* ? lBitflag // result: .T.
|
||||
*
|
||||
* This code tests whether bit 5 is set in the byte represented by ASCII
|
||||
* 65 (letter 'A')
|
||||
* 65 (letter "A")
|
||||
*
|
||||
* ? FT_ISBIT('A', 5) // result: .F.
|
||||
*
|
||||
* For a demonstration of Clipper bit manipulations, compile and
|
||||
* link the program bittest.prg in the Nanforum Toolkit source code.
|
||||
* ? FT_ISBIT( "A", 5 ) // result: .F.
|
||||
* $SEEALSO$
|
||||
* FT_BITSET() FT_BITCLR()
|
||||
* $END$
|
||||
|
||||
@@ -61,8 +61,8 @@
|
||||
*
|
||||
* This source code is written for Microsoft Assembler v5.1.
|
||||
* $EXAMPLES$
|
||||
* FT_SETRATE(0,0) // Set keyboard to fastest possible settings
|
||||
* FT_SETRATE() // Set keyboard to AT defaults (10.9cps,500ms delay)
|
||||
* FT_SETRATE(11,1) // Set keyboard to PS/2 defaults (10cps,500ms delay)
|
||||
* FT_SETRATE( 0, 0 ) // Set keyboard to fastest possible settings
|
||||
* FT_SETRATE() // Set keyboard to AT defaults (10.9cps,500ms delay)
|
||||
* FT_SETRATE( 11, 1 ) // Set keyboard to PS/2 defaults (10cps,500ms delay)
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -35,13 +35,11 @@
|
||||
*
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* cString := "FT_GoodFunc(BadFunc(3,2))"
|
||||
* IF FT_LINKED(cString)
|
||||
* EVAL( &("{||"+cString+"}") )
|
||||
* cString := "FT_GoodFunc( BadFunc( 3, 2 ) )"
|
||||
* IF FT_LINKED( cString )
|
||||
* Eval( &( "{||" + cString + "}" ) )
|
||||
* ELSE
|
||||
* ALERT("Error: "+cString+" was not linked in. Called by FT_LINKED()")
|
||||
* Alert( "Error: " + cString + " was not linked in. Called by FT_LINKED()" )
|
||||
* ENDIF
|
||||
*
|
||||
*
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -43,7 +43,6 @@
|
||||
* ? FT_MADD( dDate, 2, .T. ) // 06/30/91 <- June only has 30 days
|
||||
* ? FT_MADD( dDate, 3 ) // 07/30/91
|
||||
* ? FT_MADD( dDate, 3, .T. ) // 07/31/91 <- forced EOM
|
||||
*
|
||||
* $SEEALSO$
|
||||
* FT_DAYOFYR() FT_DAYTOBOW()
|
||||
* $END$
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
* // The first creates aOptions with the same length as aBar. The
|
||||
* // second assigns a three-element array to each element of aOptions.
|
||||
* LOCAL aOptions[ Len( aBar ) ]
|
||||
* AEVAL( aBar, {| x, i | aOptions[ i ] := { {}, {}, {} } } )
|
||||
* AEval( aBar, {| x, i | aOptions[ i ] := { {}, {}, {} } } )
|
||||
*
|
||||
* // fill color array
|
||||
* // Box Border, Menu Options, Menu Bar, Current Selection, Unselected
|
||||
@@ -146,29 +146,29 @@
|
||||
* FT_FILL() is a function used to set up the menu options prior
|
||||
* to calling FT_MENU1().
|
||||
* $EXAMPLES$
|
||||
* FT_FILL( aOptions[ 1 ], "A. Execute A Dummy Procedure" , {|| fubar() }, .T. )
|
||||
* FT_FILL( aOptions[ 1 ], "A. Execute A Dummy Procedure" , {|| fubar() }, .T. )
|
||||
*
|
||||
* The above would be added to the sub-menu associated with the first menu
|
||||
* bar item, would execute the function FUBAR() when that option was
|
||||
* selected, and would be selectable.
|
||||
* The above would be added to the sub-menu associated with the first menu
|
||||
* bar item, would execute the function FUBAR() when that option was
|
||||
* selected, and would be selectable.
|
||||
*
|
||||
*
|
||||
* FT_FILL( aOptions[ 3 ], "B. Enter Daily Charges" , {|| .T. }, .F. )
|
||||
* FT_FILL( aOptions[ 3 ], "B. Enter Daily Charges" , {|| .T. }, .F. )
|
||||
*
|
||||
* The above would be added to the sub-menu associated with the third menu
|
||||
* bar item, and would be unselectable.
|
||||
* The above would be added to the sub-menu associated with the third menu
|
||||
* bar item, and would be unselectable.
|
||||
*
|
||||
*
|
||||
* FT_FILL( aOptions[ 2 ], "C. Enter Payments On Accounts", {|| .T. }, .T. )
|
||||
* FT_FILL( aOptions[ 2 ], "C. Enter Payments On Accounts", {|| .T. }, .T. )
|
||||
*
|
||||
* The above would be added to the sub-menu associated with the second menu
|
||||
* bar item, and would be selectable, but would do nothing when selected.
|
||||
* The above would be added to the sub-menu associated with the second menu
|
||||
* bar item, and would be selectable, but would do nothing when selected.
|
||||
*
|
||||
*
|
||||
* FT_FILL( aOptions[ 4 ], "C. Exit" , {|| .F. }, .T. )
|
||||
* FT_FILL( aOptions[ 4 ], "C. Exit" , {|| .F. }, .T. )
|
||||
*
|
||||
* The above would be added to the sub-menu associated with the fourth menu
|
||||
* bar item, and would be selectable, and would exit FT_MENU1() when chosen.
|
||||
* The above would be added to the sub-menu associated with the fourth menu
|
||||
* bar item, and would be selectable, and would exit FT_MENU1() when chosen.
|
||||
* $SEEALSO$
|
||||
* FT_MENU1()
|
||||
* $END$
|
||||
|
||||
@@ -120,29 +120,29 @@
|
||||
* deal then use the standard Clipper commands.
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* #include "ftmenuto.ch"
|
||||
* #include "ftmenuto.ch"
|
||||
*
|
||||
* // Simple prompt
|
||||
* @ 1, 1 PROMPT "Menu choice #1"
|
||||
* // Simple prompt
|
||||
* @ 1, 1 PROMPT "Menu choice #1"
|
||||
*
|
||||
* // Prompt with color
|
||||
* @ 3, 1 PROMPT "Menu choice #2" COLOR "W+/R,W+/B"
|
||||
* // Prompt with color
|
||||
* @ 3, 1 PROMPT "Menu choice #2" COLOR "W+/R,W+/B"
|
||||
*
|
||||
* // Prompt with a message
|
||||
* @ 5, 1 PROMPT "Menu choice #3" MESSAGE "Go to lunch"
|
||||
* // Prompt with a message
|
||||
* @ 5, 1 PROMPT "Menu choice #3" MESSAGE "Go to lunch"
|
||||
*
|
||||
* // Prompt with pinpoint message control
|
||||
* @ 7, 1 PROMPT "Menu choice #4" MESSAGE "Drop Dead" ;
|
||||
* MSGROW 22 MSGCOL 4 MSGCOLOR "GR+/N"
|
||||
* // Prompt with pinpoint message control
|
||||
* @ 7, 1 PROMPT "Menu choice #4" MESSAGE "Drop Dead" ;
|
||||
* MSGROW 22 MSGCOL 4 MSGCOLOR "GR+/N"
|
||||
*
|
||||
* // Prompt with a trigger character ("#" character)
|
||||
* @11, 1 PROMPT "Menu choice #6" TRIGGER 13
|
||||
* // Prompt with a trigger character ("#" character)
|
||||
* @ 11, 1 PROMPT "Menu choice #6" TRIGGER 13
|
||||
*
|
||||
* // Prompt with trigger character color control
|
||||
* @13, 1 PROMPT "Menu Choice #7" TRIGGER 13 TRIGGERCOLOR "R+/BG,G+/N"
|
||||
* // Prompt with trigger character color control
|
||||
* @ 13, 1 PROMPT "Menu Choice #7" TRIGGER 13 TRIGGERCOLOR "R+/BG,G+/N"
|
||||
*
|
||||
* // Prompt with right and left arrow keys disabled
|
||||
* @15, 1 PROMPT "Menu Choice #8" RIGHT 8 LEFT 8
|
||||
* // Prompt with right and left arrow keys disabled
|
||||
* @ 15, 1 PROMPT "Menu Choice #8" RIGHT 8 LEFT 8
|
||||
* $INCLUDE$
|
||||
* ftmenuto.ch
|
||||
* $SEEALSO$
|
||||
@@ -182,11 +182,11 @@
|
||||
* Note that this command can also be called using function-style
|
||||
* syntax. See the entry for FT_MENUTO() for further details.
|
||||
* $EXAMPLES$
|
||||
* #include "ftmenuto.ch"
|
||||
* #include "ftmenuto.ch"
|
||||
*
|
||||
* // Simple command
|
||||
* // Simple command
|
||||
*
|
||||
* MENU TO memvar
|
||||
* MENU TO memvar
|
||||
*
|
||||
* $INCLUDE$
|
||||
* ftmenuto.ch
|
||||
|
||||
@@ -26,11 +26,11 @@
|
||||
* the string are pronounced. FT_METAPH() will group sound-alikes
|
||||
* together, and forgive shortcomings in spelling ability.
|
||||
* $EXAMPLES$
|
||||
* USE Persons
|
||||
* INDEX ON FT_METAPH( LastName ) TO LastName
|
||||
* USE persons
|
||||
* INDEX ON FT_METAPH( LastName ) TO lastname
|
||||
* SEEK FT_METAPH( "Philmore" )
|
||||
* ? FOUND(), LastName // Result: .T. Philmore
|
||||
* ? Found(), LastName // Result: .T. Philmore
|
||||
* SEEK FT_METAPH( "Fillmore" )
|
||||
* ? FOUND(), LastName // Result: .T. Philmore
|
||||
* ? Found(), LastName // Result: .T. Philmore
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
* $DESCRIPTION$
|
||||
* Converts time in military format to number of minute of the day.
|
||||
* $EXAMPLES$
|
||||
* FT_MIL2MIN( "1729" ) -> 1049
|
||||
* FT_MIL2MIN( "1729" ) // 1049
|
||||
* $SEEALSO$
|
||||
* FT_MIN2MIL() FT_CIV2MIL() FT_MIL2CIV() FT_SYS2MIL()
|
||||
* $END$
|
||||
@@ -40,7 +40,7 @@
|
||||
* $DESCRIPTION$
|
||||
* Converts minute of the day to military format time.
|
||||
* $EXAMPLES$
|
||||
* FT_MIN2MIL( 279 ) -> 0439
|
||||
* FT_MIN2MIL( 279 ) // 0439
|
||||
* $SEEALSO$
|
||||
* FT_MIL2MIN() FT_MIL2CIV() FT_CIV2MIL() FT_SYS2MIL()
|
||||
* $END$
|
||||
@@ -63,13 +63,15 @@
|
||||
* $DESCRIPTION$
|
||||
* Converts time from military to civilian format
|
||||
* $EXAMPLES$
|
||||
* FT_MIL2CIV( "1640" ) -> 4:40 pm
|
||||
* FT_MIL2CIV( "1640" ) // 4:40 pm
|
||||
*
|
||||
* FT_MIL2CIV( "0440" ) -> 4:40 am
|
||||
* FT_MIL2CIV( "0440" ) // 4:40 am
|
||||
*
|
||||
* FT_MIL2CIV( "1200" ) -> 12:00 n
|
||||
* FT_MIL2CIV( "1200" ) // 12:00 n
|
||||
*
|
||||
* FT_MIL2CIV( "0000" ) and FT_MIL2CIV( "2400" ) -> 12:00 m
|
||||
* FT_MIL2CIV( "0000" ) // 12:00 m
|
||||
*
|
||||
* FT_MIL2CIV( "2400" ) // 12:00 m
|
||||
*
|
||||
* Caution: leading blanks are irrelevant.
|
||||
* $SEEALSO$
|
||||
@@ -94,13 +96,13 @@
|
||||
* $DESCRIPTION$
|
||||
* Converts time from 12-hour civilian format to military.
|
||||
* $EXAMPLES$
|
||||
* FT_CIV2MIL( " 5:40 pm" ) -> 1740
|
||||
* FT_CIV2MIL( " 5:40 pm" ) // 1740
|
||||
*
|
||||
* FT_CIV2MIL( " 5:40 am" ) -> 0540
|
||||
* FT_CIV2MIL( " 5:40 am" ) // 0540
|
||||
*
|
||||
* FT_CIV2MIL( "12:00 n" ) -> 1200
|
||||
* FT_CIV2MIL( "12:00 n" ) // 1200
|
||||
*
|
||||
* FT_CIV2MIL( "12:00 m" ) -> 0000
|
||||
* FT_CIV2MIL( "12:00 m" ) // 0000
|
||||
*
|
||||
* Caution: leading blanks are irrelevant; p,a,n,m must be preceded by
|
||||
* one and only one space.
|
||||
@@ -125,7 +127,7 @@
|
||||
* $DESCRIPTION$
|
||||
* Return current system time as character string in military format.
|
||||
* $EXAMPLES$
|
||||
* FT_SYS2MIL() -> 1623
|
||||
* FT_SYS2MIL() // 1623
|
||||
* $SEEALSO$
|
||||
* FT_MIL2CIV() FT_CIV2MIL()
|
||||
* $END$
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
* $RETURNS$
|
||||
* <aDHM_>
|
||||
* where:
|
||||
* aDHM_[1] = cDAYS, aDHM_[2] = cHours, aDHM_[3] = cMinutes
|
||||
* aDHM_[ 1 ] = cDAYS, aDHM_[ 2 ] = cHours, aDHM_[ 3 ] = cMinutes
|
||||
* $DESCRIPTION$
|
||||
* Converts numeric minutes into a character array containing
|
||||
* days, hours & minutes.
|
||||
* $EXAMPLES$
|
||||
* aDHM_ = MIN2DHM(16789) -> aDHM_[1] = 11, aDHM_[2] = 15, aDHM_[3] = 49
|
||||
* aDHM_ := MIN2DHM( 16789 ) // aDHM_[ 1 ] = 11, aDHM_[ 2 ] = 15, aDHM_[ 3 ] = 49
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year and month as a character string "YYYYMM"
|
||||
* aDateInfo[2] - The beginning date of the month
|
||||
* aDateInfo[3] - The ending date of the month
|
||||
* aDateInfo[ 1 ] - The year and month as a character string "YYYYMM"
|
||||
* aDateInfo[ 2 ] - The beginning date of the month
|
||||
* aDateInfo[ 3 ] - The ending date of the month
|
||||
* $DESCRIPTION$
|
||||
* FT_MONTH() returns an array containing data about the month
|
||||
* containing the given date.
|
||||
|
||||
@@ -102,15 +102,15 @@
|
||||
* This is a mouse meta function that checks for the presence
|
||||
* of a double click.
|
||||
* $EXAMPLES$
|
||||
* IF FT_MISREGION( 10, 10, 11, 20 ) .AND.;
|
||||
* FT_MDBLCLK(0,1,,FT_MGETX(),FT_MGETY()) // double click, right button
|
||||
* // at current location with
|
||||
* // default interval
|
||||
* IF FT_MISREGION( 10, 10, 11, 20 ) .AND.;
|
||||
* FT_MDBLCLK( 0, 1,, FT_MGETX(), FT_MGETY() ) // double click, right button
|
||||
* // at current location with
|
||||
* // default interval
|
||||
*
|
||||
* MnuItem1()
|
||||
* ENDIF
|
||||
* MnuItem1()
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_MBUTPRS() FT_MBUTREL()
|
||||
* FT_MBUTPRS() FT_MBUTREL()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
* $EXAMPLES$
|
||||
* FT_MCONOFF( 10, 10, 11, 20 )
|
||||
* $SEEALSO$
|
||||
* FT_MSHOWCRS() FT_MHIDECRS() FT_MXLIMIT() FT_MYLIMIT() FT_MINREGION()
|
||||
* FT_MSHOWCRS() FT_MHIDECRS() FT_MXLIMIT() FT_MYLIMIT() FT_MINREGION()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -160,10 +160,10 @@
|
||||
* within the confines of the specified region.
|
||||
* $EXAMPLES$
|
||||
* IF FT_MINREGION( 10, 10, 11, 20 )
|
||||
* nChoice := 1
|
||||
* nChoice := 1
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_MXLIMIT() FT_MYLIMIT() FT_MINREGION()
|
||||
* FT_MXLIMIT() FT_MYLIMIT() FT_MINREGION()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -223,7 +223,7 @@
|
||||
*
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* FT_MSETSENS( 75,75,50 ) // a little less mouse movement necessary.
|
||||
* FT_MSETSENS( 75, 75, 50 ) // a little less mouse movement necessary.
|
||||
* $SEEALSO$
|
||||
* FT_MGETSENS()
|
||||
* $END$
|
||||
@@ -293,10 +293,10 @@
|
||||
* my screen showed 6.24 but this routine returned 30 for the minor version
|
||||
* number!
|
||||
* $EXAMPLES$
|
||||
* nMajor:=FT_MVERSION( @nMinor )
|
||||
* IF (nMajor+nMinor/100)<7.2
|
||||
* ? "Sorry mouse driver version too old"
|
||||
* RETURN
|
||||
* nMajor := FT_MVERSION( @nMinor )
|
||||
* IF ( nMajor + nMinor / 100 ) < 7.2
|
||||
* ? "Sorry mouse driver version too old"
|
||||
* RETURN
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_MSETSENS()
|
||||
@@ -313,7 +313,7 @@
|
||||
* $SYNTAX$
|
||||
* FT_MSETPAGE( <@nPage> ) -> NIL
|
||||
* $ARGUMENTS$
|
||||
* <nPage> is the desired display page.
|
||||
* <nPage> is the desired display page.
|
||||
* $RETURNS$
|
||||
* NIL
|
||||
* $DESCRIPTION$
|
||||
@@ -346,7 +346,7 @@
|
||||
* values of nPage is dependent upon the display mode. See FT_SETVPG()
|
||||
* for changing the current video page
|
||||
* $EXAMPLES$
|
||||
* nPage = FT_MGETPAGE( ) // Gets the mouse cursor display page
|
||||
* nPage := FT_MGETPAGE( ) // Gets the mouse cursor display page
|
||||
* $SEEALSO$
|
||||
* FT_MSETPAGE()
|
||||
* $END$
|
||||
@@ -404,7 +404,7 @@
|
||||
* This function works like most Clipper state functions. If no value
|
||||
* is sent to FT_MCURSOR() it will return the state of the mouse cursor.
|
||||
* $EXAMPLES$
|
||||
* IF !( FT_MCURSOR() )
|
||||
* IF ! FT_MCURSOR()
|
||||
* FT_MCURSOR( .T. )
|
||||
* ENDIF
|
||||
* $END$
|
||||
@@ -471,7 +471,7 @@
|
||||
* does not increment the varaible above 0.
|
||||
* $EXAMPLES$
|
||||
* FT_MHIDECRS()
|
||||
* @ 10, 10 to 20, 20
|
||||
* @ 10, 10 TO 20, 20
|
||||
* FT_MSHOWCRS()
|
||||
* $SEEALSO$
|
||||
* FT_MSHOWCRS() FT_MCONOFF()
|
||||
@@ -543,7 +543,7 @@
|
||||
* $EXAMPLES$
|
||||
* ? FT_MGETX()
|
||||
* $SEEALSO$
|
||||
* FT_MGETCOORD() FT_MDEFCRS() FT_MGETPOS() FT_MGETY()
|
||||
* FT_MGETCOORD() FT_MDEFCRS() FT_MGETPOS() FT_MGETY()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -618,7 +618,7 @@
|
||||
* coordinates.
|
||||
* $EXAMPLES$
|
||||
* FT_MSETCOORD( 10, 20 ) // position mouse cursor at row 10, col 20
|
||||
* // in text screen coordinates
|
||||
* // in text screen coordinates
|
||||
* $SEEALSO$
|
||||
* FT_MGETPOS() FT_MGETCOORD() FT_MSETPOS() FT_MDEFCRS() FT_MGETX() FT_MGETY()
|
||||
* $END$
|
||||
@@ -644,7 +644,7 @@
|
||||
* $EXAMPLES$
|
||||
* FT_MXLIMIT( 10, 20 )
|
||||
* $SEEALSO$
|
||||
* FT_MYLIMIT() FT_MINREGION()
|
||||
* FT_MYLIMIT() FT_MINREGION()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -668,7 +668,7 @@
|
||||
* $EXAMPLES$
|
||||
* FT_MYLIMIT( 10, 20 )
|
||||
* $SEEALSO$
|
||||
* FT_MXLIMIT() FT_MINREGION()
|
||||
* FT_MXLIMIT() FT_MINREGION()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -710,11 +710,11 @@
|
||||
* Retrieves the mouse button status and the position of the cursor when
|
||||
* a button was last pressed.
|
||||
* $EXAMPLES$
|
||||
* IF Empty( FT_MBUTPRS(1) )
|
||||
* IF Empty( FT_MBUTPRS( 1 ) )
|
||||
* ? "No Item selected"
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_MBUTREL() FT_MDBLCLK()
|
||||
* FT_MBUTREL() FT_MDBLCLK()
|
||||
* $END$
|
||||
*/
|
||||
|
||||
|
||||
@@ -38,9 +38,9 @@
|
||||
* also the FutureValue and PresentValue for further explanations.
|
||||
* The formula to calculate the net present value is:
|
||||
*
|
||||
* NetPresentValue = SUM(CashFlow[i] / ((1 + InterestRate) ** i))
|
||||
* FOR i = 1 TO NoOfCashFlows
|
||||
* NetPresentValue := SUM( CashFlow[ i ] / ( ( 1 + InterestRate ) ** i ) )
|
||||
* FOR i := 1 TO NoOfCashFlows
|
||||
* $EXAMPLES$
|
||||
* nNetPresentValue := FT_NETPV(10000, 10, { 10000,15000,16000,17000 } )
|
||||
* nNetPresentValue := FT_NETPV( 10000, 10, { 10000, 15000, 16000, 17000 } )
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -40,10 +40,10 @@
|
||||
* -> Twenty Three Dollars and 99/100
|
||||
*
|
||||
* x := -23.99
|
||||
* cents := Str( ( x - int( x ) ) * 100, 2, 0 ) + "/100"
|
||||
* x := int( x )
|
||||
* cents := Str( ( x - Int( x ) ) * 100, 2, 0 ) + "/100"
|
||||
* x := Int( x )
|
||||
* string := iif( x < 0, "Credit of ", "Debit of " )
|
||||
* ? string + FT_NTOW( abs( x ) ) + " Dollars and " + "99/100"
|
||||
* ? string + FT_NTOW( Abs( x ) ) + " Dollars and " + "99/100"
|
||||
* -> Credit of Twenty Three Dollars and 99/100
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -86,8 +86,8 @@
|
||||
* @nHandle, @nOpenCnt )
|
||||
*
|
||||
* IF nRc != 0
|
||||
* ? "Error: " + Str( nRc ) )
|
||||
* QUIT
|
||||
* ? "Error: " + Str( nRc )
|
||||
* QUIT
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_NWSEMEX() FT_NWSEMWAIT() FT_NWSEMSIG() FT_NWSEMCLOSE() FT_NWSEMLOCK()
|
||||
|
||||
@@ -32,16 +32,16 @@
|
||||
*
|
||||
* FT_OnTick( "CLOCK", 9 )
|
||||
*
|
||||
* procedure Clock
|
||||
* PROCEDURE Clock()
|
||||
*
|
||||
* local nRow := Row()
|
||||
* local nCol := Col()
|
||||
* LOCAL nRow := Row()
|
||||
* LOCAL nCol := Col()
|
||||
*
|
||||
* @ 0, 0 say Time()
|
||||
* @ 0, 0 SAY Time()
|
||||
*
|
||||
* SetPos( nRow, nCol )
|
||||
* SetPos( nRow, nCol )
|
||||
*
|
||||
* return
|
||||
* RETURN
|
||||
*
|
||||
* $SEEALSO$
|
||||
*
|
||||
|
||||
@@ -29,8 +29,8 @@
|
||||
* $EXAMPLES$
|
||||
* cMyFile := FT_ORIGIN()
|
||||
*
|
||||
* IF cMyFile != "C:\appdir\myfile.exe"
|
||||
* ?"Incorrect startup file. Please remove/rename and start again"
|
||||
* IF !( cMyFile == "C:\appdir\myfile.exe" )
|
||||
* ? "Incorrect startup file. Please remove/rename and start again"
|
||||
* QUIT
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
|
||||
/* $DOC$
|
||||
* $FUNCNAME$
|
||||
* FT_PCHR()
|
||||
* FT_PChr()
|
||||
* $CATEGORY$
|
||||
* String
|
||||
* $ONELINER$
|
||||
* Convert printer control codes
|
||||
* $SYNTAX$
|
||||
* FT_PCHR( <cString> ) -> <cPrinterFormat>
|
||||
* FT_PChr( <cString> ) -> <cPrinterFormat>
|
||||
* $ARGUMENTS$
|
||||
* <cString> is the representation of the printer control codes in
|
||||
* text, numeric, hexadecimal, Epson command format, or any combination
|
||||
@@ -74,17 +74,17 @@
|
||||
* /USA Select USA international char set
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* cSetUp := '27,116,1'
|
||||
* Set Print ON
|
||||
* ? FT_PCHR( cSetUp ) -> (CHR(27)+CHR(116)+CHR(1))
|
||||
* cSetUp := "27,116,1"
|
||||
* SET PRINT ON
|
||||
* ? FT_PChr( cSetUp ) -> (Chr(27)+Chr(116)+Chr(1))
|
||||
* <select Epson char. graphics>
|
||||
*
|
||||
* ? FT_PCHR( '27,"x",0' ) -> (CHR(27)+CHR(120)+CHR(0))
|
||||
* ? FT_PChr( '27,"x",0' ) -> (Chr(27)+Chr(120)+Chr(0))
|
||||
* <Epson draft mode>
|
||||
*
|
||||
* ? FT_PCHR( '&1B,"E"' ) -> (CHR(27)+CHR(69)) <HP reset>
|
||||
* ? FT_PChr( '&1B,"E"' ) -> (Chr(27)+Chr(69)) <HP reset>
|
||||
*
|
||||
* ? FT_PCHR( '/ELITE,/NLQ' ) ->(CHR(27)+CHR(77)+CHR(27)+CHR(120)+CHR(1))
|
||||
* ? FT_PChr( "/ELITE,/NLQ" ) ->(Chr(27)+Chr(77)+Chr(27)+Chr(120)+Chr(1))
|
||||
* <Epson elite & near letter quality>
|
||||
* $SEEALSO$
|
||||
*
|
||||
|
||||
@@ -28,6 +28,6 @@
|
||||
* This function was written for version 5.1 of MicroSoft C. You may
|
||||
* have to modify the source code to use another compiler.
|
||||
* $EXAMPLES$
|
||||
* local nVMode := FT_PEEK( 0, 1097 ) // Get the current video mode
|
||||
* LOCAL nVMode := FT_PEEK( 0, 1097 ) // Get the current video mode
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -37,12 +37,12 @@
|
||||
* pending message is issued much too soon after the current one.
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* FT_PENDING("Message one",20,0,3,"W+/G") // Displays "Message one."
|
||||
* // sets row to 20, col to 0.
|
||||
* // wait to 3 and color to
|
||||
* // bright white over green.
|
||||
* FT_PENDING("Message two") // Displays "Message two", after 5 sec.
|
||||
* FT_PENDING("Message three") // Displays "Message three", after 5 sec.
|
||||
* FT_PENDING( "Message one",20,0,3,"W+/G" ) // Displays "Message one."
|
||||
* // sets row to 20, col to 0.
|
||||
* // wait to 3 and color to
|
||||
* // bright white over green.
|
||||
* FT_PENDING( "Message two" ) // Displays "Message two", after 5 sec.
|
||||
* FT_PENDING( "Message three" ) // Displays "Message three", after 5 sec.
|
||||
*
|
||||
*
|
||||
* Note that default row, col, wait time and color need to be set only
|
||||
|
||||
@@ -31,6 +31,6 @@
|
||||
* This function was written for version 5.1 of MicroSoft C. You may
|
||||
* have to modify the source code to use another compiler.
|
||||
* $EXAMPLES$
|
||||
* FT_POKE( 0, 1047, 64) // Turn CapsLock on
|
||||
* FT_POKE( 0, 1047, 64 ) // Turn CapsLock on
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -41,8 +41,8 @@
|
||||
* To use another assembler, rearrange the SEGMENT and PROC directives
|
||||
* and make any other necessary changes to the source code.
|
||||
* $EXAMPLES$
|
||||
* FT_PUTKEY( -9 ) // Stuff the F10 key
|
||||
* FT_PUTKEY( 276 ) // Stuff the Alt T key
|
||||
* KEYSTROKE 28 // Stuff the F1 key using a User-Defined Command
|
||||
* FT_PUTKEY( -9 ) // Stuff the F10 key
|
||||
* FT_PUTKEY( 276 ) // Stuff the Alt T key
|
||||
* KEYSTROKE 28 // Stuff the F1 key using a User-Defined Command
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year and quarter as a character string "YYYYQQ"
|
||||
* aDateInfo[2] - The beginning date of the quarter
|
||||
* aDateInfo[3] - The ending date of the quarter
|
||||
* aDateInfo[ 1 ] - The year and quarter as a character string "YYYYQQ"
|
||||
* aDateInfo[ 2 ] - The beginning date of the quarter
|
||||
* aDateInfo[ 3 ] - The ending date of the quarter
|
||||
* $DESCRIPTION$
|
||||
* FT_QTR() returns an array containing data about the quarter
|
||||
* containing the given date.
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
* If you need a random number between 0 and <nMax> inclusive,
|
||||
* then you should ROUND() the result.
|
||||
* $EXAMPLES$
|
||||
* nResult := INT( FT_RAND1(100) ) + 1 // 1 <= nResult <= 100
|
||||
* nResult := ROUND( FT_RAND1(100), 0 ) // 0 <= nResult <= 100
|
||||
* nResult := FT_RAND1( 1 ) // 0 <= nResult < 1
|
||||
* nResult := Int( FT_RAND1( 100 ) ) + 1 // 1 <= nResult <= 100
|
||||
* nResult := Round( FT_RAND1( 100 ), 0 ) // 0 <= nResult <= 100
|
||||
* nResult := FT_RAND1( 1 ) // 0 <= nResult < 1
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -85,19 +85,19 @@
|
||||
* please do and send it to Glenn Scott 71620,1521.]
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* aArray := { { "Invoice 1", SToD( "19910415" ), 1234.32, .T. },;
|
||||
* { "Invoice 2", Date(), 234.98, .F. },;
|
||||
* { "Invoice 3", Date() + 1, 0, .T. } }
|
||||
* nErrorCode := 0
|
||||
* FT_SAVEARR( aArray, "invoice.dat", @nErrorCode )
|
||||
* IF nErrorCode == 0
|
||||
* aSave := FT_RESTARR( "invoice.dat", @nErrorCode )
|
||||
* IF nErrorCode != 0
|
||||
* ? "Error restoring array"
|
||||
* ENDIF
|
||||
* ELSE
|
||||
* ? "Error writing array"
|
||||
* ENDIF
|
||||
* aArray := { { "Invoice 1", SToD( "19910415" ), 1234.32, .T. },;
|
||||
* { "Invoice 2", Date(), 234.98, .F. },;
|
||||
* { "Invoice 3", Date() + 1, 0, .T. } }
|
||||
* nErrorCode := 0
|
||||
* FT_SAVEARR( aArray, "invoice.dat", @nErrorCode )
|
||||
* IF nErrorCode == 0
|
||||
* aSave := FT_RESTARR( "invoice.dat", @nErrorCode )
|
||||
* IF nErrorCode != 0
|
||||
* ? "Error restoring array"
|
||||
* ENDIF
|
||||
* ELSE
|
||||
* ? "Error writing array"
|
||||
* ENDIF
|
||||
*
|
||||
* $SEEALSO$
|
||||
* FT_SAVEARR()
|
||||
|
||||
@@ -138,20 +138,20 @@
|
||||
* The following example uses FT_RGNSTACK() to save and restore various
|
||||
* sections of the screen.
|
||||
*
|
||||
* @ 00, 00, 24, 79 BOX "111111111" // fill the screen with 1's
|
||||
* FT_RGNSTACK("push", 10, 05, 15, 15) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "222222222" // fill the screen with 2's
|
||||
* FT_RGNSTACK("push", 10, 20, 15, 30) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "333333333" // fill the screen with 3's
|
||||
* FT_RGNSTACK("push", 10, 35, 15, 45) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "444444444" // fill the screen with 4's
|
||||
* FT_RGNSTACK("push", 10, 50, 15, 60) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "555555555" // fill the screen with 5's
|
||||
* FT_RGNSTACK("push", 10, 65, 15, 75) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "111111111" // fill the screen with 1's
|
||||
* FT_RGNSTACK( "push", 10, 05, 15, 15 ) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "222222222" // fill the screen with 2's
|
||||
* FT_RGNSTACK( "push", 10, 20, 15, 30 ) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "333333333" // fill the screen with 3's
|
||||
* FT_RGNSTACK( "push", 10, 35, 15, 45 ) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "444444444" // fill the screen with 4's
|
||||
* FT_RGNSTACK( "push", 10, 50, 15, 60 ) // push a region
|
||||
* @ 00, 00, 24, 79 BOX "555555555" // fill the screen with 5's
|
||||
* FT_RGNSTACK( "push", 10, 65, 15, 75 ) // push a region
|
||||
* CLEAR
|
||||
* FT_RGNSTACK("pop") // restore the 5's region
|
||||
* FT_RGNSTACK("pop") // restore the 4's region
|
||||
* FT_RGNSTACK("pop all") // restore the 3's, 2's and 1's regions
|
||||
* FT_RGNSTACK( "pop" ) // restore the 5's region
|
||||
* FT_RGNSTACK( "pop" ) // restore the 4's region
|
||||
* FT_RGNSTACK( "pop all" ) // restore the 3's, 2's and 1's regions
|
||||
* $SEEALSO$
|
||||
* FT_SAVRGN() FT_RSTRGN()
|
||||
* $END$
|
||||
|
||||
@@ -28,17 +28,17 @@
|
||||
* the DOS Set Date service (Interrupt 33, service 43).
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* The following program takes a date from the command line and sets
|
||||
* the DOS system date:
|
||||
* The following program takes a date from the command line and sets
|
||||
* the DOS system date:
|
||||
*
|
||||
* PROCEDURE Main( cDate )
|
||||
* PROCEDURE Main( cDate )
|
||||
*
|
||||
* cDate := iif( cDate == NIL, DToS( Date() ), cDate )
|
||||
* ? "Setting date to: " + cDate + "... "
|
||||
* FT_SETDATE( SToD( cDate ) )
|
||||
* ? "Today is now: " + DToC( Date() )
|
||||
* cDate := iif( cDate == NIL, DToS( Date() ), cDate )
|
||||
* ? "Setting date to: " + cDate + "... "
|
||||
* FT_SETDATE( SToD( cDate ) )
|
||||
* ? "Today is now: " + DToC( Date() )
|
||||
*
|
||||
* RETURN
|
||||
* RETURN
|
||||
*
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* shift key is pressed, such as during a MemoEdit().
|
||||
* $EXAMPLES$
|
||||
* IF FT_SHIFT()
|
||||
* @24, 0 say "Shift"
|
||||
* @ 24, 0 say "Shift"
|
||||
* ELSE
|
||||
* @24, 0 say " "
|
||||
* @ 24, 0 say " "
|
||||
* ENDIF
|
||||
* $SEEALSO$
|
||||
* FT_CAPLOCK() FT_CTRL() FT_NUMLOCK() FT_PRTSCR() FT_ALT()
|
||||
|
||||
@@ -37,15 +37,15 @@
|
||||
* work for more than 24 hours.
|
||||
* $EXAMPLES$
|
||||
* Example 1:
|
||||
* FT_SLEEP(10.0) // Sleep for 10.0 seconds
|
||||
* FT_SLEEP( 10.0 ) // Sleep for 10.0 seconds
|
||||
* Example 2:
|
||||
* nTime := SECONDS() // usually after some interupt from mouse or
|
||||
* // keyboard
|
||||
*
|
||||
* ... intervening code ...
|
||||
*
|
||||
* FT_SLEEP(0.5, nTime) // Sleep until the sytem clock is
|
||||
* // nTime+0.5 seconds.
|
||||
* FT_SLEEP( 0.5, nTime ) // Sleep until the sytem clock is
|
||||
* // nTime+0.5 seconds.
|
||||
*
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
* the original number from the compressed string.
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* replace TRANS->cust_id with FT_SQZN(mcust_id,8),;
|
||||
* TRANS->amount with FT_SQZN(mamount,12,2)
|
||||
* REPLACE TRANS->cust_id WITH FT_SQZN( mcust_id, 8 ),;
|
||||
* TRANS->amount WITH FT_SQZN( mamount, 12, 2 )
|
||||
*
|
||||
* $SEEALSO$
|
||||
* FT_UNSQZN()
|
||||
@@ -61,8 +61,8 @@
|
||||
* requirements for numeric fields in a database file.
|
||||
*
|
||||
* $EXAMPLES$
|
||||
* mcust_id := FT_UNSQZN(TRANS->cust_id,8),;
|
||||
* mamount := FT_UNSQZN(TRANS->amount,12,2)
|
||||
* mcust_id := FT_UNSQZN( TRANS->cust_id, 8 ),;
|
||||
* mamount := FT_UNSQZN( TRANS->amount, 12, 2 )
|
||||
*
|
||||
* $SEEALSO$
|
||||
* FT_SQZN()
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
* $EXAMPLES$
|
||||
* // Set the position to row 5, column 10 on video page 1:
|
||||
*
|
||||
* FT_SETVCUR( 1, 5, 10 )
|
||||
* FT_SETVCUR( 1, 5, 10 )
|
||||
* $END$
|
||||
*/
|
||||
|
||||
|
||||
@@ -41,13 +41,13 @@
|
||||
|
||||
/* $DOC$
|
||||
* $FUNCNAME$
|
||||
* FT_WRTCHR()
|
||||
* FT_WRTChr()
|
||||
* $CATEGORY$
|
||||
* Video
|
||||
* $ONELINER$
|
||||
* Display character on screen
|
||||
* $SYNTAX$
|
||||
* FT_WRTCHR( <nRow>, <nCol>, <cChar>, <nColor> ) -> NIL
|
||||
* FT_WRTChr( <nRow>, <nCol>, <cChar>, <nColor> ) -> NIL
|
||||
* $ARGUMENTS$
|
||||
* <nRow> and <nCol> are the screen coordinates.
|
||||
*
|
||||
@@ -64,11 +64,11 @@
|
||||
* on screen in a specified color attribute. This function is useful
|
||||
* for constructing screens with a lot of text or repetitive screen prints
|
||||
* where speed is important. It is faster and requires less memory than
|
||||
* FT_VIDSTR(). A working example is contained in ClrTable.Prg.
|
||||
* FT_VIDSTR(). A working example is contained in clrtable.prg.
|
||||
* $EXAMPLES$
|
||||
* FOR nX = 1 to MaxRow()
|
||||
* FOR nY = 1 to MaxCol()
|
||||
* FT_WRTCHR( nX, nY, "∙", ( nX - 1 ) + ( nY * 16 ) )
|
||||
* FT_WRTChr( nX, nY, "∙", ( nX - 1 ) + ( nY * 16 ) )
|
||||
* NEXT
|
||||
* NEXT
|
||||
*
|
||||
@@ -173,13 +173,13 @@
|
||||
|
||||
/* $DOC$
|
||||
* $FUNCNAME$
|
||||
* FT_REVCHR()
|
||||
* FT_REVChr()
|
||||
* $CATEGORY$
|
||||
* Video
|
||||
* $ONELINER$
|
||||
* Reverse the color of a single character on the screen
|
||||
* $SYNTAX$
|
||||
* FT_REVCHR( <nTRow>, <nLCol> ) -> NIL
|
||||
* FT_REVChr( <nTRow>, <nLCol> ) -> NIL
|
||||
* $ARGUMENTS$
|
||||
* <nTRow>, <nLCol> are the screen coordinates of the character.
|
||||
* $RETURNS$
|
||||
@@ -190,7 +190,7 @@
|
||||
* This function is the same as FT_REVATTR() except that it changes
|
||||
* only one character on screen and hence is faster and uses less memory.
|
||||
* $EXAMPLES$
|
||||
* FT_REVCHR( 10, 20 )
|
||||
* FT_REVChr( 10, 20 )
|
||||
*
|
||||
* This example will change the text and background at 10, 20 to it's
|
||||
* reverse color attributes without changing or overwriting the
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
* (Microsoft Press)
|
||||
* $EXAMPLES$
|
||||
* PROCEDURE Main( cMode )
|
||||
* FT_SETMODE( VAL( cMode ) )
|
||||
* FT_SETMODE( Val( cMode ) )
|
||||
* ? "Video mode is: " + Str( FT_GETMODE() )
|
||||
* RETURN
|
||||
* $SEEALSO$
|
||||
|
||||
@@ -20,9 +20,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year and week as a character string "YYYYWW"
|
||||
* aDateInfo[2] - The beginning date of the week
|
||||
* aDateInfo[3] - The ending date of the week
|
||||
* aDateInfo[ 1 ] - The year and week as a character string "YYYYWW"
|
||||
* aDateInfo[ 2 ] - The beginning date of the week
|
||||
* aDateInfo[ 3 ] - The ending date of the week
|
||||
* $DESCRIPTION$
|
||||
* FT_WEEK() returns an array containing data about the week
|
||||
* containing the given date.
|
||||
|
||||
@@ -41,9 +41,6 @@
|
||||
*
|
||||
* // last day of year
|
||||
* nWkNum := FT_WOY( SToD( "19911231" ) ) // result: 53
|
||||
*
|
||||
* For a demonstration of this function, compile and link the
|
||||
* program woy.prg in the Nanforum Toolkit source code.
|
||||
* $END$
|
||||
*/
|
||||
|
||||
|
||||
@@ -62,23 +62,18 @@
|
||||
* The border is black on white.
|
||||
* The text is white on black.
|
||||
* The box is centered both vertically and horizontally.
|
||||
*
|
||||
* WARNING: Shadowing is achieved by a call to FT_SHADOW(), an assembly
|
||||
* routine not found in this .prg. In order to use XBOX,
|
||||
* shadow.prg must also be present somewhere (if you are using
|
||||
* NANFOR.LIB, then it is).
|
||||
* $EXAMPLES$
|
||||
* The following displays a two-line box with default settings:
|
||||
*
|
||||
* FT_XBOX(,,,,,,,'This is a test','of the XBOX() function')
|
||||
* FT_XBOX( ,,,,,,, "This is a test", "of the XBOX() function" )
|
||||
*
|
||||
* The following uses all optional parameters and displays a three-line
|
||||
* box. The box is left-justified with a double border. It has a yellow
|
||||
* on red border and white on blue text. The function will wait for a
|
||||
* keypress before returning control to the calling routine.
|
||||
*
|
||||
* FT_XBOX('L','W','D','GR+/R','W/B',5,10,'It is so nice',;
|
||||
* 'to not have to do the messy chore',;
|
||||
* 'of calculating the box size!')
|
||||
* FT_XBOX( "L", "W", "D", "GR+/R", "W/B", 5, 10, "It is so nice",;
|
||||
* "to not have to do the messy chore",;
|
||||
* "of calculating the box size!" )
|
||||
* $END$
|
||||
*/
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
* $RETURNS$
|
||||
* A three element array containing the following data:
|
||||
*
|
||||
* aDateInfo[1] - The year as a character string "YYYY"
|
||||
* aDateInfo[2] - The beginning date of the year
|
||||
* aDateInfo[3] - The ending date of the year
|
||||
* aDateInfo[ 1 ] - The year as a character string "YYYY"
|
||||
* aDateInfo[ 2 ] - The beginning date of the year
|
||||
* aDateInfo[ 3 ] - The ending date of the year
|
||||
* $DESCRIPTION$
|
||||
* FT_YEAR() returns an array containing data about the year
|
||||
* containing the given date.
|
||||
|
||||
Reference in New Issue
Block a user