*** empty log message ***

This commit is contained in:
Luiz Rafael Culik
2000-08-09 10:05:20 +00:00
parent 80ed9154f1
commit 5f3f19ffcb
9 changed files with 259 additions and 69 deletions

View File

@@ -11,7 +11,9 @@
*
* Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
* Documentation for: FOPEN(), FCLOSE(), FWRITE(), FSEEK(), FREAD(), FILE(),
* FREADSTR(), FRENAME(), FERROR(), RENAME, ERASE, CURDIR()
* FREADSTR(), FRENAME(), FERROR(), RENAME, ERASE, CURDIR(),
* DIRMAKE(),DIRCHANGE(),ISDISK(),DIRREMOVE(),DISKCHANGE(),
* DIRCHANGE()
*
* Copyright 2000 David G. Holm <Harbour@SpaceMoose.com>
* Documentation for: HB_FEOF()
@@ -24,7 +26,7 @@
* $FUNCNAME$
* FOPEN()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Open a file.
* $SYNTAX$
@@ -82,7 +84,7 @@
* $FUNCNAME$
* FCREATE()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Creates a file.
* $SYNTAX$
@@ -138,7 +140,7 @@
* $FUNCNAME$
* FREAD()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Reads a specified number of bytes from a file.
* $SYNTAX$
@@ -198,7 +200,7 @@
* $FUNCNAME$
* FWRITE()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Writes characters to a file.
* $SYNTAX$
@@ -252,7 +254,7 @@
* $FUNCNAME$
* FERROR()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Reports the error status of low-level file functions
* $SYNTAX$
@@ -311,7 +313,7 @@
* $FUNCNAME$
* FCLOSE()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Closes an open file
* $SYNTAX$
@@ -345,7 +347,7 @@
* $FUNCNAME$
* FERASE()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Erase a file from disk
* $SYNTAX$
@@ -445,7 +447,7 @@
* $FUNCNAME$
* FSEEK()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Positions the file pointer in a file.
* $SYNTAX$
@@ -561,7 +563,7 @@
* $FUNCNAME$
* FREADSTR()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Reads a string from a file.
* $SYNTAX$
@@ -908,7 +910,7 @@
* $FUNCNAME$
* HB_FEOF()
* $CATEGORY$
* Low level
* Low Level
* $ONELINER$
* Check for end-of-file.
* $SYNTAX$
@@ -924,7 +926,6 @@
* function returns .T. and sets the value returned by FERROR() to -1
* (FS_ERROR) or a C-compiler dependent errno value (EBADF or EINVAL).
* $EXAMPLES$
* nH:=FOPEN('FILE.TXT')
* ? FREADSTR(nH,80)
* IF HB_FEOF(nH)
@@ -932,7 +933,6 @@
* ELSE
* ? FREADSTR(nH,80)
* ENDIF
* </fixed>
* $STATUS$
* R
* $COMPLIANCE$
@@ -943,3 +943,155 @@
* FERROR()
* $END$
*/
/* $DOC$
* $FUNCNAME$
* DIRREMOVE()
* $CATEGORY$
* Low Level
* $ONELINER$
* Attempt to remove an directory
* $SYNTAX$
* DIRCHANGE( <cDirectory> ) --> nError
* $ARGUMENTS$
* <cDirectory> The name of the directory you want to remove.
* $RETURNS$
* <nError> 0 if directory was successfully removed, otherwise
* the number of the last error.
* $DESCRIPTION$
* This function attempt to remove the specified directory in <cDirectory>
* If this function fail, the it will return the last OS error code number.
* See FERROR() function for the description of the error.
* $EXAMPLES$
* cDir:= ".\Backup"
* if (DIRREMOVE(cDir)==0)
* ? "Remove of directory",cDir, "was successfull"
* endif
* $TESTS$
* See examples
* $STATUS$
* R
* $COMPLIANCE$
* This function is CA Clipper 5.3 compliant
* $PLATFORMS$
* All
* $FILES$
* Library is rtl
* $SEEALSO$
* MAKEDIR(),DIRCHANGE(),ISDISK(),DISKCHANGE(),DISKNAME(),FERROR()
* $END$
*/
/* $DOC$
* $FUNCNAME$
* DIRCHANGE()
* $CATEGORY$
* Low Level
* $ONELINER$
* Changes the directory
* $SYNTAX$
* DIRCHANGE( <cDirectory> ) --> nError
* $ARGUMENTS$
* <cDirectory> The name of the directory you want do change into.
* $RETURNS$
* <nError> 0 if directory was successfully changed, otherwise
* the number of the last error.
* $DESCRIPTION$
* This function attempt to change the current directory to the one
* specidied in <cDirectory>.If this function fail, the it will return
* the last OS error code number.See FERROR() function for the
* description of the error.
* $EXAMPLES$
* if (DIRCHANGE("\temp")==0)
* ? "Change to diretory was successfull"
* endif
* $TESTS$
* See examples
* $STATUS$
* R
* $COMPLIANCE$
* This function is CA Clipper 5.3 compliant
* $PLATFORMS$
* All
* $FILES$
* Library is rtl
* $SEEALSO$
* MAKEDIR(),DIRREMOVE(),ISDISK(),DISKCHANGE(),DISKNAME(),FERROR()
* $END$
*/
/* $DOC$
* $FUNCNAME$
* MAKEDIR()
* $CATEGORY$
* Low Level
* $ONELINER$
* Create a new directory
* $SYNTAX$
* MAKEDIR( <cDirectory> ) --> nError
* $ARGUMENTS$
* <cDirectory> The name of the directory you want to create.
* $RETURNS$
* <nError> 0 if directory was successfully changed, otherwise
* the number of the last error.
* $DESCRIPTION$
* This function attempt to create a new directory with the name contained
* in <cDirectory>.If this function fail, the it will return the last OS
* error code number.See FERROR() function for the description of the
* error
* $EXAMPLES$
* cDir:= "Temp"
* If (MAKEDIR( cDir)==0)
* ? "Directory ",cDir," successfully created
* Endif
* $TESTS$
* See examples
* $STATUS$
* R
* $COMPLIANCE$
* This function is CA Clipper 5.3 compliant
* $PLATFORMS$
* All
* $FILES$
* Library is rtl
* $SEEALSO$
* DIRCHANGE(),DIRREMOVE(),ISDISK(),DISKCHANGE(),DISKNAME(),FERROR()
* $END$
*/
/* $DOC$
* $FUNCNAME$
* ISDISK()
* $CATEGORY$
* Low Level
* $ONELINER$
* Verify if a drive is ready
* $SYNTAX$
* ISDISK( <cDrive> ) --> lSuccess
* $ARGUMENTS$
* <cDrive> An valid Drive letter
* $RETURNS$
* <lSuccess> .T. is the drive is ready, otherwise .F.
* $DESCRIPTION$
* This function attempts to access a drive. If the access to the drive
* was successfull, it will return true (.T.), otherwise false(.F.).This
* function is usefull for backup function, so you can determine if the
* drive that will recieve the backup data is ready or not.
* $EXAMPLES$
* IF ISDISK("A")
* ? "Drive is ready "
* Endif
* $TESTS$
* See Examples
* $STATUS$
* R
* $COMPLIANCE$
* This function is CA Clipper 5.3 compliant
* $PLATFORMS$
* All
* $FILES$
* Library is rtl
* $SEEALSO$
* DIRCHANGE(),MAKEDIR(),DIRREMOVE(),DISKCHANGE(),DISKNAME()
* $END$
*/

