From 8bc17f14f4d232852063843e9e80953ff0919e78 Mon Sep 17 00:00:00 2001 From: =?utf8?q?W=C5=82odzimierz=20Skiba?= Date: Mon, 23 May 2005 15:22:10 +0000 Subject: [PATCH] Initial HelpGen source cleaning. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- utils/HelpGen/src/HelpGen.cpp | 33 ++- utils/HelpGen/src/cjparser.cpp | 56 ++-- utils/HelpGen/src/scriptbinder.cpp | 22 +- utils/HelpGen/src/scriptbinder.h | 421 ++++++++++++++--------------- utils/HelpGen/src/sourcepainter.h | 96 +++---- utils/HelpGen/src/srcparser.cpp | 20 +- utils/HelpGen/src/srcparser.h | 38 +-- 7 files changed, 344 insertions(+), 342 deletions(-) diff --git a/utils/HelpGen/src/HelpGen.cpp b/utils/HelpGen/src/HelpGen.cpp index 57cdad6802..ffe02441cd 100644 --- a/utils/HelpGen/src/HelpGen.cpp +++ b/utils/HelpGen/src/HelpGen.cpp @@ -675,7 +675,7 @@ int main(int argc, char **argv) } directoryOut = argv[current]; - if ( !directoryOut.IsEmpty() ) { + if ( !directoryOut.empty() ) { // terminate with a '/' if it doesn't have it switch ( directoryOut.Last() ) { case '/': @@ -735,7 +735,7 @@ int main(int argc, char **argv) // create a parser object and a visitor derivation CJSourceParser parser; HelpGenVisitor visitor(directoryOut, overwrite); - if ( !ignoreFile.IsEmpty() && mode == Mode_Dump ) + if ( !ignoreFile.empty() && mode == Mode_Dump ) visitor.GetIgnoreHandler().AddNamesFromFile(ignoreFile); spContext *ctxTop = NULL; @@ -781,7 +781,7 @@ int main(int argc, char **argv) } } - if ( !ignoreFile.IsEmpty() ) + if ( !ignoreFile.empty() ) docman.GetIgnoreHandler().AddNamesFromFile(ignoreFile); docman.DumpDifferences(ctxTop); @@ -869,7 +869,7 @@ void HelpGenVisitor::CloseFunction() m_textFunc << "}\n\n"; - if ( !m_textStoredFunctionComment.IsEmpty() ) { + if ( !m_textStoredFunctionComment.empty() ) { m_textFunc << m_textStoredFunctionComment << '\n'; } @@ -1201,7 +1201,7 @@ void HelpGenVisitor::VisitTypeDef( spTypeDef& td ) // remember for later use if we're not inside a class yet if ( !m_inClass ) { - if ( !m_textStoredTypedefs.IsEmpty() ) { + if ( !m_textStoredTypedefs.empty() ) { m_textStoredTypedefs << '\n'; } @@ -1319,7 +1319,7 @@ void HelpGenVisitor::VisitParameter( spParameter& param ) m_textFunc << "\\param{" << param.mType << " }{" << param.GetName(); wxString defvalue = param.mInitVal; - if ( !defvalue.IsEmpty() ) { + if ( !defvalue.empty() ) { m_textFunc << " = " << defvalue; } @@ -1615,9 +1615,9 @@ bool DocManager::ParseTeXFile(const wxString& filename) // now come {paramtype}{paramname} wxString paramType = ExtractStringBetweenBraces(¤t); - if ( !!paramType ) { + if ( !paramType.empty() ) { wxString paramText = ExtractStringBetweenBraces(¤t); - if ( !!paramText ) { + if ( !paramText.empty() ) { // the param declaration may contain default value wxString paramName = paramText.BeforeFirst('='), paramValue = paramText.AfterFirst('='); @@ -1750,7 +1750,7 @@ bool DocManager::DumpDifferences(spContext *ctxTop) const } spClass *ctxClass = (spClass *)ctx; - const wxString& nameClass = ctxClass->mName; + const wxString& nameClass = ctxClass->m_Name; int index = m_classes.Index(nameClass); if ( index == wxNOT_FOUND ) { if ( !m_ignoreNames.IgnoreClass(nameClass) ) { @@ -1786,7 +1786,7 @@ bool DocManager::DumpDifferences(spContext *ctxTop) const continue; spOperation *ctxMethod = (spOperation *)ctx; - const wxString& nameMethod = ctxMethod->mName; + const wxString& nameMethod = ctxMethod->m_Name; // find all functions with the same name wxArrayInt aMethodsWithSameName; @@ -1864,7 +1864,7 @@ bool DocManager::DumpDifferences(spContext *ctxTop) const spParameter *ctxParam = (spParameter *)ctx; const ParamInfo& param = method.GetParam(nParam); if ( m_checkParamNames && - (param.GetName() != ctxParam->mName.c_str()) ) { + (param.GetName() != ctxParam->m_Name.c_str()) ) { foundDiff = true; wxLogError("Parameter #%d of '%s::%s' should be " @@ -1872,7 +1872,7 @@ bool DocManager::DumpDifferences(spContext *ctxTop) const nParam + 1, nameClass.c_str(), nameMethod.c_str(), - ctxParam->mName.c_str(), + ctxParam->m_Name.c_str(), param.GetName().c_str()); continue; @@ -1883,7 +1883,7 @@ bool DocManager::DumpDifferences(spContext *ctxTop) const wxLogError("Type of parameter '%s' of '%s::%s' " "should be '%s' and not '%s'.", - ctxParam->mName.c_str(), + ctxParam->m_Name.c_str(), nameClass.c_str(), nameMethod.c_str(), ctxParam->mType.c_str(), @@ -1896,7 +1896,7 @@ bool DocManager::DumpDifferences(spContext *ctxTop) const wxLogWarning("Default value of parameter '%s' of " "'%s::%s' should be '%s' and not " "'%s'.", - ctxParam->mName.c_str(), + ctxParam->m_Name.c_str(), nameClass.c_str(), nameMethod.c_str(), ctxParam->mInitVal.c_str(), @@ -2159,7 +2159,7 @@ static wxString GetAllComments(const spContext& ctx) // don't take comments like "// ----------" &c comment.Trim(false); - if ( !!comment && + if ( !comment.empty() && comment == wxString(comment[0u], comment.length() - 1) + '\n' ) comments << "\n"; else @@ -2192,6 +2192,9 @@ static const wxString GetVersionString() /* $Log$ + Revision 1.37 2005/05/23 15:22:08 ABX + Initial HelpGen source cleaning. + Revision 1.36 2005/04/07 19:54:58 MW Workarounds to allow compilation by Sun C++ 5.5 diff --git a/utils/HelpGen/src/cjparser.cpp b/utils/HelpGen/src/cjparser.cpp index 3c706cbcf8..62fbccad23 100644 --- a/utils/HelpGen/src/cjparser.cpp +++ b/utils/HelpGen/src/cjparser.cpp @@ -1304,7 +1304,7 @@ void CJSourceParser::AddMacroNode( char*& cur ) get_next_token( tok ); - pPL->mName = get_token_str( tok ); + pPL->m_Name = get_token_str( tok ); skip_token( tok ); get_next_token( tok); @@ -1576,7 +1576,7 @@ bool CJSourceParser::ParseNameAndRetVal( char*& cur, bool& isAMacro ) pOp->mSrcOffset = int( start - _gSrcStart ); pOp->mHeaderLength = int( bracketPos - start ); if ( mpCurCtx->GetContextType() == SP_CTX_CLASS ) - pOp->mScope = mpCurCtx->mName; + pOp->mScope = mpCurCtx->m_Name; mpCurCtx->AddMember( pOp ); pOp->mVisibility = mCurVis; @@ -1588,10 +1588,10 @@ bool CJSourceParser::ParseNameAndRetVal( char*& cur, bool& isAMacro ) // go backwards to method name skip_token_back( cur ); - pOp->mName = get_token_str( cur ); + pOp->m_Name = get_token_str( cur ); // checker whether it's not an operator - char chFirst = *pOp->mName.c_str(); + char chFirst = *pOp->m_Name.c_str(); if ( !isalpha(chFirst) && chFirst != '_' && chFirst != '~' ) { // skip 'operator' skip_next_token_back( cur ); @@ -1599,20 +1599,20 @@ bool CJSourceParser::ParseNameAndRetVal( char*& cur, bool& isAMacro ) string lastToken = get_token_str( cur ); if ( lastToken == "operator" ) { - lastToken += pOp->mName; - pOp->mName = lastToken; + lastToken += pOp->m_Name; + pOp->m_Name = lastToken; } else { // ok, it wasn't an operator after all skip_token( cur ); } } - else if ( pOp->mName == "operator" ) { + else if ( pOp->m_Name == "operator" ) { skip_token( cur ); get_next_token( cur ); string oper = get_token_str( cur ); - pOp->mName += oper; + pOp->m_Name += oper; } // go backwards to method return type @@ -1622,14 +1622,14 @@ bool CJSourceParser::ParseNameAndRetVal( char*& cur, bool& isAMacro ) { string rettype = string( start, size_t( cur-start ) ); // FIXME just for now... - string::size_type pos = 0; + string::size_type pos = 0; string toerase("WXDLLEXPORT "); while((pos = rettype.find(toerase, pos)) != string::npos) rettype.erase(pos, toerase.length()); pOp->mRetType = rettype; } - arrange_indirection_tokens_between( pOp->mRetType, pOp->mName ); + arrange_indirection_tokens_between( pOp->mRetType, pOp->m_Name ); cur = savedPos; restore_line_no( tmpLnNo ); @@ -1746,7 +1746,7 @@ bool CJSourceParser::ParseArguments( char*& cur ) AttachComments( *pPar, blocks[nameBlock] ); // retrieve argument name - pPar->mName = string( blocks[nameBlock], blockSizes[nameBlock] ); + pPar->m_Name = string( blocks[nameBlock], blockSizes[nameBlock] ); // retreive argument type @@ -1755,7 +1755,7 @@ bool CJSourceParser::ParseArguments( char*& cur ) pPar->mType = string( blocks[0], len ); - arrange_indirection_tokens_between( pPar->mType, pPar->mName ); + arrange_indirection_tokens_between( pPar->mType, pPar->m_Name ); if ( *cur == ')' ) { @@ -1871,7 +1871,7 @@ void CJSourceParser::ParseMemberVar( char*& cur ) // attach comments about the attribute AttachComments( *pAttr, cur ); - pAttr->mName = get_token_str( cur ); + pAttr->m_Name = get_token_str( cur ); // guessing that this going to be variable type skip_next_token_back( cur ); @@ -1887,13 +1887,13 @@ void CJSourceParser::ParseMemberVar( char*& cur ) // yes, we've mistaken, it was not a identifier, // but it's default value pAttr->mInitVal = - pAttr->mName; + pAttr->m_Name; // skip default value and '=' symbol skip_next_token_back( cur ); skip_token_back( cur ); - pAttr->mName = get_token_str( cur ); + pAttr->m_Name = get_token_str( cur ); skip_next_token_back( cur ); skip_token_back( cur ); @@ -1920,8 +1920,8 @@ void CJSourceParser::ParseMemberVar( char*& cur ) pAttr->mType = type; pAttr->mVisibility = mCurVis; - if ( !pAttr->mName.empty() ) - arrange_indirection_tokens_between( pAttr->mType, pAttr->mName ); + if ( !pAttr->m_Name.empty() ) + arrange_indirection_tokens_between( pAttr->mType, pAttr->m_Name ); } cur = savedPos; @@ -1984,15 +1984,15 @@ void CJSourceParser::SkipFunctionBody( char*& cur ) // separate scope resolution token from the name of operation - for( size_t i = 0; i != op.mName.length(); ++i ) + for( size_t i = 0; i != op.m_Name.length(); ++i ) { - if ( op.mName[i] == ':' && op.mName[i+1] == ':' ) + if ( op.m_Name[i] == ':' && op.m_Name[i+1] == ':' ) { - string unscoped( op.mName, i+2, op.mName.length() - ( i + 2 ) ); + string unscoped( op.m_Name, i+2, op.m_Name.length() - ( i + 2 ) ); - op.mScope = string( op.mName, 0, i ); + op.mScope = string( op.m_Name, 0, i ); - op.mName = unscoped; + op.m_Name = unscoped; break; } @@ -2075,7 +2075,7 @@ void CJSourceParser::AddClassNode( char*& cur ) pClass->mSrcOffset = int( ctxStart - _gSrcStart ); char* nameTok = cur; - pClass->mName = get_token_str( cur ); + pClass->m_Name = get_token_str( cur ); bool isDerived = 0; @@ -2106,7 +2106,7 @@ void CJSourceParser::AddClassNode( char*& cur ) if ( nameTok != tok ) { - pClass->mName = get_token_str( tok ); + pClass->m_Name = get_token_str( tok ); } } @@ -2180,7 +2180,7 @@ void CJSourceParser::AddClassNode( char*& cur ) skip_next_token_back( tok ); skip_token_back( tok ); - pClass->mName = get_token_str( tok ); + pClass->m_Name = get_token_str( tok ); restore_line_no( tmpLn ); } @@ -2215,7 +2215,7 @@ void CJSourceParser::AddEnumNode( char*& cur ) // check if enumeration has got it's identifier if ( *cur != '{' ) { - pEnum->mName = get_token_str( cur ); + pEnum->m_Name = get_token_str( cur ); } if ( !skip_imp_block( cur ) ) return; @@ -2227,7 +2227,7 @@ void CJSourceParser::AddEnumNode( char*& cur ) // check if the identifier if after the {...} block if ( *cur != ';' ) - pEnum->mName = get_token_str( cur ); + pEnum->m_Name = get_token_str( cur ); } clear_commets_queue(); @@ -2288,7 +2288,7 @@ void CJSourceParser::AddTypeDefNode( char*& cur ) get_string_between( start, typeEnd, &pTDef->mOriginalType ); - get_string_between( nameStart, nameEnd, &pTDef->mName ); + get_string_between( nameStart, nameEnd, &pTDef->m_Name ); clear_commets_queue(); diff --git a/utils/HelpGen/src/scriptbinder.cpp b/utils/HelpGen/src/scriptbinder.cpp index 6a5ed52c57..f02e65ef81 100644 --- a/utils/HelpGen/src/scriptbinder.cpp +++ b/utils/HelpGen/src/scriptbinder.cpp @@ -149,7 +149,7 @@ bool ScriptTemplate::HasVar( const char* name ) { for( size_t i = 0; i != mVars.size(); ++i ) - if ( strcmp( mVars[i]->mName, name ) == 0 ) + if ( strcmp( mVars[i]->m_Name, name ) == 0 ) return 1; @@ -197,7 +197,7 @@ inline void ScriptTemplate::PrintVar( TVarInfo* pInfo, case TVAR_INTEGER : { sprintf(buf, "%d",*( (int*) ((char*)dataObj + pInfo->mOfs) ) ); - + stm.WriteBytes( buf, strlen(buf ) ); break; } @@ -213,7 +213,7 @@ inline void ScriptTemplate::PrintVar( TVarInfo* pInfo, cout << "DBG:: dataObj points to " << (int)dataObj << endl; cout << "DBG:: pInfo->mOfs value is " << (int)pInfo->mOfs << endl; cout << "DBG:: d+pInfo->mOfs is " << (int)((char*)dataObj + pInfo->mOfs) << endl; - cout << "DBG:: pInfo->mName is " << pInfo->mName << endl; + cout << "DBG:: pInfo->m_Name is " << pInfo->m_Name << endl; cout << "DBG:: pInfo->mType is " << pInfo->mType << endl; cout << "DBG:: end of dump. " << endl; @@ -246,7 +246,7 @@ inline void ScriptTemplate::PrintVar( TVarInfo* pInfo, } int* array = *((int**)( (char*)dataObj+info.mRefOfs )); - + ScriptTemplate* pRefTempl; for( int i = 0; i != sz; ++i ) @@ -297,7 +297,7 @@ void ScriptTemplate::PrintScript( void* dataObj, ScriptStream& stm ) for( size_t i = 0; i != sz; ++i ) { - if ( strcmp( mVars[i]->mName, start ) == 0 ) + if ( strcmp( mVars[i]->m_Name, start ) == 0 ) { PrintVar( mVars[i], dataObj, stm ); @@ -328,7 +328,7 @@ ScriptSection::ScriptSection( const string& name, ) : mpParent ( NULL ), - mName ( name ), + m_Name ( name ), mBody ( body ), mAutoHide( autoHide ), @@ -411,7 +411,7 @@ ScriptSection* ScriptSection::GetSubsection( const char* name ) // DBG:: //ScriptSection& sect = *mSubsections[i]; - if ( mSubsections[i]->mName == buf ) + if ( mSubsections[i]->m_Name == buf ) { if ( name[cur] == '/' ) @@ -467,8 +467,8 @@ void ScriptSection::RegisterTemplate( ScriptTemplate& sectionTempalte ) arrRefOfs, arrSizeOfs, refTemplOfs; // obtaining offsets of member vars - - GET_VAR_OFS( ScriptSection, mName, &nameOfs ) + + GET_VAR_OFS( ScriptSection, m_Name, &nameOfs ) GET_VAR_OFS( ScriptSection, mBody, &bodyOfs ) GET_VAR_OFS( ScriptSection, mId, &idOfs ) GET_VAR_OFS( ScriptSection, mRefFirst, &arrRefOfs ) @@ -511,7 +511,7 @@ void ScriptSection::DoRemoveEmptySections(int& nRemoved, SectListT& removedLst) sect.DoRemoveEmptySections( nRemoved, removedLst ); if (sect.mAutoHide ) - + if ( sect.mReferences.size() == 0 ) { bool found = false; @@ -522,7 +522,7 @@ void ScriptSection::DoRemoveEmptySections(int& nRemoved, SectListT& removedLst) found = 1; break; } - + if ( !found ) { removedLst.push_back( § ); diff --git a/utils/HelpGen/src/scriptbinder.h b/utils/HelpGen/src/scriptbinder.h index f95bdcc8d3..dbd8055967 100644 --- a/utils/HelpGen/src/scriptbinder.h +++ b/utils/HelpGen/src/scriptbinder.h @@ -6,7 +6,7 @@ // Created: 22/09/98 // RCS-ID: $Id$ // Copyright: (c) Aleskandars Gluchovas -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef __SCRIPTBINDER_G__ @@ -14,26 +14,26 @@ #if defined( wxUSE_TEMPLATE_STL ) - #include + #include - #ifdef WIN32 - #include - #else - #include - #include - #endif + #ifdef WIN32 + #include + #else + #include + #include + #endif #else - #include "wxstlvec.h" - #include "wx/string.h" - - #ifdef wxUSE_STD_STRING - using std::string; - #else - // FIXME:: dirty! - typedef wxString string; - #endif + #include "wxstlvec.h" + #include "wx/string.h" + + #if wxUSE_STD_STRING + using std::string; + #else + // FIXME:: dirty! + typedef wxString string; + #endif #endif @@ -49,26 +49,26 @@ class ScriptStream { protected: - char* mpBuf; - size_t mSize; - size_t mCapacity; + char* mpBuf; + size_t mSize; + size_t mCapacity; public: - ScriptStream(); - ~ScriptStream(); + ScriptStream(); + ~ScriptStream(); - void WriteBytes( const void* srcBuf, size_t count ); + void WriteBytes( const void* srcBuf, size_t count ); - ScriptStream& operator<<( const char* str ); - ScriptStream& operator<<( const string& str ); - ScriptStream& operator<<( char ch ); + ScriptStream& operator<<( const char* str ); + ScriptStream& operator<<( const string& str ); + ScriptStream& operator<<( char ch ); - void endl(); + void endl(); - inline char* GetBuf() { return mpBuf; } - inline size_t GetBufSize() { return mSize; } + inline char* GetBuf() { return mpBuf; } + inline size_t GetBufSize() { return mSize; } - // clears current contents of the stream - void Reset() { mSize = 0; } + // clears current contents of the stream + void Reset() { mSize = 0; } }; @@ -78,10 +78,10 @@ class ScriptTemplate; enum TEMPLATE_VARIABLE_TYPES { - TVAR_INTEGER, - TVAR_STRING, - TVAR_DOUBLE, - TVAR_REF_ARRAY + TVAR_INTEGER, + TVAR_STRING, + TVAR_DOUBLE, + TVAR_REF_ARRAY }; // helper structures used only by ScriptTemplate @@ -89,31 +89,31 @@ enum TEMPLATE_VARIABLE_TYPES struct TVarInfo { public: - const char* mName; - int mType; - int mOfs; - - TVarInfo( const char* name, int ofs, int varType ) - : mName(name), - mType( varType ), - mOfs( ofs ) - {} + const char* m_Name; + int mType; + int mOfs; + + TVarInfo( const char* name, int ofs, int varType ) + : m_Name(name), + mType( varType ), + mOfs( ofs ) + {} }; struct TArrayInfo : public TVarInfo { public: - int mRefOfs; - int mSizeIntOfs; - int mObjRefTemplOfs; + int mRefOfs; + int mSizeIntOfs; + int mObjRefTemplOfs; - TArrayInfo( const char* name ) - : TVarInfo( name, 0, TVAR_REF_ARRAY ) - {} + TArrayInfo( const char* name ) + : TVarInfo( name, 0, TVAR_REF_ARRAY ) + {} }; // stores offset of the given member (of the given class) -// to (*pOfs), though the use of template classes would have +// to (*pOfs), though the use of template classes would have // solved this problem in much clearer fashion // FOR NOW:: obtaining physical offset of class member @@ -121,38 +121,38 @@ public: // FIXME:: +/- 1 problem #ifdef __UNIX__ - #define WEIRD_OFFSET 1 + #define WEIRD_OFFSET 1 #else - #define WEIRD_OFFSET 0 + #define WEIRD_OFFSET 0 #endif #define GET_VAR_OFS( className, varName, pOfs ) \ - { \ - int* className::* varPtr; \ - varPtr = (int* className::*)&className::varName; \ - \ - (*pOfs) = int(*(int*)&varPtr)-WEIRD_OFFSET; \ - } + { \ + int* className::* varPtr; \ + varPtr = (int* className::*)&className::varName; \ + \ + (*pOfs) = int(*(int*)&varPtr)-WEIRD_OFFSET; \ + } class ScriptSection; #if defined( wxUSE_TEMPLATE_STL ) - typedef vector TVarListT; + typedef vector TVarListT; - // container class for sections - typedef vector SectListT; + // container class for sections + typedef vector SectListT; #else - typedef TVarInfo* TVarInfoPtrT; - typedef ScriptSection* ScriptSectionPtrT; + typedef TVarInfo* TVarInfoPtrT; + typedef ScriptSection* ScriptSectionPtrT; - typedef WXSTL_VECTOR_SHALLOW_COPY(TVarInfoPtrT) TVarListT; + typedef WXSTL_VECTOR_SHALLOW_COPY(TVarInfoPtrT) TVarListT; - // container class for sections - typedef WXSTL_VECTOR_SHALLOW_COPY(ScriptSectionPtrT) SectListT; + // container class for sections + typedef WXSTL_VECTOR_SHALLOW_COPY(ScriptSectionPtrT) SectListT; #endif @@ -163,42 +163,41 @@ class ScriptSection; class ScriptTemplate { protected: - // do not use string object here - parsing of - // C string can be much faster (in debug v.) - char* mTText; - + // do not use string object here - parsing of + // C string can be much faster (in debug v.) + char* mTText; + + TVarListT mVars; - TVarListT mVars; + inline void PrintVar( TVarInfo* pInfo, + void* dataObj, + ScriptStream& stm ); - inline void PrintVar( TVarInfo* pInfo, - void* dataObj, - ScriptStream& stm ); - public: - ScriptTemplate( const string& templateText ); - virtual ~ScriptTemplate(); - - bool HasVar( const char* name ); - - // Member variables registration methods. - - // NOTE:: GET_VAR_OFS() macro should be used - // to get offset of the class member (see #define above) - void AddStringVar ( const char* name, int ofs ); - void AddIntegerVar( const char* name, int ofs ); - void AddDoubleVar ( const char* name, int ofs ); - - void AddObjectRefArray( const char* name, - int ofsRefToFirstObj, - int ofsObjSizeInt, - int ofsObjRefTempl - ); - - // reads the script, replaces $(..) tags with values - // of registered members of dataObj object, and outputs - // the result to given text stream - - void PrintScript( void* dataObj, ScriptStream& stm ); + ScriptTemplate( const string& templateText ); + virtual ~ScriptTemplate(); + + bool HasVar( const char* name ); + + // Member variables registration methods. + + // NOTE:: GET_VAR_OFS() macro should be used + // to get offset of the class member (see #define above) + void AddStringVar ( const char* name, int ofs ); + void AddIntegerVar( const char* name, int ofs ); + void AddDoubleVar ( const char* name, int ofs ); + + void AddObjectRefArray( const char* name, + int ofsRefToFirstObj, + int ofsObjSizeInt, + int ofsObjRefTempl + ); + + // reads the script, replaces $(..) tags with values + // of registered members of dataObj object, and outputs + // the result to given text stream + + void PrintScript( void* dataObj, ScriptStream& stm ); }; class ScriptSection; @@ -210,108 +209,108 @@ class ScriptSection { protected: - // NOTE:: "$(NAME)", $(ID), "$(BODY)" and "$(REFLIST)" aree - // reseved template variables of ScriptSection + // NOTE:: "$(NAME)", $(ID), "$(BODY)" and "$(REFLIST)" are + // reseved template variables of ScriptSection - // the below there members are registered to ScriptTemplate, - // GUID within the section tree (numeric) + // the below there members are registered to ScriptTemplate, + // GUID within the section tree (numeric) - ScriptSection* mpParent; - string mId; // $(ID) - string mName; // $(NAME) - string mBody; // $(BODY) + ScriptSection* mpParent; + string mId; // $(ID) + string m_Name;// $(NAME) + string mBody; // $(BODY) - // NULL, if this section is not aggregated anywhere + // NULL, if this section is not aggregated anywhere - SectListT mSubsections; // aggregated sectons - SectListT mReferences; // registered as $(REFLIST) + SectListT mSubsections; // aggregated sectons + SectListT mReferences; // registered as $(REFLIST) - bool mAutoHide; // see autoHide arg, in constructor - bool mSortOn; // TRUE, if sort subsectons by naem + bool mAutoHide; // see autoHide arg, in constructor + bool mSortOn; // true, if sort subsectons by naem - // tempalte for this section - ScriptTemplate* mpSectTempl; + // tempalte for this section + ScriptTemplate* mpSectTempl; - // template used for links (or references) to this section - ScriptTemplate* mpRefTempl; - - // do not call destructor of this object, - // call RemoveRef() instead - int mRefCount; + // template used for links (or references) to this section + ScriptTemplate* mpRefTempl; - static int mIdCounter; // generator of GUIDs + // do not call destructor of this object, + // call RemoveRef() instead + int mRefCount; - // fields registered and used by ScriptTemplate object - void* mRefFirst; - int mArrSize; + static int mIdCounter; // generator of GUIDs + + // fields registered and used by ScriptTemplate object + void* mRefFirst; + int mArrSize; protected: - virtual void AddRef(); - virtual void RemoveRef(); - void DoRemoveEmptySections(int& nRemoved, SectListT& removedLst); - void DoRemoveDeadLinks( SectListT& removedLst); + virtual void AddRef(); + virtual void RemoveRef(); + void DoRemoveEmptySections(int& nRemoved, SectListT& removedLst); + void DoRemoveDeadLinks( SectListT& removedLst); public: - // NOTE:: pass NULL to certain template, if your sure - // this kind of template will never be used, - // e.g. if section is contained but never referrenced, - // then pReferenceTemplate can be NULL + // NOTE:: pass NULL to certain template, if your sure + // this kind of template will never be used, + // e.g. if section is contained but never referrenced, + // then pReferenceTemplate can be NULL - // if autoHide option is TRUE, the section will be automatically - // collapsed (not shown) if it doesn't contain any references - // to other sections (e.g. could be usefull for autoamically - // hiding empty index-sections). + // if autoHide option is true, the section will be automatically + // collapsed (not shown) if it doesn't contain any references + // to other sections (e.g. could be usefull for autoamically + // hiding empty index-sections). - ScriptSection( const string& name = "", - const string& body = "", - ScriptTemplate* pSectionTemplate = NULL, - ScriptTemplate* pReferenceTemplate = NULL, - bool autoHide = FALSE, - bool sorted = FALSE - ); + ScriptSection( const string& name = "", + const string& body = "", + ScriptTemplate* pSectionTemplate = NULL, + ScriptTemplate* pReferenceTemplate = NULL, + bool autoHide = false, + bool sorted = false + ); - // calls RemoveRef() to all aggreagated sections first, - // then to all referenced section - this way all - // sections (even not aggregated ones) become "garbage-collected" + // calls RemoveRef() to all aggreagated sections first, + // then to all referenced section - this way all + // sections (even not aggregated ones) become "garbage-collected" - // NOTE:: do not call destructor directlly, call RemoveRef() - // instead - virtual ~ScriptSection(); + // NOTE:: do not call destructor directlly, call RemoveRef() + // instead + virtual ~ScriptSection(); - // if addToReferencesToo is TRUE, section is aggregated and - // also added to reference list of this section + // if addToReferencesToo is true, section is aggregated and + // also added to reference list of this section - void AddSection( ScriptSection* pSection, bool addToReferencesToo = FALSE ); + void AddSection( ScriptSection* pSection, bool addToReferencesToo = false ); - // add cross-reference to this given section - void AddReference( ScriptSection* pReferredSection ); + // add cross-reference to this given section + void AddReference( ScriptSection* pReferredSection ); - // subsection may be given of variable depth level, - // e.g. "publications/reviews/software" + // subsection may be given of variable depth level, + // e.g. "publications/reviews/software" - ScriptSection* GetSubsection( const char* name ); + ScriptSection* GetSubsection( const char* name ); - // returns list aggregated sections - SectListT& GetSubsections(); + // returns list aggregated sections + SectListT& GetSubsections(); - // binds reserved template names ( $(..) ) to member - // vairalbes in the ScriptSection class, should be called - // to initialize each user-code provided script template + // binds reserved template names ( $(..) ) to member + // vairalbes in the ScriptSection class, should be called + // to initialize each user-code provided script template - static void RegisterTemplate( ScriptTemplate& sectionTempalte ); + static void RegisterTemplate( ScriptTemplate& sectionTempalte ); - // prints out section tree to the stream, starting from - // this section as a root node - virtual void Print( ScriptStream& stm ); + // prints out section tree to the stream, starting from + // this section as a root node + virtual void Print( ScriptStream& stm ); - // searches empty sections which has autoHide == TRUE, - // and colapses them (this method should be called ) - // on the root-section of the sections tree + // searches empty sections which has autoHide == true, + // and colapses them (this method should be called ) + // on the root-section of the sections tree - // NOTE:: does not work properly, yet! - void RemoveEmptySections(); + // NOTE:: does not work properly, yet! + void RemoveEmptySections(); }; // base class for documnetation generators @@ -321,61 +320,61 @@ public: class DocGeneratorBase { protected: - MarkupTagsT mTags; + MarkupTagsT mTags; - // override this method to do some post processing - // after generation of document, or even write some - // data into output stream, before the section tree - // is flushed into it. + // override this method to do some post processing + // after generation of document, or even write some + // data into output stream, before the section tree + // is flushed into it. - // return FALSE, if something has gone wrong and - // document cannot be saved now + // return false, if something has gone wrong and + // document cannot be saved now - virtual bool OnSaveDocument( ScriptStream& WXUNUSED(stm) ) - { return 1; } + virtual bool OnSaveDocument( ScriptStream& WXUNUSED(stm) ) + { return 1; } - // override this method to provide reference to - // the top section of the document (used as default - // starting section when saving a document) + // override this method to provide reference to + // the top section of the document (used as default + // starting section when saving a document) - virtual ScriptSection* GetTopSection() - { return 0; } + virtual ScriptSection* GetTopSection() + { return 0; } public: - DocGeneratorBase() - : mTags(0) // no defaul script - {} + DocGeneratorBase() + : mTags(0) // no defaul script + {} + + // dectrouctors of polymorphic classes SHOULD be virtual + virtual ~DocGeneratorBase() {} - // dectrouctors of polymorphic classes SHOULD be virtual - virtual ~DocGeneratorBase() {} + // returns tags, being used for specific target script + MarkupTagsT GetScriptMarkupTags() { return mTags; } - // returns tags, being used for specific target script - MarkupTagsT GetScriptMarkupTags() { return mTags; } + // sets tag array for specific script - // sets tag array for specific script + // NOTE:: Why virtual? since approach with MarkupTagsT is + // "flowless" only in theory. Overriding this method + // allows document generators to check the type of the + // target script, and perhaps make some modifications + // to generator's tamplates, to match the specific script - // NOTE:: Why virtual? since approach with MarkupTagsT is - // "flowless" only in theory. Overriding this method - // allows document generators to check the type of the - // target script, and perhaps make some modifications - // to generator's tamplates, to match the specific script + virtual void SetScriptMarkupTags( MarkupTagsT tags ) + { mTags = tags; } - virtual void SetScriptMarkupTags( MarkupTagsT tags ) - { mTags = tags; } + // seves document to file starting from the root-node of + // the document (provided by GetTopSection() method), + // or from "pFromSection" if it's not NULL. - // seves document to file starting from the root-node of - // the document (provided by GetTopSection() method), - // or from "pFromSection" if it's not NULL. + // fopenOptions arg. is string passed to fopen() method, + // returns true, if saving was successfull - // fopenOptions arg. is string passed to fopen() method, - // returns TRUE, if saving was successfull + virtual bool SaveDocument( const char* fname, + const char* fopenOptions = "w", + ScriptSection* pFromSection = NULL + ); - virtual bool SaveDocument( const char* fname, - const char* fopenOptions = "w", - ScriptSection* pFromSection = NULL - ); - }; #endif diff --git a/utils/HelpGen/src/sourcepainter.h b/utils/HelpGen/src/sourcepainter.h index c2456e4da2..f26e98f62b 100644 --- a/utils/HelpGen/src/sourcepainter.h +++ b/utils/HelpGen/src/sourcepainter.h @@ -6,7 +6,7 @@ // Created: 22/09/98 // RCS-ID: $Id$ // Copyright: (c) Aleskandars Gluchovas -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef __SOURCEPAINTER_G__ @@ -18,28 +18,28 @@ #if defined( wxUSE_TEMPLATE_STL ) - #include - typedef vector SPBlockListT; + #include + typedef vector SPBlockListT; - #ifdef WIN32 - #include - #else - #include - #include - #endif + #ifdef WIN32 + #include + #else + #include + #include + #endif #else - #include "wxstlvec.h" - #include "wx/string.h" - - #ifdef wxUSE_STD_STRING - using std::string; - #else - // FIXME:: dirty! - #define string wxString - #endif + #include "wxstlvec.h" + #include "wx/string.h" - typedef WXSTL_VECTOR_SHALLOW_COPY(int) SPBlockListT; + #if wxUSE_STD_STRING + using std::string; + #else + // FIXME:: dirty! + #define string wxString + #endif + + typedef WXSTL_VECTOR_SHALLOW_COPY(int) SPBlockListT; #endif @@ -63,46 +63,46 @@ class SourcePainter { protected: - string mResultStr; - SPBlockListT mBlocks; - bool mCollectResultsOn; + string mResultStr; + SPBlockListT mBlocks; + bool mCollectResultsOn; - // state variables - bool mIsInComment; - bool mCommentIsMultiline; + // state variables + bool mIsInComment; + bool mCommentIsMultiline; public: - // assembleResultString == TRUE - instructs painter - // to collect each chunk of srouce passed to ProcessSource(), - // so that results cann be futher obtained in a single string - // instead of vector of block descriptions + // assembleResultString == true - instructs painter + // to collect each chunk of srouce passed to ProcessSource(), + // so that results cann be futher obtained in a single string + // instead of vector of block descriptions + + SourcePainter( bool assembleResultString = true ); + virtual ~SourcePainter() {} - SourcePainter( bool assembleResultString = TRUE ); - virtual ~SourcePainter() {} + // can be called multiple times (e.g. on each source line) + void ProcessSource( char* src, int srcLen ); - // can be called multiple times (e.g. on each source line) - void ProcessSource( char* src, int srcLen ); + // method, for manually adjusting state of source painter + void SetState( bool isInComment, + bool commentIsMultiline ); - // method, for manually adjusting state of source painter - void SetState( bool isInComment, - bool commentIsMultiline ); + // reinitializes object - clears results of previouse processing + void Init( bool assembleResultString = true ); - // reinitializes object - clears results of previouse processing - void Init( bool assembleResultString = TRUE ); + // generates string of highlighted source for the scipting + // language given by "tags" argument - // generates string of highlighted source for the scipting - // language given by "tags" argument - - virtual void GetResultString(string& result, MarkupTagsT tags); + virtual void GetResultString(string& result, MarkupTagsT tags); - // returns vector of block descriptors, see SPBlockListT definition - // (block descriptors can be used for fast custom hightlighted text generation) + // returns vector of block descriptors, see SPBlockListT definition + // (block descriptors can be used for fast custom hightlighted text generation) - SPBlockListT& GetBlocks(); + SPBlockListT& GetBlocks(); - // NOTE:: static method - // returns if the given word is a reserved word or basic type identifier - static bool IsKeyword( char* word, int wordLen ); + // NOTE:: static method + // returns if the given word is a reserved word or basic type identifier + static bool IsKeyword( char* word, int wordLen ); }; #endif diff --git a/utils/HelpGen/src/srcparser.cpp b/utils/HelpGen/src/srcparser.cpp index f98154c822..8f541c7a77 100644 --- a/utils/HelpGen/src/srcparser.cpp +++ b/utils/HelpGen/src/srcparser.cpp @@ -6,7 +6,7 @@ // Created: 22/09/98 // RCS-ID: $Id$ // Copyright: (c) Aleskandars Gluchovas -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ @@ -425,7 +425,7 @@ string spOperation::GetFullName(MarkupTagsT tags) { string txt = tags[TAG_BOLD].start + mRetType; txt += " "; - txt += mName; + txt += m_Name; txt += "( "; txt += tags[TAG_BOLD].end; @@ -447,7 +447,7 @@ string spOperation::GetFullName(MarkupTagsT tags) txt += tags[TAG_ITALIC].start; txt += " "; - txt += param.mName; + txt += param.m_Name; if ( param.mInitVal != "" ) { @@ -575,13 +575,13 @@ void spContext::DumpThis(const wxString& WXUNUSED(indent)) const void spParameter::DumpThis(const wxString& indent) const { wxLogDebug("%sparam named '%s' of type '%s'", - indent.c_str(), mName.c_str(), mType.c_str()); + indent.c_str(), m_Name.c_str(), mType.c_str()); } void spAttribute::DumpThis(const wxString& indent) const { wxLogDebug("%svariable named '%s' of type '%s'", - indent.c_str(), mName.c_str(), mType.c_str()); + indent.c_str(), m_Name.c_str(), mType.c_str()); } void spOperation::DumpThis(const wxString& indent) const @@ -614,7 +614,7 @@ void spOperation::DumpThis(const wxString& indent) const mIsConstant ? "const " : "", mIsVirtual ? "virtual " : "", protection.c_str(), - mScope.c_str(), mName.c_str(), mRetType.c_str()); + mScope.c_str(), m_Name.c_str(), mRetType.c_str()); } void spPreprocessorLine::DumpThis(const wxString& indent) const @@ -649,7 +649,7 @@ void spClass::DumpThis(const wxString& indent) const for ( StrListT::const_iterator i = mSuperClassNames.begin(); i != mSuperClassNames.end(); i++ ) { - if ( !!base ) + if ( !base.empty() ) base += ", "; base += *i; } @@ -685,19 +685,19 @@ void spClass::DumpThis(const wxString& indent) const wxLogDebug("%s%s named '%s' (base classes: %s)", indent.c_str(), kind.c_str(), - mName.c_str(), base.c_str()); + m_Name.c_str(), base.c_str()); } void spEnumeration::DumpThis(const wxString& indent) const { wxLogDebug("%senum named '%s'", - indent.c_str(), mName.c_str()); + indent.c_str(), m_Name.c_str()); } void spTypeDef::DumpThis(const wxString& indent) const { wxLogDebug("%stypedef %s = %s", - indent.c_str(), mName.c_str(), mOriginalType.c_str()); + indent.c_str(), m_Name.c_str(), mOriginalType.c_str()); } void spFile::DumpThis(const wxString& indent) const diff --git a/utils/HelpGen/src/srcparser.h b/utils/HelpGen/src/srcparser.h index 50376aa206..bba490c7af 100644 --- a/utils/HelpGen/src/srcparser.h +++ b/utils/HelpGen/src/srcparser.h @@ -30,7 +30,7 @@ #include "wx/string.h" #include "wxstlvec.h" - #ifdef wxUSE_STD_STRING + #if wxUSE_STD_STRING using std::string; #else // FOR NOW:: quick n' dirty: @@ -166,7 +166,7 @@ public: // spClass on sorting the class members void VisitAll( spContext& atContext, - bool sortContent = TRUE + bool sortContent = true ); // methods invoked by visitor @@ -236,7 +236,7 @@ public: string mText; bool mIsMultiline; // multiline comments ar those with /**/'s - // TRUE, if these was an empty empty + // true, if these was an empty empty // line above single line comment bool mStartsPar; @@ -311,13 +311,13 @@ public: // see SRC_VISIBLITY_TYPES enumeration int mVisibility; - // TRUE, if context does not really exist in the source + // true, if context does not really exist in the source // but was created by external tools (e.g. forward engineering) bool mIsVirtualContext; bool mVirtualContextHasChildren; - // body of the context in case (mIsVirtual == TRUE) + // body of the context in case (mIsVirtual == true) string mVirtualContextBody; string mVittualContextFooter; @@ -327,7 +327,7 @@ public: public: // universal identifier of the context (e.g. class name) - string mName; + wxString m_Name; public: // default constructor @@ -360,7 +360,7 @@ public: bool VitualContextHasChildren(); void SetVirtualContextBody( const string& body, - bool hasChildren = FALSE, + bool hasChildren = false, const string& footer = wxEmptyString ); string GetVirtualContextBody(); @@ -373,7 +373,7 @@ public: virtual string GetHeader( spContext* pCtx = NULL ); - // TRUE, if there is at least one entry + // true, if there is at least one entry // in the comment list of this context bool HasComments(); MCommentListT& GetCommentList() { return mComments; } @@ -384,7 +384,7 @@ public: virtual void SortMembers() {} // returns identifier of this context - inline string& GetName() { return mName; } + inline wxString& GetName() { return m_Name; } // returns -1, if souce line # is unknow inline int GetSourceLineNo() { return mSrcLineNo; } @@ -413,11 +413,11 @@ public: // returns NULL, if the context with the given // name and type is not contained by this context // and it's children. Children's children are not - // searched recursivelly if searchSubMembers is FALSE + // searched recursivelly if searchSubMembers is false spContext* FindContext( const string& identifier, int contextType = SP_CTX_ANY, - bool searchSubMembers = TRUE + bool searchSubMembers = true ); // removes this context from it's parent @@ -426,19 +426,19 @@ public: // will result assertion failure) void RemoveThisContext(); - // returns TRUE, if this object is aggregated in the file + // returns true, if this object is aggregated in the file bool IsInFile(); - // TRUE, if outter context is a namespace + // true, if outter context is a namespace bool IsInNameSpace(); - // TRUE, if outter context is a class + // true, if outter context is a class bool IsInClass(); - // TRUE, if outter cotext is an operation (TRUE for "spParameter"s) + // true, if outter cotext is an operation (true for "spParameter"s) bool IsInOperation(); - // TRUE if the context is public + // true if the context is public bool IsPublic() const { return mVisibility == SP_VIS_PUBLIC; } // NOTE:: method returns not the type of this object @@ -547,14 +547,14 @@ public: // argument list //MParamListT mParams; - // TRUE, if operation does not modify + // true, if operation does not modify // the content of the object bool mIsConstant; // flag, specific to C++ bool mIsVirtual; - // TRUE, if definition follows the declaration immediatelly + // true, if definition follows the declaration immediatelly bool mHasDefinition; // scope if any (e.g. MyClass::MyFunction(), scope stirng is "MyClass" ) @@ -634,7 +634,7 @@ public: // valid if mClassSubType is SP_CLTYPE_TEMPLATE_CLASS string mTemplateTypes; - // TRUE, if it's and interface of abstract base class + // true, if it's and interface of abstract base class bool mIsAbstract; public: -- 2.47.2