www.pudn.com > c02 vc6.rar > C02IDE.h


// C02IDE.h : main header file for the C02IDE application 
// 
/* 
  
                             
作者概况 
姓  名:刘黎明 
性  别:男 
学    历:在读研究生 
学    位:学士 
毕业院校:北京科技大学 
专  业:计算机科学与技术 
出生年月:1980年 10月24日 
健康状况:良好 
身    高:1.77米 
体    重:63公斤 
毕业地点:北京 
出生地点:湖北随州 
电子邮件:liulimi0893@sina.com 
联系电话:13691330960 
通信地址:北京科技大学638# 
邮    编:100083 
特    长: 算法设计,组织,管理,交际,书法,写作,善于接受理解新概念新事物,容易适应新环境 
     性格描述: 谦虚谨慎,踏实稳重,待人真诚,喜欢挑战 
教育背景 
1987.7-1993.7 随州市南郊区吴家桥小学  
1993.9 -1996.7 随州市岁丰学校 
1996.9-1999.7 就读于湖北省随州市第二高级中学 
1999.9-2003.7就读于北京科技大学信息工程学院计算机科学与技术专业 
2003.9—今    北京科技大学计算机系系统结构专业硕士研究生 
英语水平:具备比较熟练的听说读写能力,已通过英语四级和六级考试(可提供证书) 
    技术背景 
精通:Visual C++(MFC), .NET C++, 
熟悉:.NET C# ,.NET ASP 
初级:Delphi,Jbuider,Oracle 
           
工作经验 
熟悉vc下的MFC编程,曾参加C02IDE(c02语言集成开发环境)的开发,负责用户界面和编辑器的设计,对编译器和调试器有一定的了解。 
    获奖情况 
1995年,获学科综合竞赛市一等奖(可提供证书) 
1998年,获数学联赛市三等奖(可提供证书), 
物理奥林匹克省三等奖(可提供证书), 
全国英语能力竞赛优胜奖(可提供证书) 
1999年,获新生入学一等奖 
2000年,获人民奖学金   
2001年,获团委社团工作先进个人称号(可提供证书) 
       获人民奖学金 
2002年,获‘校三好学生‘称号(可提供证书) 
      获人民奖学金     
 
   社会活动 
1999年 参加新生文艺汇演‘七月火把节‘舞蹈,一等奖 
2000年 加入ibeike 团队技术部 
2001年 第一届院健身运动会上任班级供稿员  
      参加计算机技能大赛 
      参加参加校庆书法大赛 
      作为候选人参加院学生会副主席竞选 
任同心社宣传部部长,多次组织宣传活动 
    2003年 班长,新生辅导员 
    2004年 历任校研究生会宣传部长,办公室主任,副主席 
   
*/ 
#if !defined(AFX_DEVSTUDIOUIDEMO_H__A70BFFA6_2939_11D3_873E_000000000000__INCLUDED_) 
#define AFX_DEVSTUDIOUIDEMO_H__A70BFFA6_2939_11D3_873E_000000000000__INCLUDED_ 
 
#if _MSC_VER >= 1000 
#pragma once 
#endif // _MSC_VER >= 1000 
 
#ifndef __AFXWIN_H__ 
	#error include 'stdafx.h' before including this file for PCH 
#endif 
#include     
#include "resource.h"     // main symbols 
#include "C02IDEView.h" 
#include "TabClassDoc.h" 
#include "TabFileView.h" 
 
 
extern int i_usermode;//用户模式:1,编辑 2,编译 3,调试. 
 
extern int i_newblankfile;//new file 个数 
  //该结构保存一个函数信息 
typedef struct FuncStruct 
{ 
	// 存放函数名 
  CString str_funcname;    
  //存放函数声明位置的行索引 
  int      n_shengming; 
  //存放函数定义位置的行索引 
  int       n_dingyi; 
 
  	 //要添加函数返回值类型 
     CString str_functype; 
	 //要添加函数的参数个数 
     int     canshunumber; 
     //addfuncinfo结构的对象数组,函数的参数信息 
     CObArray canshuinfo;        
 
} funcStru; 
 
//该结构保存一个断点信息 
typedef struct CompStruct 
{ 
	//存放断点的名称 
  CString str_breakname; 
   	//存放断点的位置的行索引 
  int      n_breakline; 
 
} comStru; 
typedef struct ErrStruct 
{ 
	//存放 
// CString str_breakname; 
   	//存放 
 
	CMDIChildWnd *m_pChildWnd;  
	int     i_errline; 
 
} errstru; 
 extern  CObArray oa_error;    
//该结构保存一个文件的相关信息 
//typedef struct 
typedef struct FileList 
{ 
	CString str_proname; 
	//保存文件名 
    CString str_filename; 
	//保存子窗口对象指针 
    CCJMDIChildWnd *m_pChildWnd; 
 
	//保存一个树形目录的项	 
	HTREEITEM t_fileitem; 
	//CompStruct结构的对象数组 
	CObArray compileinfstru;    
	//存储funcStru类型的对象数组 
	CObArray funcinfstru; 
 
	//存储AddFunc类型的对象数组 
	CObArray oa_funcinfstru; 
 
 
 
} fileStru; 
 
