Serious-Engine/Sources/WorldEditor/DlgCreateVirtualDirectory.cpp
2016-03-11 18:20:51 -06:00

112 lines
3.1 KiB
C++

/* Copyright (c) 2002-2012 Croteam Ltd.
This program is free software; you can redistribute it and/or modify
it under the terms of version 2 of the GNU General Public License as published by
the Free Software Foundation
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.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
// DlgCreateVirtualDirectory.cpp : implementation file
//
#include "stdafx.h"
#include "DlgCreateVirtualDirectory.h"
#ifdef _DEBUG
#undef new
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgCreateVirtualDirectory dialog
CDlgCreateVirtualDirectory::CDlgCreateVirtualDirectory(CTString strOldName /*= ""*/,
CTString strTitle /*="Create virtual directory"*/, CWnd* pParent /*=NULL*/)
: CDialog(CDlgCreateVirtualDirectory::IDD, pParent)
{
m_strTitle = strTitle;
//{{AFX_DATA_INIT(CDlgCreateVirtualDirectory)
m_strDirectoryName = CString(strOldName);
//}}AFX_DATA_INIT
}
void CDlgCreateVirtualDirectory::DoDataExchange(CDataExchange* pDX)
{
INDEX i;
CDialog::DoDataExchange(pDX);
// if dialog is receiving data
if( pDX->m_bSaveAndValidate == FALSE)
{
}
//{{AFX_DATA_MAP(CDlgCreateVirtualDirectory)
DDX_Control(pDX, IDC_DIRECTORY_ICON_LIST, m_DirectoryIconsList);
DDX_Text(pDX, IDC_EDIT1, m_strDirectoryName);
DDV_MaxChars(pDX, m_strDirectoryName, 32);
//}}AFX_DATA_MAP
// if dialog gives data
if( pDX->m_bSaveAndValidate != FALSE)
{
m_strCreatedDirName = CTString( CStringA(m_strDirectoryName));
m_iSelectedIconType = 0;
// Now set selected directory icon type
for( i=0; i<m_DirectoryIconsList.GetItemCount(); i++)
{
if( m_DirectoryIconsList.GetItemState( i, LVIS_SELECTED) != 0)
{
m_iSelectedIconType = i;
break;
}
}
}
}
BEGIN_MESSAGE_MAP(CDlgCreateVirtualDirectory, CDialog)
//{{AFX_MSG_MAP(CDlgCreateVirtualDirectory)
ON_NOTIFY(NM_DBLCLK, IDC_DIRECTORY_ICON_LIST, OnDblclkDirectoryIconList)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgCreateVirtualDirectory message handlers
BOOL CDlgCreateVirtualDirectory::OnInitDialog()
{
CDialog::OnInitDialog();
SetWindowText( CString(m_strTitle));
m_IconsImageList.Create( IDB_DIRECTORY_ICONS, 16, 1, CLR_NONE);
m_DirectoryIconsList.SetImageList( &m_IconsImageList, LVSIL_SMALL);
for( INDEX i=0; i<NO_OF_ICONS; i++)
{
m_DirectoryIconsList.InsertItem( i, L"", i);
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgCreateVirtualDirectory::OnDblclkDirectoryIconList(NMHDR* pNMHDR, LRESULT* pResult)
{
UpdateData();
if( m_strCreatedDirName != "")
EndDialog(IDOK);
*pResult = 0;
}