|
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//
//=============================================================================//
// SwitchProps.cpp : implementation file
//
#include "stdafx.h"
#include "UI.h"
#include "SwitchProps.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__; #endif
/////////////////////////////////////////////////////////////////////////////
// CSwitchProps dialog
CSwitchProps::CSwitchProps(CWnd* pParent /*=NULL*/) : CPropertyPage(CSwitchProps::IDD), m_persistDefall("AllSwitchesDefault"), m_persistDisplayMM2("DefaultMM2"), m_persistDisplayStartupInfo("DefaultStartupInfo"), m_persistPersistPlayerStats("DefaultPersistPlayerStats"), m_persistUseSupportDir("DefaultUseSupportDir"), m_persistElimPlayers("DefaultElimPlayers"), m_persistElimDays("DefaultElimDays"), m_persistPause("DefaultPause"), m_persistPauseSecs("DefaultPauseSecs") { //{{AFX_DATA_INIT(CSwitchProps)
//}}AFX_DATA_INIT
m_psp.dwFlags &= ~PSP_HASHELP; alreadyAcknowledged=false; }
void CSwitchProps::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSwitchProps)
DDX_Control(pDX, IDC_STATIC2, m_OnlyHereToBeDisabledToo); DDX_Control(pDX, IDC_STATICLBL, m_OnlyHereToBeDisabled); DDX_Control(pDX, IDC_PAUSE, m_Pause); DDX_Control(pDX, IDC_PAUSESECS, m_PauseSecs); DDX_Control(pDX, IDC_DEFALL, m_Defall); DDX_Control(pDX, IDC_STARTUPINFO, m_DisplayStartupInfo); DDX_Control(pDX, IDC_ELIMDAYS, m_elimDays); DDX_Control(pDX, IDC_ELIMINATEOLDPLRS, m_ElimOldPlrs); DDX_Control(pDX, IDC_USESUPPORT, m_UseSupportDir); DDX_Control(pDX, IDC_PLRPERSIST, m_PersistPlayerStats); DDX_Control(pDX, IDC_DISPLAYMM2, m_DisplayMM2); //}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSwitchProps, CDialog) //{{AFX_MSG_MAP(CSwitchProps)
ON_BN_CLICKED(IDC_DEFALL, OnDefall) ON_BN_CLICKED(IDC_PLRPERSIST, OnPlrpersist) //}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSwitchProps message handlers
#include "propsht.h"
BOOL CSwitchProps::OnKillActive() { //call superclass
BOOL bRes=this->CPropertyPage::OnKillActive(); m_persistDefall=m_Defall.GetCheck(); m_persistPause=theApp.pause=m_Pause.GetCheck(); char buf[100]; m_PauseSecs.GetWindowText(buf,100); m_persistPauseSecs=theApp.pauseSecs=atoi(buf);
m_persistDisplayMM2=theApp.displayMM2=m_DisplayMM2.GetCheck()==1; m_persistPersistPlayerStats=theApp.persistPlayerStats=m_PersistPlayerStats.GetCheck()==1; m_persistUseSupportDir=theApp.useSupportDir=m_UseSupportDir.GetCheck()==1; m_persistDisplayStartupInfo=theApp.displayStartupInfo=m_DisplayStartupInfo.GetCheck()==1; m_persistElimPlayers=theApp.elimOldPlayers=m_ElimOldPlrs.GetCheck()==1; m_elimDays.GetWindowText(buf,100); m_persistElimDays=theApp.elimDays=atoi(buf); return bRes;
}
BOOL CSwitchProps::OnSetActive() {
//call superclass
BOOL bRes=this->CPropertyPage::OnSetActive();
if (theApp.FirstEverTimeRun && !alreadyAcknowledged) { alreadyAcknowledged=true; m_persistDefall=1; m_Defall.SetCheck(1); OnDefall(); return bRes; } bool temp; temp=m_persistDefall.toBool(); m_Defall.SetCheck(temp);
temp=theApp.pause=m_persistPause.toBool(); m_Pause.SetCheck(temp);
theApp.pauseSecs=m_persistPauseSecs.toInt(); m_PauseSecs.SetWindowText(m_persistPauseSecs.toChars());
temp=theApp.displayMM2=m_persistDisplayMM2.toBool(); m_DisplayMM2.SetCheck(temp); temp=theApp.persistPlayerStats=m_persistPersistPlayerStats.toBool(); m_PersistPlayerStats.SetCheck(temp); temp=theApp.useSupportDir=m_persistUseSupportDir.toBool(); m_UseSupportDir.SetCheck(temp);
temp=theApp.displayStartupInfo=m_persistDisplayStartupInfo.toBool(); m_DisplayStartupInfo.SetCheck(temp); temp=theApp.elimOldPlayers=m_persistElimPlayers.toBool(); m_ElimOldPlrs.SetCheck(temp); theApp.elimDays=m_persistElimDays.toInt(); m_elimDays.SetWindowText(m_persistElimDays.toChars());
OnDefall(); OnPlrpersist(); return bRes;
}
void CSwitchProps::OnDefall() { bool defall=m_Defall.GetCheck()!=0; if (defall) { m_DisplayMM2.SetCheck(0); m_DisplayStartupInfo.SetCheck(0); m_elimDays.SetWindowText("7"); m_ElimOldPlrs.SetCheck(1); m_Pause.SetCheck(1); m_PauseSecs.SetWindowText("2"); m_PersistPlayerStats.SetCheck(1); m_UseSupportDir.SetCheck(1);
} m_DisplayMM2.EnableWindow(!defall); m_DisplayStartupInfo.EnableWindow(!defall); m_elimDays.EnableWindow(!defall); m_ElimOldPlrs.EnableWindow(!defall); m_Pause.EnableWindow(!defall); m_PauseSecs.EnableWindow(!defall); m_PersistPlayerStats.EnableWindow(!defall); m_UseSupportDir.EnableWindow(!defall); m_OnlyHereToBeDisabled.EnableWindow(!defall); m_OnlyHereToBeDisabledToo.EnableWindow(!defall); }
void CSwitchProps::OnPlrpersist() { m_ElimOldPlrs.EnableWindow(m_PersistPlayerStats.GetCheck() && !m_Defall.GetCheck()); m_elimDays.EnableWindow(m_PersistPlayerStats.GetCheck() && !m_Defall.GetCheck()); m_OnlyHereToBeDisabledToo.EnableWindow(m_PersistPlayerStats.GetCheck() && !m_Defall.GetCheck()); }
|