/* ** AreaEditor - a program for editing SMAUG and ROM area files. ** Author: Nick Gammon ** http://www.gammon.com.au/ ** See Copyright Notice at the end of AreaEditor.h */ // EditAffectDlg.cpp : implementation file // #include "stdafx.h" #include "AreaEditor.h" #include "EditAffectDlg.h" #include "defaults.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CEditAffectDlg dialog CEditAffectDlg::CEditAffectDlg(CWnd* pParent /*=NULL*/) : CDialog(CEditAffectDlg::IDD, pParent) { //{{AFX_DATA_INIT(CEditAffectDlg) m_iFlags = 0; m_strDuration = _T(""); m_strModifier = _T(""); //}}AFX_DATA_INIT } void CEditAffectDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CEditAffectDlg) DDX_Control(pDX, IDC_TYPE, m_ctlType); DDX_Control(pDX, IDC_FLAGS, m_ctlFlags); DDX_Control(pDX, IDC_FLAG_MEANINGS, m_ctlFlagMeanings); DDX_Text(pDX, IDC_FLAGS, m_iFlags); DDX_Text(pDX, IDC_DURATION, m_strDuration); DDX_Text(pDX, IDC_MODIFIER, m_strModifier); //}}AFX_DATA_MAP if (pDX->m_bSaveAndValidate) { int i; if (!UnloadComboBox (m_ctlType, i)) { ::AfxMessageBox ("Please choose an affect type", MB_ICONSTOP); pDX->Fail(); } // end of no type chosen else m_iLocation = i; if (m_strDuration.IsEmpty ()) { ::AfxMessageBox ("Duration cannot be blank", MB_ICONSTOP); pDX->Fail(); } // end of no duration chosen if (m_strModifier.IsEmpty ()) { ::AfxMessageBox ("Modifier cannot be blank", MB_ICONSTOP); pDX->Fail(); } // end of no modifier chosen } else LoadComboBoxList (m_ctlType, ObjectAffectList, m_iLocation); } BEGIN_MESSAGE_MAP(CEditAffectDlg, CDialog) //{{AFX_MSG_MAP(CEditAffectDlg) ON_EN_CHANGE(IDC_FLAGS, OnChangeFlags) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CEditAffectDlg message handlers void CEditAffectDlg::OnChangeFlags() { CString strFlags; m_ctlFlags.GetWindowText (strFlags); int iFlag = atoi (strFlags); m_ctlFlagMeanings.SetWindowText (convert_affectflag (iFlag)); }