]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/HelpGen/src/HelpGen.cpp
Use $ on variables!!!
[wxWidgets.git] / utils / HelpGen / src / HelpGen.cpp
index 83747829aeef9542fa90d65a8a351cf236e4ac48..d2dc393cd222449b3fc74d46f342060fb2473e63 100644 (file)
 // wxWidgets
 #include "wx/wxprec.h"
 
+#ifdef __BORLANDC__
+    #pragma hdrstop
+#endif
+
 #ifndef WX_PRECOMP
     #include "wx/string.h"
     #include "wx/log.h"
 #include <stdio.h>
 #include <time.h>
 
-// argh, Windows defines this
-#ifdef GetCurrentTime
-#undef GetCurrentTime
-#endif
-
 // -----------------------------------------------------------------------------
 // private functions
 // -----------------------------------------------------------------------------
 
 // return the label for the given function name (i.e. argument of \label)
-static wxString MakeLabel(const char *classname, const char *funcname = NULL);
+static wxString MakeLabel(const wxChar *classname, const wxChar *funcname = NULL);
 
 // return the whole \helpref{arg}{arg_label} string
-static wxString MakeHelpref(const char *argument);
+static wxString MakeHelpref(const wxChar *argument);
 
 // [un]quote special TeX characters (in place)
 static void TeXFilter(wxString* str);
@@ -93,7 +92,7 @@ static wxString GetAllComments(const spContext& ctx);
 
 // get the string with current time (returns pointer to static buffer)
 // timeFormat is used for the call of strftime(3)
-static const char *GetCurrentTime(const char *timeFormat);
+static const char *GetCurrentTimeFormatted(const char *timeFormat);
 
 // get the string containing the program version
 static const wxString GetVersionString();
@@ -137,7 +136,7 @@ struct FunctionDocEntry
                 return 1;
             }
 
-            wxString dtorname = wxString('~') + classname;
+            wxString dtorname = wxString(_T("~")) + classname;
 
             // there is only one dtor, so the logic here is simpler
             if ( (*pp1)->name == dtorname ) {
@@ -148,7 +147,7 @@ struct FunctionDocEntry
             }
 
             // two normal methods
-            return strcmp((*pp1)->name, (*pp2)->name);
+            return wxStrcmp((*pp1)->name, (*pp2)->name);
         }
     }
 
@@ -194,7 +193,7 @@ public:
             return true;
 
         if ( !Write(m_text) ) {
-            wxLogError("Failed to output generated documentation.");
+            wxLogError(_T("Failed to output generated documentation."));
 
             return false;
         }
@@ -238,7 +237,7 @@ public:
     // return true if we ignore this class entirely
     bool IgnoreClass(const wxString& classname) const
     {
-        IgnoreListEntry ignore(classname, "");
+        IgnoreListEntry ignore(classname, _T(""));
 
         return m_ignore.Index(&ignore) != wxNOT_FOUND;
     }
@@ -382,7 +381,7 @@ protected:
 
     // returns the length of 'match' if the string 'str' starts with it or 0
     // otherwise
-    static size_t TryMatch(const char *str, const char *match);
+    static size_t TryMatch(const wxChar *str, const wxChar *match);
 
     // skip spaces: returns pointer to first non space character (also
     // updates the value of m_line)
@@ -670,7 +669,7 @@ int main(int argc, char **argv)
                         }
 
                         directoryOut = argv[current];