View File

@@ -1,6 +1,6 @@
/*
* $Id$
*/
//
// $Id$
//
/* $DOC$
* $FUNCNAME$

View File

@@ -1,7 +1,6 @@
/*
* $Id$
*/
//
// $Id$
//
/* $DOC$
* $FUNCNAME$
* The idle states

View File

@@ -79,31 +79,29 @@
* SET SCOREBOARD command or SET() function appropriately toggled.
*
* NOTE GET functions/formatting rules:
*
* @A Allows only alphabetic characters.
* @B Numbers will be left justified
* @C All positive numbers will be followes by CR.
* @D All dates will be in the SET DATE format.
* @E Dates will be in British formal: numbers in European
* format.
* @K Allows a suggested value to be seen within the GET
* area but clears It if any noncu sor key is pressed when
* the cursor is in the first Position in the GET area.
* @R Nontemplate characters will be inserted.
* @S<nSize> Allows horizontal scrolling of a field or variable that
* is <nSize> characters wide.
* @X All negative numbers will be followed by DB
* @Z Displays zero values as blanks.
*
* @! Forces uppercase lettering
*
* @( Displays negative numbers in parentheses with leading
* spaces.
* @) Displays negative numbers in parentheses without leading
* spaces.
*
* <table>
* @A Allows only alphabetic characters.
* @B Numbers will be left justified
* @C All positive numbers will be followes by CR.
* @D All dates will be in the SET DATE format.
* @E Dates will be in British formal: numbers in European format.
* @K Allows a suggested value to be seen within the GET
* area but clears It if any noncu sor key is pressed when
* the cursor is in the first Position in the GET area.
* @R Nontemplate characters will be inserted.
* @S<nSize> Allows horizontal scrolling of a field or variable that
* is <nSize> characters wide.
* @X All negative numbers will be followed by DB
* @Z Displays zero values as blanks.
* @! Forces uppercase lettering
* @( Displays negative numbers in parentheses with leading spaces.
* @) Displays negative numbers in parentheses without leading spaces.
* </table>
* GET templates/formatting rules:
*
* <table>
* A Only alphabetic characters allowed.
* N Only alphabetic and numeric characters allowed
* X Any character allowed.
@@ -118,12 +116,11 @@
* for numeric data types.
* . Position of decimal point.
* , Position of comma.
*
* </table>
* Format PICTURE functions may he grouped together as well as used
* in Conjunction with a PICTURE templates;however, a blank space must
* be included in the PICTURE string if there are both functions and
* templates.
* $EXAMPLES$
* Function Main()
* Local cVar:=Space(50)
@@ -147,6 +144,7 @@
* @...SAY,READ,TRANSFORM()
* $END$
*/
/* $DOC$
* $COMMANDNAME$
* @...SAY

View File

@@ -14,7 +14,7 @@ PRG_SOURCES=\
gentrf.prg \
genng.prg \
genhtm.prg \
genchm.prg \
genchm.prg \
genrtf.prg \
genhpc.prg \
genasc.prg \

View File

@@ -160,6 +160,8 @@ FUNCTION ProcessWww()
LOCAL cData := DELIM + "DATA" + DELIM
LOCAL cMethod := DELIM + 'METHOD' + DELIM
LOCAL cClassDoc := DELIM + "CLASSDOC" + DELIM
Local aGauge,agauge1
LOCAL nDocs:=0
//
// Entry Point
//
@@ -176,11 +178,20 @@ FUNCTION ProcessWww()
nCommentLen := IIF( AT( ".ASM", UPPER( aDirList[ i, F_NAME ] ) ) > 0, 2, 4 )
nReadHandle := FT_FUSE( aDirList[ i, F_NAME ] )
#ifdef GAUGE
if i == 1
aGauge1:= Gauge():New( 5, 5, 7, MaxCol() - 5)
Endif
#endif
#ifdef GAUGE
aGauge1:Update(i/nFiles, "Current file: "+PAD(aDirList[ i, F_NAME ], 47))
#else
@ INFILELINE, 33 CLEAR TO INFILELINE, MAXCOL()
@ INFILELINE, 33 SAY PAD( aDirList[ i, F_NAME ], 47 )
@ MODULELINE, 33 CLEAR TO LINELINE, MAXCOL()
@ LINELINE, 27 SAY "Line:"
#endif
nLineCnt := 0
IF nReadHandle < 0
@@ -193,7 +204,17 @@ FUNCTION ProcessWww()
lDoc := .F.
lClassDoc := .F.
// First find the author
ReadFromTop( nReadHandle )
#ifdef GAUGE
if nDocs == 0
aGauge:= Gauge():New( 8, 5, 10, MaxCol() - 5)
Endif
ReadFromTop( nReadHandle )
nDocs:=CountDocs(aCurDoc)
#else
ReadFromTop( nReadHandle )
#endif
DO WHILE .NOT. lEof
// Read a line
@@ -201,6 +222,7 @@ FUNCTION ProcessWww()
cBuffer := TRIM( SUBSTR( ReadLN( @lEof ), nCommentLen ) )
cBuffer := STRTRAN( cBuffer, CHR( 10 ), '' )
nLineCnt ++
IF nLineCnt % 10 = 0
@ LINELINE, 33 SAY STR( nLineCnt, 5, 0 )
ENDIF
@@ -231,6 +253,7 @@ FUNCTION ProcessWww()
ELSEIF AT( cEnd, cBuffer ) > 0
nCurDoc ++
/* nDocs:=0*/
IF .NOT. lDoc .AND. !lClassDoc
// WRITE_ERROR( cEnd + " encountered outside of Doc area at line" ;
// + STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
@@ -289,10 +312,14 @@ FUNCTION ProcessWww()
cBuffer := ReadLN( @lEof )
nLineCnt ++
// Save the function name
cFuncName := ALLTRIM( SUBSTR( cBuffer, nCommentLen ) )
cFuncName := ALLTRIM( SUBSTR( cBuffer, nCommentLen ) )
#ifdef GAUGE
aGauge:update(nCurdoc/nDocs,"Current Doc:"+cFuncName )
#else
@ MODULELINE, 33 CLEAR TO MODULELINE, MAXCOL()
@ MODULELINE, 33 SAY cFuncName
#endif
nMode := D_NORMAL
// Open a new file
@@ -311,7 +338,7 @@ FUNCTION ProcessWww()
FOR j := 1 TO LEN( cTemp )
cChar := SUBSTR( cTemp, j, 1 )
IF ( cChar >= "0" .AND. cChar <= "9" ) .OR. ;
( cChar >= "A" .AND. cChar <= "Z" ) .OR. cChar = "_" .or. cchar ="@"
( cChar >= "A" .AND. cChar <= "Z" ) .OR. cChar = "_"
cFileName += cChar
ENDIF
NEXT
@@ -682,6 +709,7 @@ end
// Close down the input file
FT_FUSE()
nDocs:=0
IF lClassDoc
oHtm:Close()
ENDIF
@@ -1336,5 +1364,8 @@ STATIC FUNCTION GetItem( cItem, nCurdoc )
ENDIF
RETURN lReturn
#ifdef GAUGE
function CountDocs(aCurDoc)
return len(aCurdoc)
#endif
*+ EOF: GENNG.PRG

