for wxWindows documentation from C++ headers git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			100 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			100 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        No names yet.
 | |
| // Purpose:     Contrib. demo
 | |
| // Author:      Aleksandras Gluchovas
 | |
| // Modified by:
 | |
| // Created:     27/12/98
 | |
| // RCS-ID:      $Id$
 | |
| // Copyright:   (c) Aleskandars Gluchovas
 | |
| // Licence:   	wxWindows licence
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| #ifndef __IFCONTEXT_G__
 | |
| #define __IFCONTEXT_G__
 | |
| 
 | |
| #include "srcparser.h"
 | |
| #include "cjparser.h"
 | |
| 
 | |
| class spBookmark
 | |
| {
 | |
| public:
 | |
| 	size_t mFrom;
 | |
| 	size_t mLen;
 | |
| 	size_t mFileNo;
 | |
| 
 | |
| 	inline spBookmark() {}
 | |
| 
 | |
| 	inline spBookmark( int from, int len, int fileNo )
 | |
| 		: mFrom( from ), mLen( len ), mFileNo( fileNo )
 | |
| 	{}
 | |
| };
 | |
| 
 | |
| #if defined( wxUSE_TEMPLATE_STL )
 | |
| 
 | |
| 	typedef vector<spBookmark) BookmarkListT
 | |
| 
 | |
| #else
 | |
| 
 | |
| 	typedef WXSTL_VECTOR_SHALLOW_COPY(spBookmark) BookmarkListT;
 | |
| 
 | |
| #endif
 | |
| 
 | |
| 
 | |
| class spInterFileContext : public spContext
 | |
| {
 | |
| protected:
 | |
| 
 | |
| 	BookmarkListT  mDeletionMarks;
 | |
| 
 | |
| 	BookmarkListT  mFiltered;
 | |
| 
 | |
| 	size_t         mCurFileNo;
 | |
| 
 | |
| 	CJSourceParser mParser;
 | |
| 
 | |
| protected:
 | |
| 
 | |
| 	size_t GetFileNoOfContext( spContext& ctx );
 | |
| 	size_t GetFileNo( const string& fname );
 | |
| 
 | |
| 	void InsertBookmarkSorted( BookmarkListT& lst, spBookmark& mark );
 | |
| 
 | |
| 	void DoAppendSourceFragment( string& source, 
 | |
| 								 string& result, 
 | |
| 						         size_t  pos, size_t len );
 | |
| 
 | |
| 	void GenerateContextBody( spContext& ctx, 
 | |
| 							  string&    source,
 | |
| 							  string&    result, 
 | |
| 							  size_t& lastSavedPos,
 | |
| 							  size_t& lastKnownPos );
 | |
| 
 | |
| public:
 | |
| 
 | |
| 	StrListT       mFiles;
 | |
| 	StrListT       mContents;
 | |
| 
 | |
| public:
 | |
| 
 | |
| 	spInterFileContext();
 | |
| 	~spInterFileContext();
 | |
| 
 | |
| 	void AddFile( const string& fname, const string& content );
 | |
| 
 | |
| 	void RemoveContext( spContext& ctx );
 | |
| 
 | |
| 	void GenrateContents();
 | |
| 
 | |
| 	void ParseContents( SourceParserPlugin* pPlugin = NULL );
 | |
| 
 | |
| 	void WriteToFiles();
 | |
| 
 | |
| 	// overriden method of the base class (finds out the source fragment)
 | |
| 
 | |
| 	virtual string GetBody( spContext* pCtx = NULL );
 | |
| 
 | |
| 	virtual string GetHeader( spContext* pCtx = NULL );
 | |
| };
 | |
| 
 | |
| 
 | |
| #endif |