/* * Arcanum Editor - ROM area editor * Copyright (C) 1999 Lucas Wall <kthulhu@usa.net> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * * If you make changes to the source and want to make the public you can * mail the diferences to me <kthulhu@usa.net> and I'll add them to the * main distribution. Of course your name will be added to the program with * information about the changes you made. * * * Packed on Thu Aug 19 03:02:22 1999 * */ /* * File: MobProgEd.cpp * * Changes: * * 19/08/99 Lucas Wall <kthulhu@usa.net> * First source release. Its quite messy and has no * comments. I never planed to release the source code... :-) * */ // MobProgEd.cpp : implementation file // #include "stdafx.h" #include "arcaed.h" #include "MobProgEd.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CMobProgEd dialog CMobProgEd::CMobProgEd(CWnd* pParent /*=NULL*/) : CDialog(CMobProgEd::IDD, pParent) { //{{AFX_DATA_INIT(CMobProgEd) m_Trigphrase = _T(""); m_Vnum = 0; //}}AFX_DATA_INIT } void CMobProgEd::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CMobProgEd) DDX_Control(pDX, IDOK, m_Ok); DDX_Control(pDX, IDC_MOBPROGED_VNUM_SPIN, m_VnumSpin); DDX_Control(pDX, IDC_MOBPROGED_TYPE, m_Type); DDX_Text(pDX, IDC_MOBPROGED_TRIGPHRASE, m_Trigphrase); DDX_Text(pDX, IDC_MOBPROGED_VNUM, m_Vnum); DDV_MinMaxInt(pDX, m_Vnum, 0, 32767); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CMobProgEd, CDialog) //{{AFX_MSG_MAP(CMobProgEd) ON_CBN_SELCHANGE(IDC_MOBPROGED_TYPE, OnSelchangeMobprogedType) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CMobProgEd message handlers BOOL CMobProgEd::OnInitDialog() { CDialog::OnInitDialog(); int i, index; m_VnumSpin.SetBuddy( GetDlgItem( IDC_MOBPROGED_VNUM ) ); m_VnumSpin.SetRange( 0, 32767 ); m_Ok.EnableWindow( FALSE ); for ( i = 0; i < tables.m_mobprog_trigs.GetSize(); i++ ) { index = m_Type.AddString( tables.m_mobprog_trigs[i]->m_text ); ASSERT( index != CB_ERR && index != CB_ERRSPACE ); m_Type.SetItemData( index, i ); if ( m_seltype == tables.m_mobprog_trigs[i]->m_text ) { m_Type.SetCurSel( index ); m_Ok.EnableWindow(); } } return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CMobProgEd::OnSelchangeMobprogedType() { int index; if ( ( index = m_Type.GetCurSel() ) == CB_ERR ) return; m_Ok.EnableWindow(); m_seltype = tables.m_mobprog_trigs[m_Type.GetItemData( index )]->m_text; }