View File

@@ -480,7 +480,7 @@ FUNCTION ProcessRtf()
IF !lBlankLine
//ortf:endpar()
// oRtf:WritePar('') //:endpar()
oRtf:WritePar('') //:endpar()
oRtf:WriteParBold( " Examples" )
ENDIF
@@ -490,7 +490,7 @@ FUNCTION ProcessRtf()
ELSEIF AT( cTest, cBuffer ) > 0
IF GetItem( cBuffer, nCurdoc )
IF !lBlankLine
// oRtf:WritePar('') //:endpar()
oRtf:WritePar('') //:endpar()
oRtf:WriteParBold( " Tests" )
oRtf:WritePar( '' ) //:endpar()
ENDIF
@@ -1050,7 +1050,7 @@ FUNCTION GenRtfTable( oRtf )
NEXT
ASORT( aLensFItem,,, { | x, y | x > y } )
oRtf:WritePar( "" )
// oRtf:WritePar( "" )
// nMax2:=checkcar(aTable,1)+1
nMax2 := alensfitem[ 1 ]
nPos := maxrtfelem( afitable )
@@ -1061,7 +1061,7 @@ FUNCTION GenRtfTable( oRtf )
ortf:WriteParFixed( IF( AT( "|", afiTable[ x ] ) > 0, STRTRAN( afiTable[ x ], "|", " " ), afiTable[ x ] ), '\fi-426\li426' )
NEXT
oRtf:WriteParBox( " " + REPL( CHR( 196 ), 80 ) )
oRtf:WritePar( "" )
// oRtf:WritePar( "" )
afiTable := {}
RETURN Nil

