GME  13
GMEConstraintPropertiesDialog.h
Go to the documentation of this file.
00001 //###############################################################################################################################################
00002 //
00003 //      Object Constraint Language Generic Manager
00004 //      GMEConstraintPropertiesDialog.h
00005 //
00006 //###############################################################################################################################################
00007 
00008 #ifndef GMEConstraintPropertiesDialog_h
00009 #define GMEConstraintPropertiesDialog_h
00010 
00011 #include "GMEConstraintEx.h"
00012 
00013 namespace OclGmeCM
00014 {
00015 class CConstraintBrowserDialog;
00016 
00017 //##############################################################################################################################################
00018 //
00019 //      C L A S S : CIdentityPage <<< + CDialog
00020 //
00021 //==============================================================================================================================================
00022 //
00023 //      D E S C R I P T I O N :
00024 //
00025 //##############################################################################################################################################
00026 
00027 class CIdentityPage : public CDialog
00028 {
00029 // Construction
00030 public:
00031         CIdentityPage( CWnd* pParent = NULL );   // standard constructor
00032 
00033 // Dialog Data
00034         //{{AFX_DATA(CIdentityPage)
00035         enum { IDD = IDD_PROPERTIES_IDENTITY_PAGE };
00036         CEdit   m_edtDefinition;
00037         CEdit                   m_edtName;
00038         CEdit                   m_edtDescription;
00039         CEdit                   m_edtDefault;
00040         CComboBox       m_cmbPriority;
00041         CComboBox       m_cmbDepth;
00042         //}}AFX_DATA
00043 
00044 
00045 // Overrides
00046         // ClassWizard generated virtual function overrides
00047         //{{AFX_VIRTUAL(CIdentityPage)
00048         public:
00049         virtual BOOL PreTranslateMessage( MSG* pMsg );
00050         protected:
00051         virtual void DoDataExchange( CDataExchange* pDX );    // DDX/DDV support
00052         //}}AFX_VIRTUAL
00053 
00054 // Implementation
00055 protected:
00056 
00057         // Generated message map functions
00058         //{{AFX_MSG(CIdentityPage)
00059         //}}AFX_MSG
00060         DECLARE_MESSAGE_MAP()
00061 };
00062 
00063 //##############################################################################################################################################
00064 //
00065 //      C L A S S : CExpressionPage <<< + CDialog
00066 //
00067 //==============================================================================================================================================
00068 //
00069 //      D E S C R I P T I O N :
00070 //
00071 //##############################################################################################################################################
00072 
00073 class CExpressionPage : public CDialog
00074 {
00075 // Construction
00076 public:
00077         CExpressionPage(CWnd* pParent = NULL);   // standard constructor
00078 
00079 // Dialog Data
00080         //{{AFX_DATA(CExpressionPage)
00081         enum { IDD = IDD_PROPERTIES_EXPRESSION_PAGE };
00082         CComboBoxEx     m_cmbContext;
00083         CEdit   m_edtExpression;
00084         //}}AFX_DATA
00085 
00086 
00087 // Overrides
00088         // ClassWizard generated virtual function overrides
00089         //{{AFX_VIRTUAL(CExpressionPage)
00090         public:
00091         virtual BOOL PreTranslateMessage(MSG* pMsg);
00092         protected:
00093         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
00094         //}}AFX_VIRTUAL
00095 
00096 // Implementation
00097 protected:
00098 
00099         // Generated message map functions
00100         //{{AFX_MSG(CExpressionPage)
00101                 // NOTE: the ClassWizard will add member functions here
00102         //}}AFX_MSG
00103         DECLARE_MESSAGE_MAP()
00104 };
00105 
00106 //##############################################################################################################################################
00107 //
00108 //      C L A S S : CEventPage <<< + CDialog
00109 //
00110 //==============================================================================================================================================
00111 //
00112 //      D E S C R I P T I O N :
00113 //
00114 //##############################################################################################################################################
00115 
00116 class CEventPage : public CDialog
00117 {
00118 // Construction
00119 public:
00120         CEventPage(CWnd* pParent = NULL);   // standard constructor
00121 
00122 // Dialog Data
00123         //{{AFX_DATA(CEventPage)
00124         enum { IDD = IDD_PROPERTIES_EVENT_PAGE };
00125                 // NOTE: the ClassWizard will add data members here
00126         //}}AFX_DATA
00127 
00128 
00129 // Overrides
00130         // ClassWizard generated virtual function overrides
00131         //{{AFX_VIRTUAL(CEventPage)
00132         public:
00133         virtual BOOL PreTranslateMessage(MSG* pMsg);
00134         protected:
00135         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
00136         //}}AFX_VIRTUAL
00137 
00138 // Implementation
00139 protected:
00140 
00141         // Generated message map functions
00142         //{{AFX_MSG(CEventPage)
00143                 // NOTE: the ClassWizard will add member functions here
00144         //}}AFX_MSG
00145         DECLARE_MESSAGE_MAP()
00146 };
00147 
00148 //##############################################################################################################################################
00149 //
00150 //      C L A S S : CConstraintPropertiesDialog <<< + CDialog
00151 //
00152 //==============================================================================================================================================
00153 //
00154 //      D E S C R I P T I O N :
00155 //
00156 //##############################################################################################################################################
00157 
00158 class CConstraintPropertiesDialog : public CDialog
00159 {
00160 
00161 // 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
00162 // ============================================================
00163 
00164         private :
00165                 CIdentityPage                           m_pageIdentity;
00166                 CExpressionPage                                 m_pageExpression;
00167                 CEventPage                                      m_pageEvent;
00168 
00169                 OclGme::SpConstraint                    m_spConstraintIn;
00170                 CConstraintBrowserDialog*       m_pDialog;
00171 
00172                 CImageList                                      m_lstImages;
00173         public :
00174                 OclGme::SpConstraint            m_spConstraintOut;
00175 
00176         private :
00177                 std::map<int,int> GetEventMap() const;
00178 
00179         private :
00180                 void FillContextCombo( objtype_enum eType );
00181                 int InsertItem( objtype_enum eType, CString& strItem );
00182                 CString GetItem( int iPos );
00183                 int FindItem( const CString& strItem );
00184                 void PlacePage( CDialog& page );
00185 
00186 // 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
00187 // ============================================================
00188 
00189 // Construction
00190 public:
00191         CConstraintPropertiesDialog( CConstraintBrowserDialog* pDialog, OclGme::SpConstraint spConstraint, CWnd* pParent = NULL);   // standard constructor
00192 
00193 // Dialog Data
00194         //{{AFX_DATA(CConstraintPropertiesDialog)
00195         enum { IDD = IDD_PROPERTIES_DIALOG };
00196         CTabCtrl        m_tabPages;
00197         CButton m_btnOK;
00198         CButton m_btnCancel;
00199         //}}AFX_DATA
00200 
00201 
00202 // Overrides
00203         // ClassWizard generated virtual function overrides
00204         //{{AFX_VIRTUAL(CConstraintPropertiesDialog)
00205         protected:
00206         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
00207         //}}AFX_VIRTUAL
00208 
00209 // Implementation
00210 protected:
00211 
00212         // Generated message map functions
00213         //{{AFX_MSG(CConstraintPropertiesDialog)
00214         virtual BOOL OnInitDialog();
00215         afx_msg void OnClickCancel();
00216         afx_msg void OnClickOK();
00217         afx_msg void OnSelectionChangeTab(NMHDR* pNMHDR, LRESULT* pResult);
00218         //}}AFX_MSG
00219         DECLARE_MESSAGE_MAP()
00220 };
00221 
00222 }; // namespace OclGmeCM
00223 
00224 #endif // GMEConstraintPropertiesDialog_h