-                        if ( !!directoryOut ) {
+                        if ( !directoryOut.IsEmpty() ) {
                             // terminate with a '/' if it doesn't have it
                             switch ( directoryOut.Last() ) {
                                 case '/':
@@ -730,7 +729,7 @@ int main(int argc, char **argv)
     // create a parser object and a visitor derivation
     CJSourceParser parser;
     HelpGenVisitor visitor(directoryOut, overwrite);
-    if ( !!ignoreFile && mode == Mode_Dump )
+    if ( !ignoreFile.IsEmpty() && mode == Mode_Dump )
         visitor.GetIgnoreHandler().AddNamesFromFile(ignoreFile);
 
     spContext *ctxTop = NULL;
@@ -776,7 +775,7 @@ int main(int argc, char **argv)
             }
         }
 
-        if ( !!ignoreFile )
+        if ( !ignoreFile.IsEmpty() )
             docman.GetIgnoreHandler().AddNamesFromFile(ignoreFile);
 
         docman.DumpDifferences(ctxTop);
@@ -878,10 +877,10 @@ void HelpGenVisitor::CloseClass()
 {
     CloseFunction();
 
-    if ( m_inClass ) 
+    if ( m_inClass )
     {
         size_t count = m_arrayFuncDocs.GetCount();
-        if ( count ) 
+        if ( count )
         {
             size_t n;
             FunctionDocEntry::classname = m_classname;
@@ -943,14 +942,14 @@ void HelpGenVisitor::EndVisit()
     }
 
     wxLogVerbose("%s: finished generating for the current file.",
-                 GetCurrentTime("%H:%M:%S"));
+                 GetCurrentTimeFormatted("%H:%M:%S"));
 }
 
 void HelpGenVisitor::VisitFile( spFile& file )
 {
     m_fileHeader = file.mFileName;
     wxLogVerbose("%s: started generating docs for classes from file '%s'...",
-                 GetCurrentTime("%H:%M:%S"), m_fileHeader.c_str());
+                 GetCurrentTimeFormatted("%H:%M:%S"), m_fileHeader.c_str());
 }
 
 void HelpGenVisitor::VisitClass( spClass& cl )
@@ -1017,7 +1016,7 @@ void HelpGenVisitor::VisitClass( spClass& cl )
                   "\\section{\\class{%s}}\\label{%s}\n\n",
                   GetVersionString().c_str(),
                   m_fileHeader.c_str(),
-                  GetCurrentTime("%d/%b/%y %H:%M:%S"),
+                  GetCurrentTimeFormatted("%d/%b/%y %H:%M:%S"),
                   name.c_str(),
                   wxString(name).MakeLower().c_str());
 
@@ -1418,7 +1417,7 @@ bool DocManager::ParseTeXFile(const wxString& filename)
     char *buf = new char[len + 1];
     buf[len] = '\0';
 
-    if ( file.Read(buf, len) == wxInvalidOffset ) {
+    if ( (wxFileOffset)file.Read(buf, len) == wxInvalidOffset ) {
         delete [] buf;
 
         return false;
@@ -1428,7 +1427,7 @@ bool DocManager::ParseTeXFile(const wxString& filename)
     m_line = 1;
 
     wxLogVerbose("%s: starting to parse doc file '%s'.",
-                 GetCurrentTime("%H:%M:%S"), m_filename.c_str());
+                 GetCurrentTimeFormatted("%H:%M:%S"), m_filename.c_str());
 
     // the name of the class from the last "\membersection" command: we assume
     // that the following "\func" or "\constfunc" always documents a method of
@@ -1715,7 +1714,7 @@ bool DocManager::ParseTeXFile(const wxString& filename)
     delete [] buf;
 
     wxLogVerbose("%s: finished parsing doc file '%s'.\n",
-                 GetCurrentTime("%H:%M:%S"), m_filename.c_str());
+                 GetCurrentTimeFormatted("%H:%M:%S"), m_filename.c_str());
 
     return true;
 }
@@ -1989,7 +1988,7 @@ bool IgnoreNamesHandler::AddNamesFromFile(const wxString& filename)
     char *buf = new char[len + 1];
     buf[len] = '\0';
 
-    if ( file.Read(buf, len) == wxInvalidOffset ) {
+    if ( (wxFileOffset)file.Read(buf, len) == wxInvalidOffset ) {
         delete [] buf;
 
         return false;
@@ -2164,7 +2163,7 @@ static wxString GetAllComments(const spContext& ctx)
     return comments;
 }
 
-static const char *GetCurrentTime(const char *timeFormat)
+static const char *GetCurrentTimeFormatted(const char *timeFormat)
 {
     static char s_timeBuffer[128];
     time_t timeNow;
@@ -2187,6 +2186,12 @@ static const wxString GetVersionString()
 
 /*
    $Log$
+   Revision 1.31  2004/10/05 15:38:29  ABX
+   Warning fixes found under hardest mode of OpenWatcom. Seems clean in Borland, MinGW and DMC.
+
+   Revision 1.30  2004/06/18 19:25:50  ABX
+   Small step in making HelpGen up to date unicode application.
+
    Revision 1.29  2004/06/17 19:00:22  ABX
    Warning fixes. Code cleanup. Whitespaces and tabs removed.