View File

@@ -255,9 +255,6 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
CLEAR SCREEN
SET CURSOR OFF
if lNgi
cCompiler := fill_Link_info( cLinkName )
endif
// See if ngi subdirectory is present
IF lNorton
IF EMPTY( DIRECTORY( "hdf.*", "D" ) )
@@ -291,6 +288,10 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
FT_MKDIR( "ipf" )
ENDIF
ENDIF
if lNgi .or. lRtf
cCompiler := fill_Link_info( cLinkName )
endif
IF cAtFile = NIL // use all files in directory
// Loop through each of the types of files
@@ -497,6 +498,8 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
oHtm1:WriteLink( "http://www.gnu.org/copyleft/gpl.html", "GNU License" )
oHtm1:WriteLink( "compileroptions.htm", "Compiler Options" )
oHtm1:WriteLink( "harbourextension.htm", "Harbour Extensions" )
oHtm1:WriteLink( "thegarbagecollector.htm", "The Garbage Collector" )
oHtm1:WriteLink( "theidlestates.htm", "The Idle States" )
oHtm1:WriteText( "</UL>" )
oHtm1:WriteText( "<H2>Alphabetical list of functions by Categorie</H2>" )
ohtm1:writetext('<ul>')
@@ -590,6 +593,19 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
oHtm:AddParam("Local","harbourextensions.htm")
oHtm:EndObject()
OHTM:WriteChmLink('harbourextensions.htm',"Harbour Extensions")
oHtm:ListItem()
oHtm:AddObject("text/sitemap")
oHtm:AddParam("Name","The Garbage Collector")
oHtm:AddParam("Local","thegarbagecollector.htm")
oHtm:EndObject()
oHtm:WriteChmLink( "thegarbagecollector.htm", "The Garbage Collector" )
oHtm:ListItem()
oHtm:AddObject("text/sitemap")
oHtm:AddParam("Name","The Idle States")
oHtm:AddParam("Local","theidlestates.htm")
oHtm:EndObject()
oHtm:WriteChmLink( "theidlestates.htm", "The Idle States" )
endif
oHtm:WriteText( "</UL>" )
ohtm:ListItem()

