// AliasArray.cpp: implementation of the CAliasArray class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "gmud32.h"
#include "AliasArray.h"
#include "Alias.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
IMPLEMENT_SERIAL(CAliasArray,CSelArray,1|VERSIONABLE_SCHEMA);
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CAliasArray::CAliasArray()
{
}
CAliasArray::~CAliasArray()
{
}
CSelectable *CAliasArray::CreateCopy()
{
CAliasArray *pArray = new CAliasArray;
for(int loop=0;loop<GetSize();loop++)
pArray->Add(Get(loop)->CreateCopy());
pArray->SetName(GetName());
return pArray;
}
void CAliasArray::Serialize(CArchive &ar)
{
CSelArray::Serialize(ar);
}
CString CAliasArray::CheckAliases(CString sInput)
{
for(int loop=0;loop<GetSize();loop++)
{
CString sAlias = Get(loop)->GetName();
if(strnicmp(sAlias,sInput,sAlias.GetLength())==0 && (sAlias.GetLength()==sInput.GetLength() || isspace(sInput[sAlias.GetLength()])))
{
sInput = ((CAlias *)Get(loop))->m_sAliasOutput+sInput.Mid(sAlias.GetLength());
break;
}
}
return sInput;
}