GME
13
|
00001 //############################################################################################################################################### 00002 // 00003 // Object Constraint Language Generic Manager 00004 // GMESyntacticSemanticDialog.h 00005 // 00006 //############################################################################################################################################### 00007 00008 #if !defined(AFX_GMESYNTACTICSEMANTICDIALOG_H__317C600D_17A5_449C_9672_F87AF57491E9__INCLUDED_) 00009 #define AFX_GMESYNTACTICSEMANTICDIALOG_H__317C600D_17A5_449C_9672_F87AF57491E9__INCLUDED_ 00010 00011 #if _MSC_VER > 1000 00012 #pragma once 00013 #endif // _MSC_VER > 1000 00014 00015 #include "GMEConstraintEx.h" 00016 00017 //############################################################################################################################################## 00018 // 00019 // C L A S S : CSyntacticSemanticDialog <<< + CDialog 00020 // 00021 //============================================================================================================================================== 00022 // 00023 // D E S C R I P T I O N : 00024 // 00025 //############################################################################################################################################## 00026 00027 class CSyntacticSemanticDialog : public CDialog 00028 { 00029 00030 // D I A L O G E X T E N S I O N B Y I M P L E M E N T O R B E G I N 00031 // ============================================================ 00032 00033 private : 00034 CImageList m_lstErrorImages; 00035 CImageList m_lstConstraintImages; 00036 CImageList m_lstLineImages; 00037 OclGme::ConstraintFunctionVector m_vecConstraintFunctions; 00038 OclGme::ConstraintVector m_vecConstraints; 00039 int m_iSelected; 00040 int m_iSelectedError; 00041 00042 public : 00043 void AddItem( const OclGme::SpConstraint& item ); 00044 void AddItem( const OclGme::SpConstraintFunction& item ); 00045 00046 private : 00047 void SelectConstraint( bool bNext ); 00048 void SelectError( bool bNext ); 00049 void GetConstraintRow( int iPos, int& eType, CString& strContext, CString& strName ); 00050 void AddConstraintRow( int iPos ); 00051 void DisplayConstraintItem(); 00052 void DisplayErrorItem(); 00053 void SortConstraints( int iColumn ); 00054 static int CALLBACK CompareConstraint( LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort ); 00055 00056 // D I A L O G E X T E N S I O N B Y I M P L E M E N T O R E N D 00057 // ============================================================ 00058 00059 // Construction 00060 public: 00061 CSyntacticSemanticDialog(CWnd* pParent = NULL); // standard constructor 00062 00063 // Dialog Data 00064 //{{AFX_DATA(CSyntacticSemanticDialog) 00065 enum { IDD = IDD_SYNTAX_SEMANTIC_DIALOG }; 00066 CListCtrl m_lstErrors; 00067 CListCtrl m_lstConstraints; 00068 CListCtrl m_lstExpression; 00069 CStatic m_lblGeneralMessage; 00070 CStatic m_imgLarge; 00071 CButton m_btnClose; 00072 //}}AFX_DATA 00073 00074 00075 // Overrides 00076 // ClassWizard generated virtual function overrides 00077 //{{AFX_VIRTUAL(CSyntacticSemanticDialog) 00078 protected: 00079 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 00080 //}}AFX_VIRTUAL 00081 00082 // Implementation 00083 protected: 00084 00085 // Generated message map functions 00086 //{{AFX_MSG(CSyntacticSemanticDialog) 00087 virtual BOOL OnInitDialog(); 00088 afx_msg void OnClickClose(); 00089 afx_msg void OnKeyDownConstraints(NMHDR* pNMHDR, LRESULT* pResult); 00090 afx_msg void OnKeyDownErrors(NMHDR* pNMHDR, LRESULT* pResult); 00091 afx_msg void OnClickErrors(NMHDR* pNMHDR, LRESULT* pResult); 00092 afx_msg void OnClickConstraintsColumn(NMHDR* pNMHDR, LRESULT* pResult); 00093 afx_msg void OnClickConstraints(NMHDR* pNMHDR, LRESULT* pResult); 00094 //}}AFX_MSG 00095 DECLARE_MESSAGE_MAP() 00096 }; 00097 00098 //{{AFX_INSERT_LOCATION}} 00099 // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 00100 00101 #endif // !defined(AFX_GMESYNTACTICSEMANTICDIALOG_H__317C600D_17A5_449C_9672_F87AF57491E9__INCLUDED_)