// Name: rtfutils.cpp
// Purpose: Converts Latex to Word RTF/WinHelp RTF
// Author: Julian Smart
-// Modified by:
+// Modified by: Wlodzimiez ABX Skiba 2003/2004 Unicode support
+// Ron Lee
// Created: 7.9.93
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
extern wxHashTable TexReferences;
// Are we in verbatim mode? If so, format differently.
-static bool inVerbatim = FALSE;
+static bool inVerbatim = false;
// We're in a series of PopRef topics, so don't output section headings
-bool inPopRefSection = FALSE;
+bool inPopRefSection = false;
// Green colour?
-static bool hotSpotColour = TRUE;
-static bool hotSpotUnderline = TRUE;
+static bool hotSpotColour = true;
+static bool hotSpotUnderline = true;
// Transparency (WHITE = transparent)
-static bool bitmapTransparency = TRUE;
+static bool bitmapTransparency = true;
// Linear RTF requires us to set the style per section.
static wxChar *currentNumberStyle = NULL;
// Need to know whether we're in a table or figure for benefit
// of listoffigures/listoftables
-static bool inFigure = FALSE;
-static bool inTable = FALSE;
+static bool inFigure = false;
+static bool inTable = false;
/*
* Current topics
static bool InPopups()
{
if (CurrentChapterName && (wxStrcmp(CurrentChapterName, _T("popups")) == 0))
- return TRUE;
+ return true;
if (CurrentSectionName && (wxStrcmp(CurrentSectionName, _T("popups")) == 0))
- return TRUE;
- return FALSE;
+ return true;
+ return false;
}
static void SetCurrentTopic(wxChar *s)
texTopic = new TexTopic;
TopicTable.Put(parentTopic, texTopic);
}
- texTopic->hasChildren = TRUE;
+ texTopic->hasChildren = true;
}
}
{
int i;
for (i = l; i < 5; i++)
- ContentsLevels[i] = FALSE;
-
+ ContentsLevels[i] = false;
+
// There are always books on the top level
- ContentsLevels[0] = TRUE;
+ ContentsLevels[0] = true;
}
// Output a WinHelp section as a keyword, substituting
void OutputSectionKeyword(FILE *fd)
{
OutputCurrentSectionToString(wxTex2RTFBuffer);
-
+
unsigned int i;
for (i = 0; i < wxStrlen(wxTex2RTFBuffer); i++)
if (wxTex2RTFBuffer[i] == ':')
wxFprintf(fd, _T("K{\\footnote {K} "));
wxFprintf(fd, _T("%s"), wxTex2RTFBuffer);
-
+
wxFprintf(fd, _T("}\n"));
}
int d=0;
while ( (xitle[s]!=0)&&(d<255) )
{
- wxChar ch=xitle[s]&0xff;
- if (ch==0x5c) {
- wxChar ch1=xitle[s+1]&0xff;
- wxChar ch2=xitle[s+2]&0xff;
- wxChar ch3=xitle[s+3]&0xff;
- s+=4; // next character
- if ((ch1==0x27)&&(ch2==0x66)&&(ch3==0x36)) { title[d++]='ö'; }
- if ((ch1==0x27)&&(ch2==0x65)&&(ch3==0x34)) { title[d++]='ä'; }
- if ((ch1==0x27)&&(ch2==0x66)&&(ch3==0x63)) { title[d++]='ü'; }
- if ((ch1==0x27)&&(ch2==0x64)&&(ch3==0x36)) { title[d++]='Ö'; }
- if ((ch1==0x27)&&(ch2==0x63)&&(ch3==0x34)) { title[d++]='Ä'; }
- if ((ch1==0x27)&&(ch2==0x64)&&(ch3==0x63)) { title[d++]='Ü'; }
- } else {
- title[d++]=ch;
- s++;
- }
+ wxChar ch=wxChar(xitle[s]&0xff);
+ if (ch==0x5c) {
+ wxChar ch1=wxChar(xitle[s+1]&0xff);
+ wxChar ch2=wxChar(xitle[s+2]&0xff);
+ wxChar ch3=wxChar(xitle[s+3]&0xff);
+ s+=4; // next character
+ if ((ch1==0x27)&&(ch2==0x66)&&(ch3==0x36)) { title[d++]=_T('ö'); }
+ if ((ch1==0x27)&&(ch2==0x65)&&(ch3==0x34)) { title[d++]=_T('ä'); }
+ if ((ch1==0x27)&&(ch2==0x66)&&(ch3==0x63)) { title[d++]=_T('ü'); }
+ if ((ch1==0x27)&&(ch2==0x64)&&(ch3==0x36)) { title[d++]=_T('Ö'); }
+ if ((ch1==0x27)&&(ch2==0x63)&&(ch3==0x34)) { title[d++]=_T('Ä'); }
+ if ((ch1==0x27)&&(ch2==0x64)&&(ch3==0x63)) { title[d++]=_T('Ü'); }
+ } else {
+ title[d++]=ch;
+ s++;
+ }
}
title[d]=0;
if (level == 0) // Means we had a Chapter in an article, oops.
return;
-
+
ResetContentsLevels(level);
-
- if (!title)
- return;
-
+
if (winHelp && winHelpContents && WinHelpContentsFile)
{
TexTopic *texTopic = (TexTopic *)TopicTable.Get(topicName);
// Remember that at this level, we had a book and *must* for the
// remainder of sections at this level.
- ContentsLevels[level-1] = TRUE;
+ ContentsLevels[level-1] = true;
}
else
{
// Always have a book at level 1
wxFprintf(WinHelpContentsFile, _T("%d %s\n"), level, title);
wxFprintf(WinHelpContentsFile, _T("%d %s=%s\n"), level+1, title, topicName);
- ContentsLevels[level-1] = TRUE;
+ ContentsLevels[level-1] = true;
}
else
// Probably doesn't have children if it hasn't been added to the topic table
// Must separate out main entry form subentry (only 1 subentry allowed)
wxChar buf1[100]; wxChar buf2[100];
SplitIndexEntry(s, buf1, buf2);
-
+
// Check for ':' which messes up index
unsigned int i;
for (i = 0; i < wxStrlen(buf1) ; i++)
* Output index entry in linear RTF
*
*/
-
+
void GenerateIndexEntry(wxChar *entry)
{
if (useWord)
* Write a suitable RTF header.
*
*/
-
+
void WriteColourTable(FILE *fd)
{
wxFprintf(fd, _T("{\\colortbl"));
{
wxFprintf(fd, _T("{\\rtf1\\%s \\deff0\n"), RTFCharset);
wxFprintf(fd, _T("{\\fonttbl{\\f0\\froman Times New Roman;}{\\f1\\ftech Symbol;}{\\f2\\fswiss Arial;}\n"));
- wxFprintf(fd, _T("{\\f3\\fmodern Courier;}{\\f4\\ftech Wingdings;}{\\f5\\ftech Monotype Sorts;}\n}"));
+ wxFprintf(fd, _T("{\\f3\\fmodern Courier New;}{\\f4\\ftech Wingdings;}{\\f5\\ftech Monotype Sorts;}\n}"));
/*
* Style sheet
*/
// Table of contents styles
wxFprintf(fd, _T("{\\s20\\sb300\\tqr\\tldot\\tx8640 \\b\\f2 \\sbasedon0\\snext0 toc 1;}\n"));
-
+
wxFprintf(fd, _T("{\\s21\\sb90\\tqr\\tldot\\li400\\tqr\\tx8640 \\f2\\fs20\\sbasedon0\\snext0 toc 2;}\n"));
wxFprintf(fd, _T("{\\s22\\sb90\\tqr\\tldot\\li800\\tx8640 \\f2\\fs20 \\sbasedon0\\snext0 toc 3;}\n"));
wxFprintf(fd, _T("{\\s23\\sb90\\tqr\\tldot\\li1200\\tx8640 \\f2\\fs20 \\sbasedon0\\snext0 toc 4;}\n"));
/*
* Write a Windows help project file
*/
-
+
bool WriteHPJ(wxChar *filename)
{
wxChar hpjFilename[256];
wxStrcpy(rtfFile, helpFile);
wxStrcat(helpFile, _T(".hlp"));
wxStrcat(rtfFile, _T(".rtf"));
-
+
FILE *fd = wxFopen(hpjFilename, _T("w"));
if (!fd)
- return FALSE;
+ return false;
wxChar *helpTitle = winHelpTitle;
if (!helpTitle)
helpTitle = _T("Untitled");
-
+
wxString thePath = wxPathOnly(InputFile);
if (thePath.IsEmpty())
thePath = _T(".");
wxFprintf(fd, _T("BrowseButtons()\n\n"));
wxFprintf(fd, _T("[MAP]\n\n[BITMAPS]\n\n"));
fclose(fd);
- return TRUE;
+ return true;
}
void ProcessText2RTF(TexChunk *chunk)
{
- bool changed = FALSE;
+ bool changed = false;
int ptr = 0;
int i = 0;
wxChar ch = 1;
BigBuffer[ptr] = 0; wxStrcat(BigBuffer, _T("\\par\n")); ptr += 5;
// BigBuffer[ptr] = 0; wxStrcat(BigBuffer, _T("\\par{\\v this was verbatim}\n")); ptr += 5;
i ++;
- changed = TRUE;
+ changed = true;
}
else
{
((len > i+1 && chunk->value[i+1] == 13) &&
(len > i+2 && isascii(chunk->value[i+2]) &&
!isspace(chunk->value[i+2]))))
-// if (TRUE)
+// if (true)
{
// DOS files have a 13 after the 10
BigBuffer[ptr] = 10;
// Note that the actual ASCII character seen is dealt with in the next
// iteration
- changed = TRUE;
+ changed = true;
}
else
{
{
BigBuffer[ptr] = '"'; ptr ++;
i += 2;
- changed = TRUE;
+ changed = true;
}
else if (!inVerbatim && ch == '`') // Change ` to '
{
BigBuffer[ptr] = 39; ptr ++;
i += 1;
- changed = TRUE;
+ changed = true;
}
else if (inVerbatim && ch == '\\') // Change backslash to two backslashes
{
BigBuffer[ptr] = '\\'; ptr ++;
BigBuffer[ptr] = '\\'; ptr ++;
i += 1;
- changed = TRUE;
+ changed = true;
}
else if (inVerbatim && (ch == '{' || ch == '}')) // Escape the curley bracket
{
BigBuffer[ptr] = '\\'; ptr ++;
BigBuffer[ptr] = ch; ptr ++;
i += 1;
- changed = TRUE;
+ changed = true;
}
else
{
* and before TraverseDocument is called.
*
*/
-
+
void Text2RTF(TexChunk *chunk)
{
Tex2RTFYield();
return;
if (def && (def->macroId == ltVERBATIM || def->macroId == ltVERB))
- inVerbatim = TRUE;
+ inVerbatim = true;
wxNode *node = chunk->children.GetFirst();
while (node)
}
if (def && (def->macroId == ltVERBATIM || def->macroId == ltVERB))
- inVerbatim = FALSE;
+ inVerbatim = false;
break;
}
* Not used yet
*
*/
-
+
wxChar browseBuf[10];
static long browseId = 0;
wxChar *GetBrowseString(void)
{
wxChar buf[10];
browseId ++;
- wxSprintf(buf, _T("%ld"), browseId);
+ wxSnprintf(buf, sizeof(buf), _T("%ld"), browseId);
int noZeroes = 5-wxStrlen(buf);
wxStrcpy(browseBuf, _T("browse"));
for (int i = 0; i < noZeroes; i++)
if (!inTabular && (ParIndent > 0) && (forbidParindent == 0))
{
wxChar buf[15];
- wxSprintf(buf, _T("\\fi%d"), ParIndent*20); // Convert points to TWIPS
+ wxSnprintf(buf, sizeof(buf), _T("\\fi%d"), ParIndent*20); // Convert points to TWIPS
TexOutput(buf);
}
if (environmentStack.GetCount() > 0 || (ParIndent > 0))
TexOutput(_T("{\\i \\qr "));
if (DocumentStyle == LATEX_ARTICLE)
{
- wxSprintf(buf, _T("SECTION %d"), sectionNo);
+ wxSnprintf(buf, sizeof(buf), _T("SECTION %d"), sectionNo);
TexOutput(buf);
}
else
{
- wxSprintf(buf, _T("CHAPTER %d: "), chapterNo);
+ wxSnprintf(buf, sizeof(buf), _T("CHAPTER %d: "), chapterNo);
TexOutput(buf);
}
TexOutput(_T("{\\field{\\*\\fldinst PAGE \\\\* MERGEFORMAT }{\\fldrslt 1}}"));
TexOutput(_T("{\\i \\qc "));
if (DocumentStyle == LATEX_ARTICLE)
{
- wxSprintf(buf, _T("SECTION %d"), sectionNo);
+ wxSnprintf(buf, sizeof(buf), _T("SECTION %d"), sectionNo);
TexOutput(buf);
}
else
{
- wxSprintf(buf, _T("CHAPTER %d"), chapterNo);
+ wxSnprintf(buf, sizeof(buf), _T("CHAPTER %d"), chapterNo);
TexOutput(buf);
}
TexOutput(_T("{\\field{\\*\\fldinst PAGE \\\\* MERGEFORMAT }{\\fldrslt 1}}"));
{
int oldForbidResetPar = forbidResetPar;
forbidResetPar = 0;
-
+
if (LeftHeaderEven || CentreHeaderEven || RightHeaderEven)
{
TexOutput(_T("{\\headerl\\fi0 "));
{
/*
wxChar tmpBuf[40];
- wxSprintf(tmpBuf, _T("%d (%d)"), macroId, (int)start);
+ wxSnprintf(tmpBuf, sizeof(tmpBuf), _T("%d (%d)"), macroId, (int)start);
OutputDebugString("RTFOnMacro Start "); OutputDebugString(tmpBuf);
OutputDebugString("\n"); wxYield();
*/
OutputRTFHeaderCommands();
OutputRTFFooterCommands();
}
-
+
// Need to reset the current numbering style, or RTF forgets it.
SetCurrentOutput(Chapters);
OutputNumberStyle(currentNumberStyle);
else SetCurrentOutput(NULL); // No entry in table of contents
}
}
-
- startedSections = TRUE;
+
+ startedSections = true;
// Output heading to contents page
if (!InPopups())
{
OutputCurrentSection();
-
+
if (winHelp)
{
wxFprintf(Contents, _T("}{\\v %s}\\pard\\par\n"), topicName);
// From here, just output to chapter
SetCurrentOutput(Chapters);
}
-
+
if (winHelp)
{
wxFprintf(Chapters, _T("}\n#{\\footnote %s}\n"), topicName);
wxFprintf(Chapters, _T("+{\\footnote %s}\n"), GetBrowseString());
-
+
OutputSectionKeyword(Chapters);
GenerateKeywordsForTopic(topicName);
}
}
else SetCurrentOutput(NULL);
- }
+ }
if (startedSections)
{
if (winHelp)
wxFprintf(Sections, _T("\\page\n"));
}
- startedSections = TRUE;
+ startedSections = true;
if (winHelp)
wxFprintf(Sections, _T("\n${\\footnote "));
else
wxFprintf(Contents, _T("}\\par\\par\\pard\n"));
}
-
+
SetCurrentOutput(winHelp ? Sections : Chapters);
if (winHelp)
wxChar *keep = _T("");
if (winHelp && (macroId != ltGLOSS) && !InPopups())
keep = _T("\\keepn\\sa140\\sb140");
-
+
wxFprintf(winHelp ? Sections : Chapters, _T("\\pard{%s%s"),
keep, styleCommand);
#if 0
else
wxFprintf(Chapters, _T("\\par\n"));
-#endif
+#endif
}
- startedSections = TRUE;
+ startedSections = true;
if (winHelp)
wxFprintf(Subsections, _T("\n${\\footnote "));
}
}
OutputCurrentSection(); // Repeat section header
-
+
// Experimental JACS
TexOutput(_T("\\par\\pard}\n"));
// TexOutput(_T("\\par\\pard}\\par\n"));
}
else
SetCurrentOutput(NULL); // Don't write it into the contents, or anywhere else
- }
+ }
else
SetCurrentOutput(NULL); // Don't write it into the contents, or anywhere else
}
-
+
if (startedSections)
{
if (winHelp)
#if 0
else
wxFprintf(Chapters, _T("\\par\n"));
-#endif
+#endif
}
- startedSections = TRUE;
+ startedSections = true;
if (winHelp)
wxFprintf(Subsubsections, _T("\n${\\footnote "));
}
else if ((DocumentStyle == LATEX_ARTICLE) && (macroId != ltSUBSUBSECTIONSTAR))
wxFprintf(Contents, _T("\\par\\pard\n"));
-
+
SetCurrentOutput(winHelp ? Subsubsections : Chapters);
if (winHelp)
{
WriteHeadingStyle((winHelp ? Subsubsections : Chapters),
(DocumentStyle == LATEX_ARTICLE ? 3 : 4));
wxFprintf(winHelp ? Subsubsections : Chapters, _T(" "));
-
+
if (!winHelp)
{
if ((macroId != ltSUBSUBSECTIONSTAR))
if (winHelp || !useWord)
{
if (DocumentStyle != LATEX_ARTICLE)
- wxSprintf(figBuf, _T("%s %d.%d: "), FigureNameString, chapterNo, figureNo);
+ wxSnprintf(figBuf, sizeof(figBuf), _T("%s %d.%d: "), FigureNameString, chapterNo, figureNo);
else
- wxSprintf(figBuf, _T("%s %d: "), FigureNameString, figureNo);
+ wxSnprintf(figBuf, sizeof(figBuf), _T("%s %d: "), FigureNameString, figureNo);
}
else
{
- wxSprintf(figBuf, _T("%s {\\field\\flddirty{\\*\\fldinst SEQ Figure \\\\* ARABIC }{\\fldrslt {\\bkmkstart %s}??{\\bkmkend %s}}}: "),
+ wxSnprintf(figBuf, sizeof(figBuf), _T("%s {\\field\\flddirty{\\*\\fldinst SEQ Figure \\\\* ARABIC }{\\fldrslt {\\bkmkstart %s}??{\\bkmkend %s}}}: "),
FigureNameString, topicName, topicName);
}
}
if (winHelp || !useWord)
{
if (DocumentStyle != LATEX_ARTICLE)
- wxSprintf(figBuf, _T("%s %d.%d: "), TableNameString, chapterNo, tableNo);
+ wxSnprintf(figBuf, sizeof(figBuf), _T("%s %d.%d: "), TableNameString, chapterNo, tableNo);
else
- wxSprintf(figBuf, _T("%s %d: "), TableNameString, tableNo);
+ wxSnprintf(figBuf, sizeof(figBuf), _T("%s %d: "), TableNameString, tableNo);
}
else
{
- wxSprintf(figBuf, _T("%s {\\field\\flddirty{\\*\\fldinst SEQ Table \\\\* ARABIC }{\\fldrslt {\\bkmkstart %s}??{\\bkmkend %s}}}: "),
+ wxSnprintf(figBuf, sizeof(figBuf), _T("%s {\\field\\flddirty{\\*\\fldinst SEQ Table \\\\* ARABIC }{\\fldrslt {\\bkmkstart %s}??{\\bkmkend %s}}}: "),
TableNameString, topicName, topicName);
}
}
if (winHelp)
{
TexOutput(_T("K{\\footnote {K} "));
- suppressNameDecoration = TRUE;
+ suppressNameDecoration = true;
TraverseChildrenFromChunk(currentMember);
- suppressNameDecoration = FALSE;
+ suppressNameDecoration = false;
TexOutput(_T("}\n"));
}
if (!winHelp && useWord)
{
// Insert index entry for this function
TexOutput(_T("{\\xe\\v {"));
- suppressNameDecoration = TRUE; // Necessary so don't print "(\\bf" etc.
+ suppressNameDecoration = true; // Necessary so don't print "(\\bf" etc.
TraverseChildrenFromChunk(currentMember);
- suppressNameDecoration = FALSE;
+ suppressNameDecoration = false;
TexOutput(_T("}}"));
}
}
if (winHelp)
{
TexOutput(_T("K{\\footnote {K} "));
- suppressNameDecoration = TRUE; // Necessary so don't print "(\\bf" etc.
+ suppressNameDecoration = true; // Necessary so don't print "(\\bf" etc.
TraverseChildrenFromChunk(currentMember);
- suppressNameDecoration = FALSE;
+ suppressNameDecoration = false;
TexOutput(_T("}\n"));
}
if (!winHelp && useWord)
{
// Insert index entry for this function
TexOutput(_T("{\\xe\\v {"));
- suppressNameDecoration = TRUE; // Necessary so don't print "(\\bf" etc.
+ suppressNameDecoration = true; // Necessary so don't print "(\\bf" etc.
TraverseChildrenFromChunk(currentMember);
- suppressNameDecoration = FALSE;
+ suppressNameDecoration = false;
TexOutput(_T("}}"));
}
}
{
// Insert index entry for this function
TexOutput(_T("{\\xe\\v {"));
- suppressNameDecoration = TRUE; // Necessary so don't print "(\\bf" etc.
+ suppressNameDecoration = true; // Necessary so don't print "(\\bf" etc.
TraverseChildrenFromChunk(currentMember);
- suppressNameDecoration = FALSE;
+ suppressNameDecoration = false;
TexOutput(_T("}}"));
}
}
TexOutput(_T("\\par\\pard\\pgnrestart\\sect\\titlepg"));
// In linear RTF, same as chapter headings.
- wxSprintf(buf, _T("{\\b\\fs%d %s}\\par\\par\\pard\n\n"), chapterFont*2, ContentsNameString);
+ wxSnprintf(buf, sizeof(buf), _T("{\\b\\fs%d %s}\\par\\par\\pard\n\n"), chapterFont*2, ContentsNameString);
TexOutput(buf);
- wxSprintf(buf, _T("{\\field{\\*\\fldinst TOC \\\\o \"1-%d\" }{\\fldrslt PRESS F9 TO REFORMAT CONTENTS}}\n"), contentsDepth);
+ wxSnprintf(buf, sizeof(buf), _T("{\\field{\\*\\fldinst TOC \\\\o \"1-%d\" }{\\fldrslt PRESS F9 TO REFORMAT CONTENTS}}\n"), contentsDepth);
TexOutput(buf);
// TexOutput(_T("\\sect\\sectd"));
}
int ch = getc(fd);
while (ch != EOF)
{
- putc(ch, Chapters);
+ wxPutc(ch, Chapters);
ch = getc(fd);
}
fclose(fd);
{
if (start)
{
- if (TRUE) // (inVerbatim)
+ #if 1 // if(inVerbatim)
TexOutput(_T("~"));
- else
+ #else
TexOutput(_T(" "));
+ #endif
}
break;
}
if (TableData[i].leftBorder)
TexOutput(_T("\\clbrdrl\\brdrs\\brdrw15"));
-
- wxSprintf(buf, _T("\\cellx%d"), currentWidth);
+
+ wxSnprintf(buf, sizeof(buf), _T("\\cellx%d"), currentWidth);
TexOutput(buf);
}
TexOutput(_T("\\pard\\intbl\n"));
ItemizeStruc *struc = new ItemizeStruc(listType, indentSize2, indentSize1);
itemizeStack.Insert(struc);
-
- wxSprintf(buf, _T("\\tx%d\\tx%d\\li%d\\sa200"), indentSize1, indentSize2, indentSize2);
+
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\tx%d\\li%d\\sa200"), indentSize1, indentSize2, indentSize2);
PushEnvironmentStyle(buf);
}
else
/* Change 18/7/97 - don't know why we wish to do this
if (itemizeStack.Number() == 0)
{
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
issuedNewParagraph = 2;
}
*/
ItemizeStruc *struc = new ItemizeStruc(LATEX_TWOCOL, indentSize);
itemizeStack.Insert(struc);
-
-// wxSprintf(buf, _T("\\tx%d\\li%d\\ri%d"), indentSize, indentSize, TwoColWidthA+TwoColWidthB+oldIndent);
- wxSprintf(buf, _T("\\tx%d\\li%d\\sa200"), indentSize, indentSize);
+
+// wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\ri%d"), indentSize, indentSize, TwoColWidthA+TwoColWidthB+oldIndent);
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\sa200"), indentSize, indentSize);
PushEnvironmentStyle(buf);
}
else
if (itemizeStack.GetCount() == 0)
{
issuedNewParagraph = 0;
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
}
-#endif
+#endif
}
break;
}
// WriteEnvironmentStyles();
}
- wxSprintf(buf, _T("\\tx%d\\tx%d\\li%d\\fi-%d\n"), indentSize1, indentSize2,
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\tx%d\\li%d\\fi-%d\n"), indentSize1, indentSize2,
indentSize2, 20*itemIndentTab);
TexOutput(buf);
TraverseChildrenFromChunk(descriptionItemArg);
TexOutput(_T("}\\tab"));
descriptionItemArg = NULL;
- }
- else
- {
- wxSprintf(indentBuf, _T("\\tab{\\b %d.}\\tab"), struc->currentItem);
+ }
+ else
+ {
+ wxSnprintf(indentBuf, sizeof(indentBuf), _T("\\tab{\\b %d.}\\tab"), struc->currentItem);
TexOutput(indentBuf);
}
break;
TraverseChildrenFromChunk(descriptionItemArg);
TexOutput(_T("}\\tab"));
descriptionItemArg = NULL;
- }
- else
- {
+ }
+ else
+ {
if (bulletFile && winHelp)
{
if (winHelpVersion > 3) // Transparent bitmap
- wxSprintf(indentBuf, _T("\\tab\\{bmct %s\\}\\tab"), bulletFile);
+ wxSnprintf(indentBuf, sizeof(indentBuf), _T("\\tab\\{bmct %s\\}\\tab"), bulletFile);
else
- wxSprintf(indentBuf, _T("\\tab\\{bmc %s\\}\\tab"), bulletFile);
+ wxSnprintf(indentBuf, sizeof(indentBuf), _T("\\tab\\{bmc %s\\}\\tab"), bulletFile);
}
else if (winHelp)
- wxSprintf(indentBuf, _T("\\tab{\\b o}\\tab"));
+ wxSnprintf(indentBuf, sizeof(indentBuf), _T("\\tab{\\b o}\\tab"));
else
- wxSprintf(indentBuf, _T("\\tab{\\f1\\'b7}\\tab"));
+ wxSnprintf(indentBuf, sizeof(indentBuf), _T("\\tab{\\f1\\'b7}\\tab"));
TexOutput(indentBuf);
}
break;
}
break;
}
- }
+ }
}
}
break;
// WriteEnvironmentStyles();
}
-#endif
+#endif
-// wxSprintf(buf, _T("\\tx%d\\li%d\\fi-%d\\ri%d\n"), TwoColWidthA,
+// wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\fi-%d\\ri%d\n"), TwoColWidthA,
// TwoColWidthA, TwoColWidthA, TwoColWidthA+TwoColWidthB+oldIndent);
/*
- wxSprintf(buf, _T("\\tx%d\\li%d\\fi-%d\n"), TwoColWidthA,
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\fi-%d\n"), TwoColWidthA,
TwoColWidthA, TwoColWidthA);
*/
- wxSprintf(buf, _T("\\tx%d\\li%d\\fi-%d\n"), TwoColWidthA + oldIndent,
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\fi-%d\n"), TwoColWidthA + oldIndent,
TwoColWidthA + oldIndent, TwoColWidthA);
TexOutput(buf);
}
else issuedNewParagraph = 0;
}
#endif
-
+
if (macroId == ltVERBATIM)
- wxSprintf(buf, _T("{\\f3\\s10\\fs20\\li720\\sa0 "));
+ wxSnprintf(buf, sizeof(buf), _T("{\\f3\\s10\\fs20\\li720\\sa0 "));
else
- wxSprintf(buf, _T("{\\f3\\fs20 "));
+ wxSnprintf(buf, sizeof(buf), _T("{\\f3\\fs20 "));
TexOutput(buf);
}
else
#if 0
TexOutput(_T("\\par\n"));
issuedNewParagraph = 1;
-#endif
+#endif
}
}
break;
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), smallFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), smallFont*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), tinyFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), tinyFont*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), normalFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), normalFont*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), largeFont1*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), largeFont1*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), LargeFont2*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), LargeFont2*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), LARGEFont3*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), LARGEFont3*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), hugeFont1*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), hugeFont1*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), HugeFont2*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), HugeFont2*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
{
if (start)
{
- wxSprintf(buf, _T("{\\fs%d\n"), HUGEFont3*2);
+ wxSnprintf(buf, sizeof(buf), _T("{\\fs%d\n"), HUGEFont3*2);
TexOutput(buf);
}
else TexOutput(_T("}\n"));
case ltRMFAMILY:
case ltRM:
{
-/*
+/*
if (start)
{
TexOutput(_T("{\\plain "));
{
if (start)
{
- if ( issuedNewParagraph == 0 )
- {
+ if ( issuedNewParagraph == 0 )
+ {
TexOutput(_T("\\par\\pard"));
issuedNewParagraph ++;
-
+
// Extra par if parskip is more than zero (usually looks best.)
// N.B. JACS 2004-02-21: shouldn't need this for linear RTF if
// we have a suitable set of styles.
#if 0
if (winHelp && !inTabular && (ParSkip > 0))
- {
+ {
TexOutput(_T("\\par"));
issuedNewParagraph ++;
- }
-#endif
+ }
+#endif
WriteEnvironmentStyles();
- }
- // 1 is a whole paragraph if ParSkip == 0,
- // half a paragraph if ParSkip > 0
- else if ( issuedNewParagraph == 1 )
- {
- // Don't need a par at all if we've already had one,
- // and ParSkip == 0.
-
+ }
+ // 1 is a whole paragraph if ParSkip == 0,
+ // half a paragraph if ParSkip > 0
+ else if ( issuedNewParagraph == 1 )
+ {
+ // Don't need a par at all if we've already had one,
+ // and ParSkip == 0.
#if 0
// Extra par if parskip is more than zero (usually looks best.)
if (winHelp && !inTabular && (ParSkip > 0))
- {
+ {
TexOutput(_T("\\par"));
issuedNewParagraph ++;
- }
-#endif
+ }
+#endif
WriteEnvironmentStyles();
- }
+ }
/*
if (!issuedNewParagraph || (issuedNewParagraph > 1))
{
TexOutput(_T("\\par\\pard"));
if (!winHelp)
TexOutput(_T("\\par"));
- wxSprintf(buf, _T("\\qc{\\fs%d\\b "), titleFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("\\qc{\\fs%d\\b "), titleFont*2);
TexOutput(buf);
TraverseChildrenFromChunk(DocumentTitle);
TexOutput(_T("}\\par\\pard\n"));
{
if (!winHelp)
TexOutput(_T("\\par"));
- wxSprintf(buf, _T("\\par\\qc{\\fs%d "), authorFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("\\par\\qc{\\fs%d "), authorFont*2);
TexOutput(buf);
TraverseChildrenFromChunk(DocumentAuthor);
TexOutput(_T("}"));
if (DocumentDate)
{
TexOutput(_T("\\par"));
- wxSprintf(buf, _T("\\qc{\\fs%d "), authorFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("\\qc{\\fs%d "), authorFont*2);
TexOutput(buf);
TraverseChildrenFromChunk(DocumentDate);
TexOutput(_T("}\\par\\pard\n"));
if (start)
{
// TexOutput(_T("{\\field{\\*\\fldinst SECTION \\\\* MERGEFORMAT }{\\fldrslt 1}}"));
- wxSprintf(buf, _T("%d"), chapterNo);
+ wxSnprintf(buf, sizeof(buf), _T("%d"), chapterNo);
TexOutput(buf);
}
break;
if (start)
{
// TexOutput(_T("{\\field{\\*\\fldinst SECTION \\\\* MERGEFORMAT }{\\fldrslt 1}}"));
- wxSprintf(buf, _T("%d"), sectionNo);
+ wxSnprintf(buf, sizeof(buf), _T("%d"), sectionNo);
TexOutput(buf);
}
break;
if (start && useWord && !winHelp)
{
FakeCurrentSection(_T("Index"));
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
TexOutput(_T("\\par{\\field{\\*\\fldinst INDEX \\\\h \"\\emdash A\\emdash \"\\\\c \"2\"}{\\fldrslt PRESS F9 TO REFORMAT INDEX}}\n"));
}
break;
{
if (start && useWord && !winHelp)
{
- FakeCurrentSection(FiguresNameString, FALSE);
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ FakeCurrentSection(FiguresNameString, false);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
wxChar buf[200];
- wxSprintf(buf, _T("{\\field\\fldedit{\\*\\fldinst TOC \\\\c \"%s\" }{\\fldrslt PRESS F9 TO REFORMAT LIST OF FIGURES}}\n"),
+ wxSnprintf(buf, sizeof(buf), _T("{\\field\\fldedit{\\*\\fldinst TOC \\\\c \"%s\" }{\\fldrslt PRESS F9 TO REFORMAT LIST OF FIGURES}}\n"),
FigureNameString);
TexOutput(buf);
}
{
if (start && useWord && !winHelp)
{
- FakeCurrentSection(TablesNameString, FALSE);
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ FakeCurrentSection(TablesNameString, false);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
wxChar buf[200];
- wxSprintf(buf, _T("{\\field\\fldedit{\\*\\fldinst TOC \\\\c \"%s\" }{\\fldrslt PRESS F9 TO REFORMAT LIST OF TABLES}}\n"),
+ wxSnprintf(buf, sizeof(buf), _T("{\\field\\fldedit{\\*\\fldinst TOC \\\\c \"%s\" }{\\fldrslt PRESS F9 TO REFORMAT LIST OF TABLES}}\n"),
TablesNameString);
TexOutput(buf);
}
break;
case ltFIGURE:
{
- if (start) inFigure = TRUE;
- else inFigure = FALSE;
+ if (start) inFigure = true;
+ else inFigure = false;
break;
}
case ltTABLE:
{
- if (start) inTable = TRUE;
- else inTable = FALSE;
+ if (start) inTable = true;
+ else inTable = false;
break;
}
default:
{
if (!start && (arg_no == 1))
currentSection = GetArgChunk();
- return FALSE;
+ return false;
}
case ltFUNC:
{
{
if (!suppressNameDecoration) TexOutput(_T("}"));
}
-
+
if (start && (arg_no == 3))
TexOutput(_T("("));
if (!start && (arg_no == 3))
if (start)
{
wxChar *sec = NULL;
-
+
wxChar *refName = GetArgData();
if (winHelp || !useWord)
{
wxFprintf(Chapters, _T("{\\field{\\*\\fldinst REF %s \\\\* MERGEFORMAT }{\\fldrslt ??}}"),
refName);
}
- return FALSE;
+ return false;
}
break;
}
if (start)
helpRefText = GetArgChunk();
- return TRUE;
+ return true;
}
else if ((GetNoArgs() - arg_no) == 0) // Arg = 2, or 3 if first is optional
{
{
if (!ignoreBadRefs)
TexOutput(_T("??"));
- wxSprintf(buf, _T("Warning: unresolved reference '%s'"), refName);
+ wxSnprintf(buf, sizeof(buf), _T("Warning: unresolved reference '%s'"), refName);
OnInform(buf);
}
}
TexOutput(_T(")"));
}
}
- return FALSE;
+ return false;
}
}
break;
{
if (arg_no == 1)
{
- return TRUE;
+ return true;
}
else if (arg_no == 2)
{
if (start)
{
- inVerbatim = TRUE;
+ inVerbatim = true;
TexOutput(_T(" ({\\f3 "));
}
else
{
TexOutput(_T("})"));
- inVerbatim = FALSE;
+ inVerbatim = false;
}
- return TRUE;
+ return true;
}
break;
}
TexOutput(_T("{\\i "));
else
TexOutput(_T("}"));
- return TRUE;
+ return true;
}
- else return FALSE;
+ else return false;
}
break;
}
contentsLineSection = copystring(GetArgData());
else if (arg_no == 3)
contentsLineValue = copystring(GetArgData());
- return FALSE;
+ return false;
}
- else return FALSE;
+ else return false;
}
case ltIMAGE:
case ltIMAGEL:
case ltPSBOXTO:
{
if (arg_no == 3)
- return FALSE;
-
+ return false;
+
static int imageWidth = 0;
static int imageHeight = 0;
-
+
if (start && (arg_no == 1))
{
wxChar *imageDimensions = copystring(GetArgData());
if (imageDimensions) // glt
delete [] imageDimensions;
- return FALSE;
- }
+ return false;
+ }
else if (start && (arg_no == 2 ))
{
wxChar *filename = copystring(GetArgData());
TexOutput(_T("[No BMP or WMF for image file "));
TexOutput(filename);
TexOutput(_T("]"));
- wxSprintf(buf, _T("Warning: could not find a BMP or WMF equivalent for %s."), filename);
+ wxSnprintf(buf, sizeof(buf), _T("Warning: could not find a BMP or WMF equivalent for %s."), filename);
OnInform(buf);
}
if (filename) // glt
OutputBitmapData(fd);
else
{
- wxSprintf(buf, _T("Could not read bitmap %s.\nMay be in wrong format (needs RGB-encoded Windows BMP)."), f.c_str());
+ wxSnprintf(buf, sizeof(buf), _T("Could not read bitmap %s.\nMay be in wrong format (needs RGB-encoded Windows BMP)."), f.c_str());
OnError(buf);
}
fclose(fd);
}
else
{
- wxSprintf(buf, _T("Could not read metafile %s. Perhaps it's not a placeable metafile?"), f.c_str());
+ wxSnprintf(buf, sizeof(buf), _T("Could not read metafile %s. Perhaps it's not a placeable metafile?"), f.c_str());
OnError(buf);
}
fclose(fd);
}
else
{
-#endif
+#endif
TexOutput(_T("[No BMP or WMF for image file "));
TexOutput(filename);
TexOutput(_T("]"));
- wxSprintf(buf, _T("Warning: could not find a BMP or WMF equivalent for %s."), filename);
+ wxSnprintf(buf, sizeof(buf), _T("Warning: could not find a BMP or WMF equivalent for %s."), filename);
OnInform(buf);
#ifdef __WXMSW__
}
#endif
}
}
- return FALSE;
+ return false;
}
else
- return FALSE;
+ return false;
}
case ltTABULAR:
case ltSUPERTABULAR:
if (start)
{
currentRowNumber = 0;
- inTabular = TRUE;
- startRows = TRUE;
- tableVerticalLineLeft = FALSE;
- tableVerticalLineRight = FALSE;
+ inTabular = true;
+ startRows = true;
+ tableVerticalLineLeft = false;
+ tableVerticalLineRight = false;
int currentWidth = 0;
wxChar *alignString = copystring(GetArgData());
for (int i = 0; i < noColumns; i++)
{
currentWidth += TableData[i].width;
- wxSprintf(buf, _T("\\cellx%d"), currentWidth);
+ wxSnprintf(buf, sizeof(buf), _T("\\cellx%d"), currentWidth);
TexOutput(buf);
}
TexOutput(_T("\\pard\\intbl\n"));
}
delete[] alignString;
- return FALSE;
+ return false;
}
}
else if (arg_no == 2 && !start)
{
TexOutput(_T("\\pard\n"));
WriteEnvironmentStyles();
- inTabular = FALSE;
+ inTabular = false;
}
break;
}
{
forbidParindent --;
PopEnvironmentStyle();
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
}
break;
}
else
{
PopEnvironmentStyle();
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
}
break;
}
{
if (start)
{
- wxSprintf(buf, _T("\\sa200\\box\\trgaph108%s\n"), ((macroId == ltNORMALBOXD) ? _T("\\brdrdb") : _T("\\brdrs")));
+ wxSnprintf(buf, sizeof(buf), _T("\\sa200\\box\\trgaph108%s\n"), ((macroId == ltNORMALBOXD) ? _T("\\brdrdb") : _T("\\brdrs")));
TexOutput(buf);
PushEnvironmentStyle(buf);
}
else
{
PopEnvironmentStyle();
- OnMacro(ltPAR, 0, TRUE);
- OnMacro(ltPAR, 0, FALSE);
+ OnMacro(ltPAR, 0, true);
+ OnMacro(ltPAR, 0, false);
}
break;
}
SetFontSizes(11);
else if (wxStrcmp(data, _T("12")) == 0)
SetFontSizes(12);
- wxSprintf(buf, _T("\\fs%d\n"), normalFont*2);
+ wxSnprintf(buf, sizeof(buf), _T("\\fs%d\n"), normalFont*2);
TexOutput(buf);
TexOutput(buf);
- return FALSE;
+ return false;
}
break;
}
else if (wxStrcmp(data, _T("Times")) == 0)
TexOutput(_T("\\f0\n"));
- return FALSE;
+ return false;
}
break;
}
ParIndent = ParseUnitArgument(data);
if (ParIndent == 0 || forbidParindent == 0)
{
- wxSprintf(buf, _T("\\fi%d\n"), ParIndent*20);
+ wxSnprintf(buf, sizeof(buf), _T("\\fi%d\n"), ParIndent*20);
TexOutput(buf);
}
- return FALSE;
+ return false;
}
break;
}
if (start && IsArgOptional())
{
descriptionItemArg = GetArgChunk();
- return FALSE;
+ return false;
}
break;
}
break;
}
}
- return TRUE;
+ return true;
}
/*
* Accents
}
}
}
- return FALSE;
+ return false;
}
case ltACCENT_ACUTE:
{
}
}
}
- return FALSE;
+ return false;
}
case ltACCENT_CARET:
{
}
}
}
- return FALSE;
+ return false;
}
case ltACCENT_TILDE:
{
}
}
}
- return FALSE;
+ return false;
}
case ltACCENT_UMLAUT:
{
}
}
}
- return FALSE;
+ return false;
}
case ltACCENT_DOT:
{
}
}
}
- return FALSE;
+ return false;
}
case ltACCENT_CADILLA:
{
}
}
}
- return FALSE;
+ return false;
}
case ltFOOTNOTE:
{
OnInform(_T("Consider using \\footnotepopup instead of \\footnote."));
footnoteCount ++;
wxChar footBuf[20];
- wxSprintf(footBuf, _T("(%d)"), footnoteCount);
+ wxSnprintf(footBuf, sizeof(footBuf), _T("(%d)"), footnoteCount);
TexOutput(_T(" {\\ul "));
TexOutput(footBuf);
wxFprintf(Popups, _T("+{\\footnote %s}\n"), GetBrowseString());
savedOutput = CurrentOutput1;
SetCurrentOutput(Popups);
- }
- else
- {
+ }
+ else
+ {
SetCurrentOutput(savedOutput);
- }
- return TRUE;
}
- return TRUE;
+ return true;
+ }
+ return true;
}
else
{
if (start)
{
- TexOutput(_T(" {\\super \\chftn{\\footnote \\fs20 {\\super \\chftn}"), TRUE);
+ TexOutput(_T(" {\\super \\chftn{\\footnote \\fs20 {\\super \\chftn}"), true);
}
else
{
- TexOutput(_T("}}"), TRUE);
+ TexOutput(_T("}}"), true);
}
- return TRUE;
+ return true;
}
}
case ltFOOTNOTEPOPUP:
if (start)
{
TexOutput(_T("{\\ul "));
- }
- else TexOutput(_T("}"));
- return TRUE;
+ }
+ else
+ {
+ TexOutput(_T("}"));
+ }
+ return true;
}
else if (arg_no == 2)
{
{
SetCurrentOutput(savedOutput);
}
- return TRUE;
+ return true;
}
}
else
{
if (arg_no == 1)
- return TRUE;
+ return true;
if (start)
{
- TexOutput(_T(" {\\super \\chftn{\\footnote \\fs20 {\\super \\chftn}"), TRUE);
+ TexOutput(_T(" {\\super \\chftn{\\footnote \\fs20 {\\super \\chftn}"), true);
}
else
{
- TexOutput(_T("}}"), TRUE);
+ TexOutput(_T("}}"), true);
}
- return TRUE;
+ return true;
}
break;
}
case ltFANCYPLAIN:
{
if (start && (arg_no == 1))
- return FALSE;
+ return false;
else
- return TRUE;
+ return true;
}
case ltSETHEADER:
{
else
forbidResetPar --;
- if (winHelp) return FALSE;
+ if (winHelp) return false;
if (start)
{
switch (arg_no)
break;
}
}
- return FALSE;
+ return false;
}
case ltSETFOOTER:
{
else
forbidResetPar --;
- if (winHelp) return FALSE;
+ if (winHelp) return false;
if (start)
{
switch (arg_no)
break;
}
}
- return FALSE;
+ return false;
}
case ltMARKRIGHT:
{
- if (winHelp) return FALSE;
+ if (winHelp) return false;
// Fake a SetHeader command
if (start)
{
RTFOnArgument(ltSETHEADER, 4, start);
if (!start)
OutputRTFHeaderCommands();
- return FALSE;
+ return false;
}
case ltMARKBOTH:
{
- if (winHelp) return FALSE;
+ if (winHelp) return false;
// Fake a SetHeader command
switch (arg_no)
{
RTFOnArgument(ltSETHEADER, 4, start);
if (!start)
OutputRTFHeaderCommands();
- return FALSE;
+ return false;
}
}
break;
else
forbidResetPar --;
- if (winHelp) return FALSE;
+ if (winHelp) return false;
if (start)
{
TexOutput(_T("\\pgnrestart"));
if (currentNumberStyle) delete[] currentNumberStyle;
currentNumberStyle = copystring(data);
OutputNumberStyle(currentNumberStyle);
-
+
TexOutput(_T("\n"));
}
- return FALSE;
+ return false;
}
case ltTWOCOLUMN:
{
- if (winHelp) return FALSE;
+ if (winHelp) return false;
if (start)
- return TRUE;
+ return true;
break;
}
case ltITEMSEP:
{
wxChar *val = GetArgData();
currentItemSep = ParseUnitArgument(val);
- return FALSE;
+ return false;
}
break;
}
case ltEVENSIDEMARGIN:
{
- return FALSE;
+ return false;
}
case ltODDSIDEMARGIN:
{
// Add an inch since in LaTeX it's specified minus an inch
twips += 1440;
CurrentLeftMarginOdd = twips;
- wxSprintf(buf, _T("\\margl%d\n"), twips);
+ wxSnprintf(buf, sizeof(buf), _T("\\margl%d\n"), twips);
TexOutput(buf);
CurrentMarginParX = CurrentLeftMarginOdd + CurrentTextWidth + CurrentMarginParSep;
}
- return FALSE;
+ return false;
}
case ltMARGINPARWIDTH:
{
int twips = (int)(20*ParseUnitArgument(val));
CurrentMarginParWidth = twips;
}
- return FALSE;
+ return false;
}
case ltMARGINPARSEP:
{
CurrentMarginParSep = twips;
CurrentMarginParX = CurrentLeftMarginOdd + CurrentTextWidth + CurrentMarginParSep;
}
- return FALSE;
+ return false;
}
case ltTEXTWIDTH:
{
CurrentRightMarginOdd = PageWidth - CurrentTextWidth - CurrentLeftMarginOdd;
CurrentRightMarginEven = PageWidth - CurrentTextWidth - CurrentLeftMarginEven;
CurrentMarginParX = CurrentLeftMarginOdd + CurrentTextWidth + CurrentMarginParSep;
- wxSprintf(buf, _T("\\margr%d\n"), CurrentRightMarginOdd);
+ wxSnprintf(buf, sizeof(buf), _T("\\margr%d\n"), CurrentRightMarginOdd);
TexOutput(buf);
}
- return FALSE;
+ return false;
}
case ltMARGINPAR:
case ltMARGINPARODD:
}
else
{
- wxSprintf(buf, _T("\\phpg\\posx%d\\absw%d\n"), CurrentMarginParX, CurrentMarginParWidth);
+ wxSnprintf(buf, sizeof(buf), _T("\\phpg\\posx%d\\absw%d\n"), CurrentMarginParX, CurrentMarginParWidth);
TexOutput(buf);
}
- return TRUE;
+ return true;
}
else
{
TexOutput(_T("\\par\\pard\n"));
issuedNewParagraph = 1;
}
- return FALSE;
+ return false;
}
case ltMARGINPAREVEN:
{
// mirror mode, on an even (left-hand) page.
int x = PageWidth - CurrentRightMarginOdd - CurrentMarginParWidth - CurrentMarginParSep
- CurrentTextWidth + GutterWidth;
- wxSprintf(buf, _T("\\phpg\\posx%d\\absw%d\n"), x, CurrentMarginParWidth);
+ wxSnprintf(buf, sizeof(buf), _T("\\phpg\\posx%d\\absw%d\n"), x, CurrentMarginParWidth);
TexOutput(buf);
}
else
{
- wxSprintf(buf, _T("\\phpg\\posx%d\\absw%d\n"), CurrentMarginParX, CurrentMarginParWidth);
+ wxSnprintf(buf, sizeof(buf), _T("\\phpg\\posx%d\\absw%d\n"), CurrentMarginParX, CurrentMarginParWidth);
TexOutput(buf);
}
}
- return TRUE;
+ return true;
}
else
{
issuedNewParagraph = 1;
TexOutput(_T("\\par\\pard\n"));
}
- return FALSE;
+ return false;
}
case ltTWOCOLWIDTHA:
{
int twips = (int)(20*ParseUnitArgument(val));
TwoColWidthA = twips;
}
- return FALSE;
+ return false;
}
case ltTWOCOLWIDTHB:
{
int twips = (int)(20*ParseUnitArgument(val));
TwoColWidthB = twips;
}
- return FALSE;
+ return false;
}
case ltROW:
case ltRULEDROW:
if (TableData[i].leftBorder)
TexOutput(_T("\\clbrdrl\\brdrs\\brdrw15"));
-
- wxSprintf(buf, _T("\\cellx%d"), currentWidth);
+
+ wxSnprintf(buf, sizeof(buf), _T("\\cellx%d"), currentWidth);
TexOutput(buf);
}
TexOutput(_T("\\pard\\intbl\n"));
ruleTop = 0;
ruleBottom = 0;
currentRowNumber ++;
- return TRUE;
+ return true;
}
else
{
case 1:
{
noMultiColumns = wxAtoi(GetArgData());
- return FALSE;
+ return false;
}
case 2:
{
- return FALSE;
+ return false;
}
case 3:
{
- return TRUE;
+ return true;
}
}
}
ItemizeStruc *struc = new ItemizeStruc(LATEX_INDENT, indentSize);
itemizeStack.Insert(struc);
-
- wxSprintf(buf, _T("\\tx%d\\li%d\\sa200 "), indentSize, indentSize);
+
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\sa200 "), indentSize, indentSize);
PushEnvironmentStyle(buf);
TexOutput(buf);
- return FALSE;
+ return false;
}
if (!start && (arg_no == 2))
{
WriteEnvironmentStyles();
}
}
- return TRUE;
+ return true;
}
/*
case ltSIZEDBOX:
ItemizeStruc *struc = new ItemizeStruc(LATEX_INDENT, indentSize);
itemizeStack.Insert(struc);
-
- wxSprintf(buf, _T("\\tx%d\\li%d\\lr%d\\sa200\\box%s "), indentSize, indentSize, indentSizeRight,
+
+ wxSnprintf(buf, sizeof(buf), _T("\\tx%d\\li%d\\lr%d\\sa200\\box%s "), indentSize, indentSize, indentSizeRight,
((macroId == ltCENTEREDBOX) ? _T("\\brdrs") : _T("\\brdrdb")));
PushEnvironmentStyle(buf);
TexOutput(buf);
- return FALSE;
+ return false;
}
if (!start && (arg_no == 2))
{
WriteEnvironmentStyles();
}
}
- return TRUE;
+ return true;
break;
}
*/
}
TexOutput(_T("\n"));
}
- return FALSE;
+ return false;
}
case ltSETHOTSPOTCOLOUR:
case ltSETHOTSPOTCOLOR:
{
wxChar *text = GetArgData();
if (wxStrcmp(text, _T("yes")) == 0 || wxStrcmp(text, _T("on")) == 0 || wxStrcmp(text, _T("ok")) == 0)
- hotSpotColour = TRUE;
+ hotSpotColour = true;
else
- hotSpotColour = FALSE;
+ hotSpotColour = false;
}
- return FALSE;
+ return false;
}
case ltSETTRANSPARENCY:
{
{
wxChar *text = GetArgData();
if (wxStrcmp(text, _T("yes")) == 0 || wxStrcmp(text, _T("on")) == 0 || wxStrcmp(text, _T("ok")) == 0)
- bitmapTransparency = TRUE;
+ bitmapTransparency = true;
else
- bitmapTransparency = FALSE;
+ bitmapTransparency = false;
}
- return FALSE;
+ return false;
}
case ltSETHOTSPOTUNDERLINE:
{
{
wxChar *text = GetArgData();
if (wxStrcmp(text, _T("yes")) == 0 || wxStrcmp(text, _T("on")) == 0 || wxStrcmp(text, _T("ok")) == 0)
- hotSpotUnderline = TRUE;
+ hotSpotUnderline = true;
else
- hotSpotUnderline = FALSE;
+ hotSpotUnderline = false;
}
- return FALSE;
+ return false;
}
case ltBIBITEM:
{
if (ref)
{
if (ref->sectionNumber) delete[] ref->sectionNumber;
- wxSprintf(buf, _T("[%d]"), citeCount);
+ wxSnprintf(buf, sizeof(buf), _T("[%d]"), citeCount);
ref->sectionNumber = copystring(buf);
}
TexOutput(_T("\\li260\\fi-260 ")); // Indent from 2nd line
- wxSprintf(buf, _T("{\\b [%d]} "), citeCount);
+ wxSnprintf(buf, sizeof(buf), _T("{\\b [%d]} "), citeCount);
TexOutput(buf);
citeCount ++;
- return FALSE;
+ return false;
}
if (arg_no == 2 && !start)
TexOutput(_T("\\par\\pard\\par\n\n"));
- return TRUE;
+ return true;
}
case ltTHEBIBLIOGRAPHY:
{
OutputRTFHeaderCommands();
OutputRTFFooterCommands();
}
-
+
// Need to reset the current numbering style, or RTF forgets it.
OutputNumberStyle(currentNumberStyle);
SetCurrentOutput(Contents);
else
wxFprintf(Contents, _T("\\par\n\\pard{\\b %s}"), ReferencesNameString);
- startedSections = TRUE;
+ startedSections = true;
if (winHelp)
wxFprintf(Chapters, _T("\n${\\footnote %s}"), ReferencesNameString);
wxFileNameFromPath(FileRoot), "Contents");
}
}
-
+
SetCurrentOutput(Chapters);
wxChar *styleCommand = _T("");
if (!winHelp && useHeadingStyles)
wxFprintf(Chapters, _T("\\pard{%s"), (winHelp ? _T("\\keepn\\sa140\\sb140") : styleCommand));
WriteHeadingStyle(Chapters, 1); wxFprintf(Chapters, _T(" References\\par\\pard}\n"));
- return FALSE;
+ return false;
}
- return TRUE;
+ return true;
}
case ltINDEX:
{
}
else GenerateIndexEntry(buf);
}
- return FALSE;
+ return false;
}
case ltFCOL:
case ltBCOL:
int pos = FindColourPosition(name);
if (pos > -1)
{
- wxSprintf(buf, _T("{%s%d "), ((macroId == ltFCOL) ? _T("\\cf") : _T("\\cb")), pos);
+ wxSnprintf(buf, sizeof(buf), _T("{%s%d "), ((macroId == ltFCOL) ? _T("\\cf") : _T("\\cb")), pos);
TexOutput(buf);
}
- else
- {
- wxSprintf(buf, _T("Could not find colour name %s"), name);
+ else
+ {
+ wxSnprintf(buf, sizeof(buf), _T("Could not find colour name %s"), name);
OnError(buf);
- }
+ }
break;
}
case 2:
{
- return TRUE;
+ return true;
}
default:
break;
{
if (arg_no == 2) TexOutput(_T("}"));
}
- return FALSE;
+ return false;
}
case ltLABEL:
{
wxFprintf(Chapters, _T("{\\bkmkstart %s}{\\bkmkend %s}"), s,s);
}
}
- return FALSE;
+ return false;
}
case ltPAGEREF:
{
wxFprintf(Chapters, _T("{\\field{\\*\\fldinst PAGEREF %s \\\\* MERGEFORMAT }{\\fldrslt ??}}"),
s);
}
- return FALSE;
+ return false;
}
case ltPOPREFONLY:
{
if (start)
- inPopRefSection = TRUE;
+ inPopRefSection = true;
else
- inPopRefSection = FALSE;
+ inPopRefSection = false;
break;
}
case ltINSERTATLEVEL:
// This macro allows you to insert text at a different level
// from the current level, e.g. into the Sections from within a subsubsection.
if (!winHelp & useWord)
- return FALSE;
+ return false;
static int currentLevelNo = 1;
static FILE* oldLevelFile = Chapters;
if (start)
}
if (outputFile)
CurrentOutput1 = outputFile;
- return FALSE;
+ return false;
}
case 2:
{
- return TRUE;
+ return true;
}
default:
break;
}
- return TRUE;
+ return true;
}
else
{
{
CurrentOutput1 = oldLevelFile;
}
- return TRUE;
+ return true;
}
}
default:
return DefaultOnArgument(macroId, arg_no, start);
}
- return TRUE;
+ return true;
}
bool RTFGo(void)
{
if (stopRunning)
- return FALSE;
+ return false;
// Reset variables
indentLevel = 0;
contentsLineSection = NULL;
contentsLineValue = NULL;
descriptionItemArg = NULL;
- inTabular = FALSE;
- inTable = FALSE;
- inFigure = FALSE;
- startRows = FALSE;
- tableVerticalLineLeft = FALSE;
- tableVerticalLineRight = FALSE;
+ inTabular = false;
+ inTable = false;
+ inFigure = false;
+ startRows = false;
+ tableVerticalLineLeft = false;
+ tableVerticalLineRight = false;
noColumns = 0;
- startedSections = FALSE;
- inVerbatim = FALSE;
+ startedSections = false;
+ inVerbatim = false;
browseId = 0;
-
+
if (InputFile && OutputFile)
{
// Do some RTF-specific transformations on all the strings,
if (!Sections || !Subsections || !Subsubsections || !Popups || (winHelpContents && !WinHelpContentsFile))
{
OnError(_T("Ouch! Could not open temporary file(s) for writing."));
- return FALSE;
+ return false;
}
}
if (!Contents || !Chapters)
{
OnError(_T("Ouch! Could not open temporary file(s) for writing."));
- return FALSE;
+ return false;
}
if (winHelp)
wxFprintf(Chapters, _T("\\titlepg\n"));
wxFprintf(Contents, _T("\\par\\pard\\pgnrestart\\sect\\titlepg"));
}
-
+
// In WinHelp, Contents title takes font of title.
// In linear RTF, same as chapter headings.
wxFprintf(Contents, _T("{\\b\\fs%d %s}\\par\\par\\pard\n\n"),
// By default, Swiss, 11 point.
wxFprintf(Chapters, _T("\\f2\\fs22\n"));
-
+
PushEnvironmentStyle(_T("\\f2\\fs22\\sa200"));
SetCurrentOutput(Chapters);
if (stopRunning)
- return FALSE;
+ return false;
OnInform(_T("Converting..."));
if (!Header)
{
OnError(_T("Ouch! Could not open temporary file header.rtf for writing."));
- return FALSE;
+ return false;
}
WriteRTFHeader(Header);
fclose(Header);
PopEnvironmentStyle();
-
- Tex2RTFYield(TRUE);
+
+ Tex2RTFYield(true);
if (winHelp)
{
// wxFprintf(Contents, _T("\\page\n"));
if (winHelp)
{
wxConcatFiles(_T("header.rtf"), _T("chapters.rtf"), _T("tmp1.rtf"));
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
wxConcatFiles(_T("tmp1.rtf"), _T("sections.rtf"), _T("tmp2.rtf"));
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
wxConcatFiles(_T("tmp2.rtf"), _T("subsections.rtf"), _T("tmp3.rtf"));
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
wxConcatFiles(_T("tmp3.rtf"), _T("subsubsections.rtf"), _T("tmp4.rtf"));
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
wxConcatFiles(_T("tmp4.rtf"), _T("popups.rtf"), OutputFile);
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
wxRemoveFile(_T("tmp1.rtf"));
wxRemoveFile(_T("tmp2.rtf"));
else
{
wxConcatFiles(_T("header.rtf"), _T("chapters.rtf"), _T("tmp1.rtf"));
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
if (wxFileExists(OutputFile))
wxRemoveFile(OutputFile);
wxCopyFile(_T("tmp1.rtf"), OutputFile);
}
delete [] cwdStr;
- Tex2RTFYield(TRUE);
+ Tex2RTFYield(true);
wxRemoveFile(_T("tmp1.rtf"));
}
-
+
if (wxFileExists(ContentsName)) wxRemoveFile(ContentsName);
if (!wxRenameFile(TmpContentsName, ContentsName))
wxRemoveFile(_T("chapters.rtf"));
wxRemoveFile(_T("header.rtf"));
-
+
if (winHelp)
{
wxRemoveFile(_T("sections.rtf"));
}
if (winHelp && generateHPJ)
WriteHPJ(OutputFile);
- return TRUE;
+ return true;
}
- return FALSE;
+ return false;
}