View File

@@ -142,21 +142,15 @@ METHOD WritePar2( cBuffer,cTag,cStyle ) CLASS TOs2
LOCAL nPos,cLine:=''
Default cStyle to "Default"
if at("-",cBuffer)>0
?cBuffer
Endif
cBuffer := STRTRAN( cBuffer, '<b>', ':hp2.' )
cBuffer := STRTRAN( cBuffer, '</b>', ':ehp2.' )
cBuffer := STRTRAN( cBuffer, '<par>', '' )
cBuffer := STRTRAN( cBuffer, '</par>', '' )
cBuffer := self:DostoOs2Text(cBuffer)
if at("&minus.",cBuffer)>0
?cBuffer
Endif
aLines:=FormatStringBuffer(cBuffer)
if at("&minus.",cBuffer)>0
?cBuffer
Endif
For nPos:=1 to LEN(aLines)
cLine:=aLines[nPos]
@@ -431,7 +425,7 @@ Static FUNCTION FormatStringBuffer(cBuffer)
Local nLen,nPos,aLine:={}
Local cLine:=''
nLen:=Len(cBuffer)
? nLen
WHILE nLen>230
If nLen>230
cLine:=Substr(cBuffer,1,230)
@@ -442,7 +436,7 @@ WHILE nLen>230
AADD(aLine,alltrim(cLine))
nLen:=Len(cBuffer)
Endif
if at('&minus.',cLine)>0
if at('&minus.',cLine)>0 .or. at('&eq.',cLine)>0
nPos:=RAT(".",cLine)
IF nPos>0
cLine:=Substr(cBuffer,1,nPos)