📄 pages.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 + -