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

📄 project.h

📁 一个完整的编辑器的代码(很值得参考
💻 H
字号:

#ifndef __PROJECT_H__INCLUDED__
#define __PROJECT_H__INCLUDED__

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

#include "listex.h"

/////////////////////////////////////////////////////////////////////////////

#define PI_GROUP 0x0001
#define PI_FILE 0x0002
#define PI_ROOT 0x0004
#define PI_SUBITEM 0x0008

#define PR_MODIFIED 0x0001

struct CProjectItem;

typedef CListEx<CProjectItem*, CProjectItem*> CProjectItemList;

struct CProjectItem
  {
    CString sPath, sMidPath;
    DWORD dwType;
    CProjectItemList lstItems;
  };

#pragma warning (disable : 4512)
class CProject : public CObject
  {
    public :
      DECLARE_DYNAMIC (CProject)

      CProject ();
      virtual ~CProject ();

      CString MakePath (CProjectItem *pItem);
      virtual bool New ();
      virtual bool Open (LPCTSTR pszPath) = 0;
      virtual bool Save (LPCTSTR pszPath) = 0;

      void RemoveItems (POSITION pos);
      bool IsModified ();
      void SetModified (BOOL bModified = TRUE);

      CString sPath;
      CProjectItemList lstItems;
      DWORD dwFlags;
  };
#pragma warning (default : 4512)

extern CProject *g_pProject;

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.

#endif // __PROJECT_H__INCLUDED__

⌨️ 快捷键说明

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