Files
firestorm/Gameleap/code/mw4/Tools/ImageGrinder/FeatureLibView.cpp
T
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

156 lines
3.4 KiB
C++

// FeatureLibView.cpp : implementation file
//
#include "stdafx.h"
#include "imagegrinder.h"
#include "FeatureLibView.h"
/////////////////////////////////////////////////////////////////////////////
// CFeatureLibView
IMPLEMENT_DYNCREATE(CFeatureLibView, CView)
CFeatureLibView::CFeatureLibView()
{
DiagPanel=NULL;
MaxWid=-1;
}
CFeatureLibView::~CFeatureLibView()
{
if(DiagPanel) delete DiagPanel;
}
BEGIN_MESSAGE_MAP(CFeatureLibView, CView)
//{{AFX_MSG_MAP(CFeatureLibView)
ON_WM_SIZE()
ON_COMMAND(ID_FILE_EXPORT_FEATUREFILE, OnFileExportFeaturefile)
ON_COMMAND(ID_FILE_IMPORT_FEATURES, OnFileImportFeatures)
ON_COMMAND(ID_EDIT_SELECTUNUSEDFEATURES, OnEditSelectunusedfeatures)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CFeatureLibView drawing
void CFeatureLibView::OnDraw(CDC* pDC)
{
CDocument* pDoc = GetDocument();
}
/////////////////////////////////////////////////////////////////////////////
// CFeatureLibView diagnostics
#ifdef _DEBUG
void CFeatureLibView::AssertValid() const
{
CView::AssertValid();
}
void CFeatureLibView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CFeatureLibView message handlers
BOOL CFeatureLibView::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext)
{
// CMDIChildWnd::Create(NULL,"Feature Library",WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_CHILD,rectDefault,pParentWnd);
BOOL res;
res= CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext);
CRect rct;
DiagPanel=new CFeatureLibDiag;
res=DiagPanel->Create(CFeatureLibDiag::IDD,this);
ASSERT(res);
DiagPanel->GetWindowRect(&rct);
SetWindowPos(NULL,0,0,
rct.Width()+GetSystemMetrics(SM_CXSIZEFRAME)*2,
rct.Height()+GetSystemMetrics(SM_CXSIZEFRAME)+GetSystemMetrics(SM_CYCAPTION),
SWP_NOZORDER|SWP_NOMOVE);
DiagPanel->ShowWindow(SW_SHOW);
DiagPanel->SetView(this);
return res;
}
void CFeatureLibView::OnSize(UINT nType, int cx, int cy)
{
if(DiagPanel)
{
CRect sze;
DiagPanel->ResizeVert(cy);
DiagPanel->ResizeHor(cx);
if(MaxWid==-1)
{
CRect rct;
GetClientRect(rct);
DiagPanel->GetWindowRect(&rct);
MaxWid=rct.Width();
}
}
CView::OnSize(nType, cx, cy);
}
int CFeatureLibView::GetMaxWidth()
{
return MaxWid;
}
void CFeatureLibView::OnInitialUpdate()
{
CView::OnInitialUpdate();
ASSERT(DiagPanel);
DiagPanel->SetView(this);
}
void CFeatureLibView::OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint)
{
// TODO: Add your specialized code here and/or call the base class
DiagPanel->RefreshList();
}
void CFeatureLibView::OnFileExportFeaturefile()
{
CFileDialog dlg(FALSE,"igf","List.igf",NULL,"Feature List (*.igf)|*.igf||",NULL);
if(dlg.DoModal()==IDOK)
{
DiagPanel->SaveSelectedFeatures(dlg.GetPathName());
}
}
void CFeatureLibView::OnFileImportFeatures()
{
CFileDialog dlg(TRUE,NULL,NULL,NULL,"Feature List (*.igf)|*.igf||",NULL);
if(dlg.DoModal()==IDOK)
{
DiagPanel->LoadFeatures(dlg.GetPathName());
}
}
void CFeatureLibView::OnEditSelectunusedfeatures()
{
DiagPanel->SelectUnsed();
}