//该结构保存一个项目的相关信息 
typedef struct ProjectList 
{     
	//保存项目名 
	CString str_projectname; 
    // 存储fileStru 类型的 对象数组 
    CObArray proinfstru;        
} proStru; 
  
//保存ProjectList结构的对象数组, 保存当前项目,文件,函数信息 
extern     CObArray   projectinfo;    
 
 
 
  //保存当前操作的文件指针 
	extern  FileList * m_pfile;     
 
  
//保存添加的函数的一个参数的信息 
typedef struct CanShu 
{    
	//参数名 
	CString str_canshuname; 
    //参数类型 
	CString str_canshutype;       // 存储fileStru 类型 
} addfuncinfo; 
 
//保存添加的函数的相关信息 
typedef struct AddFunc 
{     
     //要添加函数的文件索引 
	 int     n_addfileno; 
	 //添加的函数名 
     CString str_funcname; 
	 //要添加函数返回值类型 
     CString str_functype; 
	 //要添加函数的参数个数 
     int     canshunumber; 
     //addfuncinfo结构的对象数组,函数的参数信息 
     CObArray canshuinfo;         
} funcadd;                    
 
  // 指向AddFunc的指针,保存要添加的函数的信息  
extern struct AddFunc *functionadd;      
 
//一个树形节点的信息   
struct fileitem 
	{ 
	    //节点的索引 
		int n_nodenumber; 
		//节点对应的CTREECTRL的一个项 
		HTREEITEM titem; 
		//节点对应的子窗口指针 
		CMDIChildWnd *m_pchildf; 
	}; 
 
//保存当前所有打开的文件的树形节点信息,在树形目录中的位置信息 
extern  fileitem fileitemarray[30];   
 
//正在操作的文件编号   
extern int n_filenumber; 
   
 //正在操作的函数编号        
extern int n_funcnumber; 
 
//所加函数的参数个数         
extern	int allcanshunum;     
 
//正在处理的参数索引   
extern	 int addcanshunum; 
 
//文件函数树形目录文档指针 
extern	CTabFileDoc*		m_pDocFile;   
 
//文件断点树形目录文档指针 
extern	CTabClassDoc*		m_pDocClass; 
  
//当前子窗口将要定位光标的行索引 ,查找函数 及定位函数时使用        
  extern int gotoline;         
 
//保存编辑控件中当前选择的信息 
  struct cursel 
  { 
	  //编辑控件中当前选择的起始字符的索引 
	  int n_min; 
	   //编辑控件中当前选择的结束字符的索引 
	  int n_max; 
  }; 
 
  //定义一个cursel类型的变量 
    extern cursel curselpos; 
 
	//当前查找字符串 
	extern   CString findstring; 
 
	//当前查找位置的行信息 
    extern   int findstringcurhang; 
	//当前查找位置的列信息 
	extern   int findstringcurlie; 
 
 
	//全文查找或多文件查找时使用的保存查找结果的结构 
	struct SearchInf 
	{ 
		//文件索引 
		int n_fileno; 
		//文件名 
		CString str_filenm; 
        //文件缩在窗口的指针 
		CMDIChildWnd *m_pchildf; 
		//字符串缩在行 
		int n_lineno; 
		//字符串缩在列 
		int n_rowno; 
		////字符串缩在行的文本信息 
		CString str_linetext; 
		 
	}; 
   //定义一个SearchInf结构的变量 
	extern     CObArray   a_searchinfo;   
 
	extern   int m_nItem; 
    
	extern  int m_nSubItem; 
 
	extern CMapPtrToPtr m_mappro; 
  
///////////////////////////////////////////////////////////////////////////// 
// CC02IDEApp: 
// See C02IDE.cpp for the implementation of this class 
// 
 
class CMainFrame; 
class CC02IDEApp : public CWinApp 
{ 
public: 
	CC02IDEApp(); 
 
     
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CC02IDEApp) 
	public: 
	virtual BOOL InitInstance(); 
	virtual int ExitInstance(); 
	//}}AFX_VIRTUAL 
 
// Implementation 
	CMainFrame* m_pMainFrame; 
//	CMainFrame*			m_pMainFrame; 
	CMultiDocTemplate*	m_pDocTemplate; 
	CMultiDocTemplate*	m_pDocWorkspTemplate; 
	CFrameWnd*			m_pChildFrame; 
	BOOL                 m_bAutoReturn; 
 
	//{{AFX_MSG(CC02IDEApp) 
	afx_msg void OnProjectNew(); 
	afx_msg void OnFileNew(); 
	afx_msg void OnFileNewC02(); 
	afx_msg void OnAppAbout(); 
	afx_msg void OnFileOpen(); 
	afx_msg void OnFilePrintSetup(); 
	afx_msg void OnFileSaveAs(); 
	afx_msg void OnFileSaveAll(); 
	afx_msg void OnUpdateFileMruFile1(CCmdUI* pCmdUI); 
	afx_msg BOOL OnOpenRecentFileEx(UINT nID); 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
	virtual BOOL DoPromptFileName(CString& fileName, UINT nIDSTitle, DWORD lFlags, 
                              BOOL bOpenFileDialog, CDocTemplate* pTemplate); 
	 
}; 
 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Developer Studio will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_DEVSTUDIOUIDEMO_H__A70BFFA6_2939_11D3_873E_000000000000__INCLUDED_)