Files
Cyd 2b8ca921cb Initial full mirror of c:\VWE (source + assets + toolchain + outputs) via Git LFS
Complete disaster-recovery snapshot: engine/game source, game data assets,
VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive.
Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false,
no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
2026-06-24 21:28:16 -05:00

111 lines
2.4 KiB
C++

// MiscCamProp.cpp : implementation file
//
#include "stdafx.h"
#include "TCTb.h"
#include "MiscCamProp.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CMiscCamProp property page
IMPLEMENT_DYNCREATE(CMiscCamProp, CPropertyPage)
CMiscCamProp::CMiscCamProp() : CCamInfoPage(CMiscCamProp::IDD)
{
//{{AFX_DATA_INIT(CMiscCamProp)
m_FOVSli = 0;
m_FarClip = 0.0f;
m_NearClip = 0.0f;
m_FOV = 0;
//}}AFX_DATA_INIT
}
CMiscCamProp::~CMiscCamProp()
{
}
void CMiscCamProp::DoDataExchange(CDataExchange* pDX)
{
CCamInfoPage::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CMiscCamProp)
DDX_Control(pDX, IDC_FOVTEXT, m_FOVText);
DDX_Control(pDX, IDC_FOVSLI, m_FOVSliCtrl);
DDX_Slider(pDX, IDC_FOVSLI, m_FOVSli);
DDX_Text(pDX, IDC_FARCLIP, m_FarClip);
DDX_Text(pDX, IDC_NEARCLIP, m_NearClip);
DDX_Text(pDX, IDC_FOVTEXT, m_FOV);
DDV_MinMaxInt(pDX, m_FOV, 1, 180);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CMiscCamProp, CCamInfoPage)
//{{AFX_MSG_MAP(CMiscCamProp)
ON_WM_HSCROLL()
ON_EN_CHANGE(IDC_FARCLIP, OnChangeFarclip)
ON_EN_CHANGE(IDC_NEARCLIP, OnChangeNearclip)
ON_EN_CHANGE(IDC_FOVTEXT, OnChangeFovtext)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMiscCamProp message handlers
void CMiscCamProp::DataIn()
{
m_FOVSliCtrl.SetRange(1,180);
m_NearClip=CamInfo->NearClip;
m_FarClip=CamInfo->FarClip;
m_FOV=(int)(CamInfo->FOV*Degrees_Per_Radian);
m_FOVSli=(int)(CamInfo->FOV*Degrees_Per_Radian);
}
void CMiscCamProp::DataOut()
{
if(m_FarClip<m_NearClip) m_FarClip=m_NearClip;
CamInfo->FOV=m_FOV*Radians_Per_Degree;
CamInfo->NearClip=m_NearClip;
CamInfo->FarClip=m_FarClip;
}
void CMiscCamProp::UpdateControlStates()
{
}
void CMiscCamProp::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
CString tstr;
if(pScrollBar==(CScrollBar* )&m_FOVSliCtrl)
{
tstr.Format("%i",m_FOVSliCtrl.GetPos(),0xF8);
m_FOVText.SetWindowText(tstr);
CamInfo->FOV=m_FOVSliCtrl.GetPos()*Radians_Per_Degree;
m_FOV=m_FOVSliCtrl.GetPos();
}
CCamInfoPage::OnHScroll(nSBCode, nPos, pScrollBar);
}
void CMiscCamProp::OnChangeFarclip()
{
DelayedValidate();
}
void CMiscCamProp::OnChangeNearclip()
{
DelayedValidate();
}
void CMiscCamProp::OnChangeFovtext()
{
DelayedValidate();
}