See changelog 20000423 22:00 gmt -3
This commit is contained in:
@@ -32,7 +32,6 @@ LIBS=\
|
||||
debug \
|
||||
vm \
|
||||
rtl \
|
||||
lang \
|
||||
rdd \
|
||||
rtl \
|
||||
vm \
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
#define MODULELINE 12
|
||||
#define LINELINE 14
|
||||
#define ERRORLINE 20
|
||||
#define LONGLINE 100
|
||||
#define LONGLINE 600
|
||||
#define LONGONELINE 86
|
||||
MEMVAR aDirList
|
||||
MEMVAR aDocInfo
|
||||
@@ -208,8 +208,8 @@ FUNCTION ProcessWww()
|
||||
|
||||
IF AT( cDoc, cBuffer ) > 0
|
||||
IF lDoc
|
||||
WRITE_ERROR( cDoc + " encountered during extraction of Doc" ;
|
||||
+ " at line" + STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( cDoc + " encountered during extraction of Doc" ;
|
||||
// + " at line" + STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lDoc := .T.
|
||||
cBuffer := TRIM( SUBSTR( ReadLN( @lEof ), ;
|
||||
@@ -219,8 +219,8 @@ FUNCTION ProcessWww()
|
||||
nMode := D_IGNORE
|
||||
ELSEIF AT( cClassDoc, cBuffer ) > 0
|
||||
IF lClassDoc
|
||||
WRITE_ERROR( cDoc + " encountered during extraction of Doc" ;
|
||||
+ " at line" + STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( cDoc + " encountered during extraction of Doc" ;
|
||||
// + " at line" + STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lClassDoc := .T.
|
||||
cBuffer := TRIM( SUBSTR( ReadLN( @lEof ), ;
|
||||
@@ -232,17 +232,17 @@ FUNCTION ProcessWww()
|
||||
ELSEIF AT( cEnd, cBuffer ) > 0
|
||||
nCurDoc ++
|
||||
IF .NOT. lDoc .AND. !lClassDoc
|
||||
WRITE_ERROR( cEnd + " encountered outside of Doc area at line" ;
|
||||
+ STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( cEnd + " encountered outside of Doc area at line" ;
|
||||
// + STR( nLinecnt, 5, 0 ),,,, aDirList[ i, F_NAME ] )
|
||||
ELSE
|
||||
// Add a new entry to our list of files
|
||||
|
||||
IF EMPTY( cCategory )
|
||||
WRITE_ERROR( "Blank Category",,,, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "Blank Category",,,, aDirList[ i, F_NAME ] )
|
||||
cCategory := "Unknown"
|
||||
ENDIF
|
||||
IF EMPTY( cFuncName )
|
||||
WRITE_ERROR( "Blank Function Name",,,, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "Blank Function Name",,,, aDirList[ i, F_NAME ] )
|
||||
cFuncName := "Unknown"
|
||||
ENDIF
|
||||
AADD( aDocInfo, { cCategory, cFuncName, cOneLine, cFileName } )
|
||||
@@ -343,7 +343,7 @@ FUNCTION ProcessWww()
|
||||
ENDIF
|
||||
IF ohtm:nHandle < 1
|
||||
? "Error creating", cFileName, ".htm"
|
||||
WRITE_ERROR( "Error creating",,,, cFileName + ".htm" )
|
||||
// WRITE_ERROR( "Error creating",,,, cFileName + ".htm" )
|
||||
ENDIF
|
||||
|
||||
ELSEIF (AT( cdata, cBuffer ) > 0 .and. GetItem( cBuffer, nCurdoc ) ).OR. (AT( cmethod, cBuffer ) > 0 .and. GetItem( cBuffer, nCurdoc ) )
|
||||
@@ -392,8 +392,8 @@ FUNCTION ProcessWww()
|
||||
nLineCnt ++
|
||||
cOneLine := ALLTRIM( SUBSTR( cBuffer, nCommentLen ) )
|
||||
IF LEN( cOneLine ) > LONGONELINE
|
||||
WRITE_ERROR( "OneLine", cOneLine, nLineCnt, LONGONELINE, ;
|
||||
aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "OneLine", cOneLine, nLineCnt, LONGONELINE, ;
|
||||
// aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
|
||||
nMode := D_ONELINE
|
||||
@@ -545,8 +545,8 @@ end
|
||||
cBuffer := STRTRAN( cBuffer, "\" + DELIM, DELIM )
|
||||
IF nMode = D_SYNTAX
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "Syntax", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "Syntax", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
IF lAddBlank
|
||||
@@ -556,8 +556,8 @@ end
|
||||
|
||||
ELSEIF nMode = D_ARG
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "Arguments", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "Arguments", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
IF lAddBlank
|
||||
@@ -567,8 +567,8 @@ end
|
||||
prochtmdesc( cbuffer, oHtm, "Arguments" )
|
||||
ELSEIF nMode = D_NORMAL
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
|
||||
@@ -580,15 +580,15 @@ end
|
||||
ProcHtmDesc( cBuffer, oHtm )
|
||||
ELSEIF nMode = D_EXAMPLE
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
prochtmdesc( cBuffer, oHtm, "Example" )
|
||||
ELSEIF nMode = D_DESCRIPTION
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
prochtmdesc( cBuffer, oHtm, "Description" )
|
||||
@@ -605,8 +605,8 @@ end
|
||||
ENDIF
|
||||
ELSEIF nMode = D_DATALINK
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
IF lAddBlank
|
||||
@@ -617,8 +617,8 @@ end
|
||||
|
||||
ELSEIF nMode = D_METHODLINK
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
IF lAddBlank
|
||||
@@ -629,8 +629,8 @@ end
|
||||
|
||||
ELSEIF nMode = D_COMPLIANCE
|
||||
IF LEN( cBuffer ) > LONGLINE
|
||||
WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
LONGLINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "General", cBuffer, nLineCnt, ;
|
||||
// LONGLINE, aDirList[ i, F_NAME ] )
|
||||
ENDIF
|
||||
lBlankLine := EMPTY( cBuffer )
|
||||
prochtmdesc( cBuffer, oHtm, "Compliance" )
|
||||
@@ -646,9 +646,9 @@ end
|
||||
|
||||
// unknown data from somewhere
|
||||
|
||||
WRITE_ERROR( "Unknown Data Type " + cBuffer,, ;
|
||||
nLineCnt, ;
|
||||
LONGONELINE, aDirList[ i, F_NAME ] )
|
||||
// WRITE_ERROR( "Unknown Data Type " + cBuffer,, ;
|
||||
// nLineCnt, ;
|
||||
// LONGONELINE, aDirList[ i, F_NAME ] )
|
||||
|
||||
ENDIF
|
||||
ENDIF
|
||||
@@ -858,7 +858,7 @@ FUNCTION FormatHtmBuff( cBuffer, cStyle, oHtm )
|
||||
ELSEIF cStyle == 'Arguments'
|
||||
|
||||
nPos := 0
|
||||
IF AT( "<par>", cReturn ) > 0
|
||||
IF AT( "<par>", cReturn ) > 0 .and. at('<b>',cReturn)=0
|
||||
cReturn := STRTRAN( cReturn, "<par>", "" )
|
||||
cReturn := STRTRAN( cReturn, "</par>", "" )
|
||||
cReturn := ALLTRIM( cReturn )
|
||||
@@ -870,7 +870,24 @@ FUNCTION FormatHtmBuff( cBuffer, cStyle, oHtm )
|
||||
cOldLine := STRTRAN( cOldLine, ">", ">" )
|
||||
lArgBold := .T.
|
||||
ENDIF
|
||||
elseif AT( "<par>", cReturn ) > 0 .and. at('<b>',cReturn)>0
|
||||
cReturn := STRTRAN( cReturn, "<par>", "" )
|
||||
cReturn := STRTRAN( cReturn, "</par>", "" )
|
||||
cReturn := ALLTRIM( cReturn )
|
||||
nPos := AT( '</b>', cReturn )
|
||||
cOldLine := LEFT( cReturn, nPos + 3 )
|
||||
cReturn := STRTRAN( cReturn, cOldLine, "" )
|
||||
IF AT( "@", cOldLine ) > 0 .OR. AT( "()", cOldLine ) > 0 .OR. AT( "<", cOldLine ) > 0 .OR. AT( "_", cOldLine ) > 0
|
||||
cOldLine := STRTRAN( cOldLine, "<b>", "" )
|
||||
cOldLine := STRTRAN( cOldLine, "</b>", "" )
|
||||
cOldLine := STRTRAN( cOldLine, "<", "<" )
|
||||
cOldLine := STRTRAN( cOldLine, ">", ">" )
|
||||
lArgBold := .T.
|
||||
ENDIF
|
||||
|
||||
ENDIF
|
||||
|
||||
|
||||
DO WHILE !lEndBuffer
|
||||
|
||||
cLine := TRIM( SUBSTR( ReadLN( @lEof ), nCommentLen ) )
|
||||
@@ -1073,7 +1090,7 @@ FUNCTION ProchtmDesc( cBuffer, oHtm, cStyle )
|
||||
cBuffer := STRTRAN( cBuffer, "<par>", "" )
|
||||
cBuffer := STRTRAN( cBuffer, "<fixed>", "" )
|
||||
|
||||
oHtm:WriteText( "<br>" )
|
||||
oHtm:WriteText( "<br><pre>" )
|
||||
oHtm:WritePar( cBuffer )
|
||||
ENDIF
|
||||
DO WHILE !lendFixed
|
||||
|
||||
@@ -153,6 +153,7 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
|
||||
LOCAL aName // Tokenized name
|
||||
LOCAL nLen // Length of the token array
|
||||
LOCAL oHtm
|
||||
LOCAL oHtm1
|
||||
LOCAL ppp
|
||||
LOCAL cTemp
|
||||
PUBLIC theHandle
|
||||
@@ -435,22 +436,26 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
|
||||
FCLOSE( nHpj )
|
||||
ELSEIF lWWW
|
||||
|
||||
// oHtm := THTML():New( "htm\harbour.htm" )
|
||||
asort(adocinfo,,,{|x,y| x[1]+x[2]<y[1]+y[2]})
|
||||
do while .t.
|
||||
citem:=adocinfo[1,1]
|
||||
// citem:=
|
||||
// oHtm1:WriteLink('hb'+strtran(adocinfo[1,1]," ","")+'.htm',cItem)
|
||||
ohtm:=THTML():new('htm\hb'+citem+'.htm')
|
||||
ohtm:WriteText("<ul><center>")
|
||||
ohtm:WriteText('<h2>'+adocinfo[1,1]+'</h2><br>')
|
||||
ohtm:WriteText("<ul>")
|
||||
|
||||
for ppp:=1 to len(adocinfo)
|
||||
|
||||
if citem ==adocinfo[ppp,1]
|
||||
oHtm:Writelink(adocinfo[ppp,4],UpperLower(adocinfo[ppp,2]))
|
||||
else
|
||||
ohtm:WriteText("</ul></center>")
|
||||
ohtm:WriteText("</ul>")
|
||||
ohtm:close()
|
||||
citem:=adocinfo[ppp,1]
|
||||
ohtm:=THTML():new('htm\hb'+citem+'.htm')
|
||||
ohtm:WriteText("<ul><center>")
|
||||
citem:=adocinfo[ppp,1]
|
||||
ohtm:=THTML():new('htm\hb'+strtran(adocinfo[ppp,1]," ","")+'.htm')
|
||||
ohtm:WriteText('<h2>'+adocinfo[ppp,1]+'</h2><br>')
|
||||
ohtm:WriteText("<ul>")
|
||||
oHtm:Writelink(adocinfo[ppp,4],UpperLower(adocinfo[ppp,2]))
|
||||
endif
|
||||
next
|
||||
@@ -459,18 +464,43 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
|
||||
endif
|
||||
enddo
|
||||
ohtm:close()
|
||||
/*
|
||||
oHtm:WriteTitle( "Harbour Reference Guide" )
|
||||
oHtm1 := THTML():New( "htm\harbour.htm" )
|
||||
oHtm1:WriteTitle( "Harbour Reference Guide" )
|
||||
oHtm1:WriteText( "<H1>Harbour Reference Guide</H1>" )
|
||||
oHtm1:WriteText( "<H2>HARBOUR</H2>" + hb_osnEwline() + '<UL>' )
|
||||
oHtm1:WriteLink( "overview", UpperLower( "Harbour Read me" ) )
|
||||
oHtm1:WriteLink( "license", UpperLower( "Harbour License" ) )
|
||||
oHtm1:WriteLink( "http://www.gnu.org/copyleft/gpl.html", "GNU License" )
|
||||
oHtm1:WriteLink( "compileroptions.htm", "Compiler Options" )
|
||||
oHtm1:WriteLink( "harbourextension.htm", "Harbour Extensions" )
|
||||
oHtm1:WriteText( "</UL>" )
|
||||
oHtm1:WriteText( "<H2>Alphabetical list of functions by Categorie</H2>" )
|
||||
ohtm1:writetext('<ul>')
|
||||
|
||||
oHtm:WriteText( "<H1>Harbour Reference Guide</H1>" )
|
||||
oHtm:WriteText( "<H2>HARBOUR</H2>" + hb_osnEwline() + '<UL>' )
|
||||
oHtm:WriteLink( "overview", UpperLower( "Harbour Read me" ) )
|
||||
oHtm:WriteLink( "license", UpperLower( "Harbour License" ) )
|
||||
oHtm:WriteLink( "http://www.gnu.org/copyleft/gpl.html", "GNU License" )
|
||||
oHtm:WriteLink( "compileroptions.htm", "Compiler Options" )
|
||||
oHtm:WriteText( "</UL>" )
|
||||
oHtm:WriteText( "<H2>Alphabetical list of functions</H2>" )
|
||||
oHtm:WriteText( "<UL>" )
|
||||
do while .t.
|
||||
citem:=alltrim(rtrim(ltrim(adocinfo[1,1])))
|
||||
// citem:=strtran(adocinfo[1,1]," ","")
|
||||
ohtm1:WriteLink('hb'+strtran(adocinfo[1,1]," ","")+'.htm',UpperLower(cItem))
|
||||
for ppp:=1 to len(adocinfo)
|
||||
|
||||
if citem<>adocinfo[ppp,1]
|
||||
citem:=alltrim(rtrim(ltrim(adocinfo[ppp,1])))
|
||||
ohtm1:WriteLink('hb'+strtran(adocinfo[ppp,1]," ","")+'.htm',UpperLower(cItem))
|
||||
|
||||
// citem:=strtran(adocinfo[ppp,1]," ","")
|
||||
endif
|
||||
next
|
||||
if ppp>len(adocinfo)
|
||||
exit
|
||||
endif
|
||||
enddo
|
||||
|
||||
ohtm1:writetext('</ul>')
|
||||
ohtm1:close()
|
||||
/*
|
||||
oHtm := THTML():New( "htm\harbour.htm" )
|
||||
|
||||
/*
|
||||
ASORT( awww,,, { | x, y | x[ 1 ] < y[ 1 ] } )
|
||||
|
||||
FOR nPos := 1 TO LEN( aWww )
|
||||
@@ -554,7 +584,7 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
|
||||
? 'ngxc funcn_.txt '
|
||||
? 'ngxc comm.txt'
|
||||
? 'Linking the Guide'
|
||||
? 'ngxl harbour.lnk'
|
||||
? 'ngxl '+cLinkName
|
||||
? 'del ngi\*.*'
|
||||
? 'del *.ngo'
|
||||
ENDIF
|
||||
@@ -573,7 +603,7 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
|
||||
|
||||
// Send out list of authors
|
||||
|
||||
@ INFILELINE, 0 CLEAR TO INFILELINE, MAXCOL()
|
||||
/* @ INFILELINE, 0 CLEAR TO INFILELINE, MAXCOL()
|
||||
@ INFILELINE, 30 SAY "Sorting Author file"
|
||||
|
||||
FOR i := 1 TO LEN( aAuthorList )
|
||||
@@ -650,6 +680,7 @@ FUNCTION MAIN( cFlags, cLinkName, cAtFile )
|
||||
SET CONSOLE ON
|
||||
SET ALTERNATE OFF
|
||||
SET ALTERNATE TO
|
||||
*/
|
||||
@ MAXROW(), 0 SAY "Execute ASSEMBL.BAT to compile and link Guides"
|
||||
|
||||
// Return to caller
|
||||
|
||||
@@ -8,13 +8,6 @@
|
||||
..\..\doc\en\dir.txt
|
||||
..\..\doc\en\error.txt
|
||||
..\..\doc\en\file.txt
|
||||
..\..\doc\en\ht_class.txt
|
||||
..\..\doc\en\ht_conv.txt
|
||||
..\..\doc\en\ht_dbf.txt
|
||||
..\..\doc\en\ht_doc.txt
|
||||
..\..\doc\en\ht_file.txt
|
||||
..\..\doc\en\ht_gt.txt
|
||||
..\..\doc\en\ht_str.txt
|
||||
..\..\doc\en\hvm.txt
|
||||
..\..\doc\en\input.txt
|
||||
..\..\doc\en\license.txt
|
||||
@@ -37,7 +30,7 @@
|
||||
..\..\doc\en\tlabel.txt
|
||||
..\..\doc\en\treport.txt
|
||||
..\..\doc\en\var.txt
|
||||
..\..\doc\subcodes.txt
|
||||
..\..\doc\harbext.txt
|
||||
..\..\doc\gnulice.txt
|
||||
..\..\doc\compiler.txt
|
||||
..\..\doc\en\subcodes.txt
|
||||
..\..\doc\en\harbext.txt
|
||||
..\..\doc\en\gnulice.txt
|
||||
..\..\doc\en\compiler.txt
|
||||
|
||||
@@ -1,3 +1,41 @@
|
||||
*+²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²
|
||||
*+
|
||||
*+ Source Module => C:\HARB\UTILS\HBDOC\OS2.PRG
|
||||
*+
|
||||
*+ Click! is a Clipper/Xbase++ source code reformatter.
|
||||
*+
|
||||
*+ Copyright(C) 1996-1999 by Phil Barnett.
|
||||
*+
|
||||
*+ This program is free software; you can redistribute it and/or modify it
|
||||
*+ under the terms of the GNU General Public License as published by the
|
||||
*+ Free Software Foundation; either version 2 of the License, or (at your
|
||||
*+ option) any later version.
|
||||
*+
|
||||
*+ This program is distributed in the hope that it will be useful, but
|
||||
*+ WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
*+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
*+ General Public License for more details.
|
||||
*+
|
||||
*+ You should have received a copy of the GNU General Public License along
|
||||
*+ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
*+ 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*+
|
||||
*+ You can contact me at:
|
||||
*+
|
||||
*+ Phil Barnett
|
||||
*+ Box 944
|
||||
*+ Plymouth, Florida 32768
|
||||
*+
|
||||
*+ or
|
||||
*+
|
||||
*+ philb@iag.net
|
||||
*+
|
||||
*+ Functions: Class TOs2
|
||||
*+
|
||||
*+ Reformatted by Click! 2.03 on Apr-10-2000 at 10:28 am
|
||||
*+
|
||||
*+²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²
|
||||
|
||||
/*
|
||||
* $Id$
|
||||
*/
|
||||
@@ -43,31 +81,31 @@
|
||||
*+
|
||||
*+±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
|
||||
*+
|
||||
|
||||
CLASS TOs2
|
||||
|
||||
DATA cFile
|
||||
DATA nHandle
|
||||
DATA aLinkRef
|
||||
DATA nRef
|
||||
METHOD New( cFile )
|
||||
METHOD WritePar(cPar)
|
||||
METHOD WriteLink(cLink)
|
||||
METHOD ScanLink(cLink)
|
||||
|
||||
METHOD WriteJumpLink( cLink,cName,cText )
|
||||
METHOD Close()
|
||||
METHOD WriteText(cPar)
|
||||
METHOD WriteParBold(cPar)
|
||||
METHOD WriteTitle(cTopic, cTitle )
|
||||
METHOD DostoOs2Text(cText)
|
||||
METHOD WriteJumpTitle( cTitle, cTopic )
|
||||
METHOD WritePar( cPar )
|
||||
METHOD WriteLink( cLink )
|
||||
METHOD ScanLink( cLink )
|
||||
|
||||
METHOD WriteJumpLink( cLink, cName, cText )
|
||||
METHOD CLOSE()
|
||||
METHOD WriteText( cPar )
|
||||
METHOD WriteParBold( cPar )
|
||||
METHOD WriteTitle( cTopic, cTitle )
|
||||
METHOD DostoOs2Text( cText )
|
||||
METHOD WriteJumpTitle( cTitle, cTopic )
|
||||
ENDCLASS
|
||||
|
||||
METHOD New( cFile ) CLASS TOs2
|
||||
|
||||
IF Self:aLinkRef==NIL
|
||||
Self:aLinkRef:={}
|
||||
Self:nRef:=1
|
||||
IF Self:aLinkRef == NIL
|
||||
Self:aLinkRef := {}
|
||||
Self:nRef := 1
|
||||
ENDIF
|
||||
|
||||
IF VALTYPE( cFile ) <> NIL .AND. VALTYPE( cFile ) == "C"
|
||||
@@ -75,14 +113,14 @@ METHOD New( cFile ) CLASS TOs2
|
||||
Self:nHandle := FCREATE( Self:cFile )
|
||||
ENDIF
|
||||
|
||||
FWRITE( Self:nHandle, ':userdoc.'+CRLF)
|
||||
FWRITE( Self:nHandle, ':userdoc.' + CRLF )
|
||||
|
||||
FWRITE( Self:nHandle, ':docprof toc=123456.'+CRLF)
|
||||
fWrite(Self:nHandle,':title.'+"Harbour Reference Guide"+CRLF)
|
||||
FWRITE( Self:nHandle, ':docprof toc=123456.' + CRLF )
|
||||
FWRITE( Self:nHandle, ':title.' + "Harbour Reference Guide" + CRLF )
|
||||
|
||||
fWrite(Self:nHandle,'.* HBDOC generated IPF Source File.'+CRLF)
|
||||
FWRITE( Self:nHandle, '.* HBDOC generated IPF Source File.' + CRLF )
|
||||
|
||||
fWrite(Self:nHandle,'.* HBDOC Document Source Extractor, (c)1999-2000 Luiz Rafael Culik.'+CRLF)
|
||||
FWRITE( Self:nHandle, '.* HBDOC Document Source Extractor, (c)1999-2000 Luiz Rafael Culik.' + CRLF )
|
||||
|
||||
RETURN Self
|
||||
|
||||
@@ -92,15 +130,15 @@ METHOD WritePar( cPar ) CLASS TOs2
|
||||
|
||||
RETURN Self
|
||||
|
||||
method WriteText(cPar) CLASS TOs2
|
||||
METHOD WriteText( cPar ) CLASS TOs2
|
||||
|
||||
FWRITE( Self:nHandle, cPar + CRLF )
|
||||
FWRITE( Self:nHandle, cPar + CRLF )
|
||||
|
||||
Return Self
|
||||
RETURN Self
|
||||
|
||||
METHOD WriteParBold( cPar ) CLASS TOs2
|
||||
|
||||
FWRITE( Self:nHandle, ':p.:hp2.' + ALLTRIM( cPar ) + CRLF +':ehp2.'+ CRLF)
|
||||
FWRITE( Self:nHandle, ':p.:hp2.' + ALLTRIM( cPar ) + CRLF + ':ehp2.' + CRLF )
|
||||
|
||||
RETURN Self
|
||||
|
||||
@@ -112,73 +150,72 @@ METHOD WriteTitle( cTopic, cTitle ) CLASS TOs2
|
||||
LOCAL nItem
|
||||
cTopic := ALLTRIM( cTopic )
|
||||
|
||||
IF Self:Scanlink(cTopic) ==0
|
||||
nItem:=ASCAN(Self:aLinkRef,{|a| a[1]==cTopic})
|
||||
ELSE // Just in case that nItem>0 so the Link is already referenced
|
||||
nItem:=ASCAN(Self:aLinkRef,{|a| a[1]==cTopic})
|
||||
IF Self:Scanlink( cTopic ) == 0
|
||||
nItem := ASCAN( Self:aLinkRef, { | a | a[ 1 ] == cTopic } )
|
||||
ELSE // Just in case that nItem>0 so the Link is already referenced
|
||||
nItem := ASCAN( Self:aLinkRef, { | a | a[ 1 ] == cTopic } )
|
||||
ENDIF
|
||||
|
||||
|
||||
|
||||
fWrite(Self:nHandle,':h1 res='+Alltrim(str(nItem))+'.'+cTopic+CRLF)
|
||||
fWrite(Self:nHandle,':i1 id='+UPPER(cTopic)+"."+UPPER(cTopic)+CRLF)
|
||||
FWRITE( Self:nHandle,":p."+cTitle+CRLF)
|
||||
|
||||
FWRITE( Self:nHandle, ':h1 res=' + ALLTRIM( STR( nItem ) ) + '.' + cTopic + CRLF )
|
||||
FWRITE( Self:nHandle, ':i1 id=' + UPPER( cTopic ) + "." + UPPER( cTopic ) + CRLF )
|
||||
FWRITE( Self:nHandle, ":p." + cTitle + CRLF )
|
||||
|
||||
RETURN Self
|
||||
|
||||
METHOD CLOSE() CLASS TOs2
|
||||
|
||||
FWRITE( Self:nHandle,':euserdoc.'+CRLF)
|
||||
FWRITE( Self:nHandle, ':euserdoc.' + CRLF )
|
||||
|
||||
FCLOSE( Self:nHandle )
|
||||
|
||||
RETURN Self
|
||||
|
||||
METHOD WriteLink( cLink ) CLASS TOs2
|
||||
|
||||
LOCAL nItem
|
||||
|
||||
if Self:Scanlink(cLink) ==0
|
||||
nItem:=ASCAN(Self:aLinkRef,{|a| a[1]==cLink}) // Again.
|
||||
IF Self:Scanlink( cLink ) == 0
|
||||
nItem := ASCAN( Self:aLinkRef, { | a | a[ 1 ] == cLink } ) // Again.
|
||||
ELSE
|
||||
nItem:=ASCAN(Self:aLinkRef,{|a,b| a[1]==cLink})
|
||||
nItem := ASCAN( Self:aLinkRef, { | a, b | a[ 1 ] == cLink } )
|
||||
|
||||
endif
|
||||
|
||||
IF nItem=0
|
||||
nItem:=Self:nRef
|
||||
ENDIF
|
||||
|
||||
FWRITE( Self:nHandle, ":link reftype=hd res="+ALLTRIM(STR(nItem))+"."+Self:aLinkRef[nItem,1]+":elink."+CRLF)
|
||||
IF nItem = 0
|
||||
nItem := Self:nRef
|
||||
ENDIF
|
||||
|
||||
FWRITE( Self:nHandle,".br"+CRLF)
|
||||
FWRITE( Self:nHandle, ":link reftype=hd res=" + ALLTRIM( STR( nItem ) ) + "." + Self:aLinkRef[ nItem, 1 ] + ":elink." + CRLF )
|
||||
|
||||
FWRITE( Self:nHandle, ".br" + CRLF )
|
||||
|
||||
RETURN Self
|
||||
|
||||
METHOD ScanLink(cLink) CLASS TOs2
|
||||
METHOD ScanLink( cLink ) CLASS TOs2
|
||||
|
||||
LOCAL nItem
|
||||
LOCAL nReturn
|
||||
|
||||
nItem:=ASCAN(Self:aLinkRef,{|a,b| a[1]==cLink})
|
||||
nItem := ASCAN( Self:aLinkRef, { | a, b | a[ 1 ] == cLink } )
|
||||
|
||||
IF nItem==0
|
||||
AADD(Self:aLinkRef,{cLink,Self:nRef})
|
||||
Self:nRef++
|
||||
IF nItem == 0
|
||||
AADD( Self:aLinkRef, { cLink, Self:nRef } )
|
||||
Self:nRef ++
|
||||
ENDIF
|
||||
|
||||
RETURN nItem
|
||||
|
||||
METHOD DosToOs2Text(cText) CLASS TOs2
|
||||
METHOD DosToOs2Text( cText ) CLASS TOs2
|
||||
|
||||
LOCAL cReturn
|
||||
|
||||
cReturn := STRTRAN(cText,'"',"&cdq.")
|
||||
cReturn := STRTRAN(cReturn,':',"&colon.")
|
||||
cReturn := STRTRAN(cReturn,',',"&comma.")
|
||||
cReturn := STRTRAN( cText, '"', "&cdq." )
|
||||
cReturn := STRTRAN( cReturn, ':', "&colon." )
|
||||
cReturn := STRTRAN( cReturn, ',', "&comma." )
|
||||
|
||||
Return cReturn
|
||||
RETURN cReturn
|
||||
|
||||
METHOD WriteJumpTitle( cTitle, cTopic ) class TOs2
|
||||
METHOD WriteJumpTitle( cTitle, cTopic ) CLASS TOs2
|
||||
|
||||
LOCAL cTemp
|
||||
LOCAL nPos
|
||||
@@ -186,18 +223,19 @@ METHOD WriteJumpTitle( cTitle, cTopic ) class TOs2
|
||||
|
||||
nPos := AT( "()", cTitle )
|
||||
|
||||
cTopic := ALLTRIM( HB_OEMTOANSI(cTopic ))
|
||||
cTopic := ALLTRIM( HB_OEMTOANSI( cTopic ) )
|
||||
|
||||
cWrite := ':fn id='+cTopic+'.'
|
||||
cWrite := ':fn id=' + cTopic + '.'
|
||||
|
||||
FWRITE( Self:nHandle, cWrite )
|
||||
|
||||
Self:WriteParBold( cTopic )
|
||||
|
||||
RETURN Self
|
||||
METHOD WriteJumpLink( cLink,cText ) class TOs2
|
||||
METHOD WriteJumpLink( cLink, cText ) CLASS TOs2
|
||||
|
||||
FWRITE( Self:nHandle, " :link refid="+aLLTRIM( HB_OEMTOANSI(cLink) ) +"reftype=fn."+ cLink+":elink." +cText+ CRLF )
|
||||
FWRITE( Self:nHandle, " :link refid=" + ALLTRIM( HB_OEMTOANSI( cLink ) ) + "reftype=fn." + cLink + ":elink." + cText + CRLF )
|
||||
|
||||
RETURN Self
|
||||
|
||||
*+ EOF: OS2.PRG
|
||||
|
||||
Reference in New Issue
Block a user