header.c_str());
}
else if ( mode == Mode_Dump ) {
- ((spFile *)ctxTop)->mFileName = header;
+ ((spFile *)ctxTop)->m_FileName = header;
visitor.VisitAll(*ctxTop);
visitor.EndVisit();
}
wxString section(m_arrayFuncDocs[n].text);
// Strip leading whitespace
- int pos = section.Find("\\membersection");
+ int pos = section.Find(_T("\\membersection"));
if (pos > -1)
{
section = section.Mid(pos);
void HelpGenVisitor::VisitFile( spFile& file )
{
- m_fileHeader = file.mFileName;
+ m_fileHeader = file.m_FileName;
wxLogVerbose("%s: started generating docs for classes from file '%s'...",
GetCurrentTimeFormatted("%H:%M:%S"), m_fileHeader.c_str());
}
m_classname.c_str(), funcname.c_str(),
MakeLabel(m_classname, funcname).c_str());
+ wxString constStr;
+ if(op.mIsConstant) constStr = _T("const");
+
+ wxString virtualStr;
+ if(op.mIsVirtual) virtualStr = _T("virtual ");
+
wxString func;
- func.Printf("\n"
- "\\%sfunc{%s%s}{%s}{",
- op.mIsConstant ? "const" : "",
- op.mIsVirtual ? "virtual " : "",
- op.m_RetType.c_str(),
- funcname.c_str());
+ func.Printf(_T("\n")
+ _T("\\%sfunc{%s%s}{%s}{"),
+ constStr.c_str(),
+ virtualStr.c_str(),
+ op.m_RetType.c_str(),
+ funcname.c_str());
m_textFunc += func;
}
const MethodInfo& method = *(methods[index]);
bool isVirtual = ctxMethod->mIsVirtual;
- if ( isVirtual != method.HasFlag(MethodInfo::Virtual) ) {
+ if ( isVirtual != method.HasFlag(MethodInfo::Virtual) )
+ {
+ wxString virtualStr;
+ if(isVirtual)virtualStr = _T("not ");
+
wxLogWarning("'%s::%s' is incorrectly documented as %s"
"virtual.",
nameClass.c_str(),
nameMethod.c_str(),
- isVirtual ? "not " : "");
+ virtualStr.c_str());
}
bool isConst = ctxMethod->mIsConstant;
- if ( isConst != method.HasFlag(MethodInfo::Const) ) {
+ if ( isConst != method.HasFlag(MethodInfo::Const) )
+ {
+ wxString constStr;
+ if(isConst)constStr = _T("not ");
+
wxLogWarning("'%s::%s' is incorrectly documented as %s"
"constant.",
nameClass.c_str(),
nameMethod.c_str(),
- isConst ? "not " : "");
+ constStr.c_str());
}
// check that the params match
/*
$Log$
+ Revision 1.44 2005/05/31 17:47:45 ABX
+ More warning and error fixes (work in progress with Tinderbox).
+
Revision 1.43 2005/05/31 15:42:43 ABX
More warning and error fixes (work in progress with Tinderbox).
/***** Implementation for class spInterFileContext *****/
-size_t spInterFileContext::GetFileNo( const string& fname )
+size_t spInterFileContext::GetFileNo( const wxString& fname )
{
- for ( size_t i = 0; i != mFiles.size(); ++i )
+ for ( size_t i = 0; i != m_Files.size(); ++i )
{
- if ( fname == mFiles[i] )
+ if ( fname == m_Files[i] )
return i;
}
spContext* pCtx = ctx.GetEnclosingContext( SP_CTX_FILE );
// DBG:: outer-file context should be present
- wxASSERT( pCtx && pCtx->GetType() == SP_CTX_FILE );
+ wxASSERT( pCtx && pCtx->GetType() == SP_CTX_FILE );
- return GetFileNo( ((spFile*)pCtx)->mFileName );
+ return GetFileNo( ((spFile*)pCtx)->m_FileName );
}
/*** public interface ***/
spInterFileContext::~spInterFileContext()
{}
-void spInterFileContext::AddFile( const string& fname, const string& content )
+void spInterFileContext::AddFile( const wxString& fname, const wxString& content )
{
- mFiles.push_back( fname );
- mContents.push_back( content );
+ m_Files.push_back( fname );
+ m_Contents.push_back( content );
}
void spInterFileContext::RemoveContext( spContext& ctx )
lst.push_back( mark );
}
-void spInterFileContext::DoAppendSourceFragment( string& source,
- string& result,
+void spInterFileContext::DoAppendSourceFragment( string& source,
+ string& result,
size_t pos, size_t len )
{
mFiltered.erase( mFiltered.begin(), mFiltered.end() );
{
spBookmark& mark = mDeletionMarks[i];
- if ( mark.mFileNo == mCurFileNo &&
+ if ( mark.mFileNo == mCurFileNo &&
mark.mFrom >= pos && mark.mFrom < pos + len )
InsertBookmarkSorted( mFiltered, mark );
result.append( source, cur, ( pos + len ) - cur );
}
-void spInterFileContext::GenerateContextBody( spContext& ctx,
+void spInterFileContext::GenerateContextBody( spContext& ctx,
string& source,
- string& result,
+ string& result,
size_t& lastSavedPos,
size_t& lastKnownPos )
{
// add fragment accumulated before this context
DoAppendSourceFragment( source, result,
- size_t(lastSavedPos),
+ size_t(lastSavedPos),
size_t(lastKnownPos - lastSavedPos) );
// add context body
// append the reminder space after children of the context
DoAppendSourceFragment( result, source,
- size_t(lastSavedPos),
+ size_t(lastSavedPos),
size_t(lastKnownPos - lastSavedPos) );
- // add footer
+ // add footer
result += ctx.GetFooterOfVirtualContextBody();
lastKnownPos = ctx.mSrcOffset + ctx.mContextLength;
for( size_t f = 0; f != lst.size(); ++f )
{
- string& fname = ((spFile*)lst[f])->mFileName;
+ wxString& fname = ((spFile*)lst[f])->m_FileName;
size_t fileNo = GetFileNo( fname );
- string& source = mContents[ fileNo ];
+ wxString& source = m_Contents[ fileNo ];
- string result;
+ wxString result;
size_t lastKnownPos = 0, // the begining of the file is always "known"
lastSavedPos = 0;
// the end of file is always known
- lastKnownPos = mContents[ fileNo ].length();
+ lastKnownPos = m_Contents[ fileNo ].length();
- // append the reminder
+ // append the reminder
DoAppendSourceFragment( source, result,
- size_t(lastSavedPos),
+ size_t(lastSavedPos),
size_t(lastKnownPos - lastSavedPos) );
// replace original contnet with newly generated one
- mContents[ fileNo ] = result;
+ m_Contents[ fileNo ] = result;
}
}
mParser.SetPlugin( pPlugin );
- for( size_t i = 0; i != mFiles.size(); ++i )
+ for( size_t i = 0; i != m_Files.size(); ++i )
{
- char* s = (char*)(mContents[i].c_str());
+ wxChar* s = (char*)(m_Contents[i].c_str());
- spFile* pFCtx = mParser.Parse( s, s + mContents[i].length() );
+ spFile* pFCtx = mParser.Parse( s, s + m_Contents[i].length() );
- pFCtx->mFileName = mFiles[i];
+ pFCtx->m_FileName = m_Files[i];
AddMember( pFCtx );
}
void spInterFileContext::WriteToFiles()
{
- for( size_t i = 0; i != mFiles.size(); ++i )
+ for( size_t i = 0; i != m_Files.size(); ++i )
{
- FILE* fp = fopen( mFiles[i].c_str(), "w+t" );
+ FILE* fp = fopen( m_Files[i].c_str(), "w+t" );
if ( fp != NULL )
{
- fwrite( mContents[i].c_str(), sizeof(char), mContents[i].length(), fp );
+ fwrite( m_Contents[i].c_str(), sizeof(char), m_Contents[i].length(), fp );
fclose( fp );
}
{
wxASSERT( pCtx->PositionIsKnown() ); // DBG:: should be checked by-user code
- wxString& source = mContents[ GetFileNoOfContext( *pCtx ) ];
+ wxString& source = m_Contents[ GetFileNoOfContext( *pCtx ) ];
return wxString( source.c_str() + pCtx->mSrcOffset, pCtx->mContextLength );
}
wxASSERT( pCtx->mHeaderLength != -1 ); // DBG:: -/-
- wxString& source = mContents[ GetFileNoOfContext( *pCtx ) ];
+ wxString& source = m_Contents[ GetFileNoOfContext( *pCtx ) ];
return wxString( source.c_str() + pCtx->mSrcOffset, pCtx->mHeaderLength );
}