⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pages.h

📁 这是一个能够自动生成文档的程序
💻 H
字号:
#ifndef __PAGESMANAGER_H__
#pragma once

#include <afxtempl.h>
#include "Page.h"

typedef CList<CString*, CString*> CStringPtrList;

//管理代码文件集合
class CPages  
{
public:
	//构造函数
	CPages();
	//析构函数
	virtual ~CPages();

public:
	//加入工程的一个目录
	BOOL AddUserDir(LPCTSTR iDir);
	//加入开发环境或语言类库的目录
	BOOL AddLibDir(LPCTSTR iDir);
	//删除工程的一个目录
	void DeleteUserDir(LPCTSTR iDir);
	//删除开发环境或语言类库的目录
	void DeleteLibDir(LPCTSTR iDir);
	//取得工程的第一个目录的POSITION
	POSITION GetFirstUserDirPosition() {return mUserDirs.GetHeadPosition();};
	//取得工程的下一个目录字符串
	CString* GetNextuserDir(POSITION& ioPos) { return mUserDirs.GetNext(ioPos); };
	
    //在工程目录及库目录中查找文件
	BOOL FindCodePage(CString& oPathName, LPCTSTR iFileName, BOOL iBeginOfUserDir=TRUE);
	//判断工程目录列表是否为空
	BOOL IsUserDirEmpty() {return mUserDirs.IsEmpty();};

	//根据文件路径查询代码页对象(不是磁盘文件,是指已解析的代码页对象)
	CPage* Search(LPCTSTR iPageName);
	//加入一个代码页对象
	CPage* AddPage(LPCTSTR iPathName);

private:
	//清除所有数据
	void ClearContent();
	//查找磁盘文件
    BOOL FindFile(CString& oPathName, const CString& iDirectory, 
			const CString& iFileName);

private:
	CStringPtrList  mUserDirs;   //用户目录列表
	CStringPtrList  mLibDirs;    //库目录列表
	CMapStringToPtr mPageMap;    //已解析的文件映射表

	UNIT_TEST(CPages)
};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -