X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bf16085dc068819ecb1fc272298c094600a5e041..e1e1272f2020447bc26e10fc2cb2809e0b8eb856:/utils/tex2rtf/src/texutils.cpp diff --git a/utils/tex2rtf/src/texutils.cpp b/utils/tex2rtf/src/texutils.cpp index 15364a1670..be0c83a28c 100644 --- a/utils/tex2rtf/src/texutils.cpp +++ b/utils/tex2rtf/src/texutils.cpp @@ -36,6 +36,7 @@ #else #include #include +using namespace std; #endif #include @@ -409,7 +410,7 @@ void ReadTexReferences(char *filename) if (!wxFileExists(filename)) return; - wxSTD ifstream istr(filename, ios::in); + wxSTD ifstream istr(filename, wxSTD ios::in); if (istr.bad()) return; @@ -542,8 +543,9 @@ void BibReadValue(wxSTD istream& istr, char *buffer, bool ignoreBraces = TRUE, if (i >= 4000) { char buf[100]; - sprintf(buf, "Sorry, value > 4000 chars in bib file at line %ld, terminating.", BibLine); - wxFatalError(buf, "Tex2RTF Fatal Error"); + sprintf(buf, "Sorry, value > 4000 chars in bib file at line %ld.", BibLine); + wxLogError(buf, "Tex2RTF Fatal Error"); + return; } istr.get(ch); @@ -584,7 +586,7 @@ bool ReadBib(char *filename) return FALSE; char buf[300]; - wxSTD ifstream istr(filename, ios::in); + wxSTD ifstream istr(filename, wxSTD ios::in); if (istr.bad()) return FALSE; BibLine = 1; @@ -1142,7 +1144,7 @@ char *RegisterSetting(char *settingName, char *settingValue, bool interactive) else if (StringMatch(settingName, "authorFontSize", FALSE, TRUE)) StringToInt(settingValue, &authorFont); else if (StringMatch(settingName, "ignoreInput", FALSE, TRUE)) - IgnorableInputFiles.Add(FileNameFromPath(settingValue)); + IgnorableInputFiles.Add(wxFileNameFromPath(settingValue)); else if (StringMatch(settingName, "mirrorMargins", FALSE, TRUE)) mirrorMargins = StringTobool(settingValue); else if (StringMatch(settingName, "runTwice", FALSE, TRUE)) @@ -1181,10 +1183,20 @@ char *RegisterSetting(char *settingName, char *settingValue, bool interactive) htmlWorkshopFiles = StringTobool(settingValue); else if (StringMatch(settingName, "htmlFrameContents", FALSE, TRUE)) htmlFrameContents = StringTobool(settingValue); + else if (StringMatch(settingName, "htmlStylesheet", FALSE, TRUE)) + { + if (htmlStylesheet) delete[] htmlStylesheet; + htmlStylesheet = copystring(settingValue); + } else if (StringMatch(settingName, "upperCaseNames", FALSE, TRUE)) upperCaseNames = StringTobool(settingValue); else if (StringMatch(settingName, "ignoreBadRefs", FALSE, TRUE)) ignoreBadRefs = StringTobool(settingValue); + else if (StringMatch(settingName, "htmlFaceName", FALSE, TRUE)) + { + delete[] htmlFaceName; + htmlFaceName = copystring(settingValue); + } else if (StringMatch(settingName, "winHelpTitle", FALSE, TRUE)) { if (winHelpTitle) @@ -1308,7 +1320,7 @@ bool ReadCustomMacros(char *filename) if (!wxFileExists(filename)) return FALSE; - wxSTD ifstream istr(filename, ios::in); + wxSTD ifstream istr(filename, wxSTD ios::in); if (istr.bad()) return FALSE; @@ -1569,24 +1581,24 @@ void InitialiseColourTable(void) * The purpose of this is to reduce the number of times wxYield is * called, since under Windows this can slow things down. */ - -static int yieldCount = 0; void Tex2RTFYield(bool force) { #ifdef __WXMSW__ - if (isSync) - return; + static int yieldCount = 0; - if (force) - yieldCount = 0; - if (yieldCount == 0) - { - if (wxTheApp) - wxYield(); - yieldCount = 10; - } - yieldCount --; + if (isSync) + return; + + if (force) + yieldCount = 0; + if (yieldCount == 0) + { + if (wxTheApp) + wxYield(); + yieldCount = 10; + } + yieldCount --; #endif } @@ -1660,3 +1672,25 @@ char *ConvertCase(char *s) buf[i] = 0; return buf; } + +#if !WXWIN_COMPATIBILITY_2 +// if substring is TRUE, search for str1 in str2 +bool StringMatch(const wxChar *str1, const wxChar *str2, bool subString, + bool exact) +{ + if (subString) + { + wxString Sstr1(str1); + wxString Sstr2(str2); + if (!exact) + { + Sstr1.MakeUpper(); + Sstr2.MakeUpper(); + } + return Sstr2.Index(Sstr1) != wxNOT_FOUND; + } + else + return exact ? wxString(str2).Cmp(str1) == 0 : + wxString(str2).CmpNoCase(str1) == 0; +} +#endif