00001 #if !defined(AFX_ASPECTSPECDLG_H__A771B477_7ECF_41F9_8FCD_1557C770B87C__INCLUDED_)
00002 #define AFX_ASPECTSPECDLG_H__A771B477_7ECF_41F9_8FCD_1557C770B87C__INCLUDED_
00003
00004 #if _MSC_VER > 1000
00005 #pragma once
00006 #endif // _MSC_VER > 1000
00007
00008 #include <afxtempl.h>
00009 #include <AFXDLGS.H>
00010
00011 #include "AspectPage.h"
00012
00013 class CAspectPage;
00014 class CAspectSpecDlg;
00015 extern CAspectSpecDlg *theAspectDlg;
00016
00017 typedef CTypedPtrList<CPtrList, CAspectPage*> CAspectPageList;
00018
00019
00020
00021
00023
00024
00025 class CAspectSpecDlg : public CPropertySheet
00026 {
00027
00028
00029 public:
00030 CAspectSpecDlg(LPCTSTR pszCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);
00031
00032
00033 public:
00034
00035 CAspectPageList aspectPages;
00036 CStringList aspectNames;
00037 int lastID;
00038 int countPages;
00039
00040
00041
00042 protected:
00043 BOOL m_bNeedInit;
00044 CRect m_rCrt;
00045 int m_nMinCX;
00046 int m_nMinCY;
00047
00048
00049 public:
00050
00051
00052
00053
00054 public:
00055 virtual BOOL OnInitDialog();
00056 virtual BOOL OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult);
00057
00058
00059
00060 public:
00061 void GetEntry(int entryNum, CString &roleName, CString &kindAspect, CString &isPrimary, const void * &ptr);
00062 int AddEntry(CString aspectName, CString roleName, CString kindAspect, CString primaryAspect, const void * ptr);
00063 void GetAspects(CStringList& aspects);
00064 void GetAspects(int rowID, CStringList& aspects);
00065 virtual ~CAspectSpecDlg();
00066
00067
00068 protected:
00069
00070
00071 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
00072 afx_msg void OnSize(UINT nType, int cx, int cy);
00073 afx_msg void OnGetMinMaxInfo(MINMAXINFO* MinMaxInfo);
00074 afx_msg LRESULT OnTabPageSelectionChange(WPARAM wParam, LPARAM lParam);
00075
00076 DECLARE_MESSAGE_MAP()
00077 };
00078
00080
00081
00082
00083
00084 #endif // !defined(AFX_ASPECTSPECDLG_H__A771B477_7ECF_41F9_8FCD_1557C770B87C__INCLUDED_)