123
This commit is contained in:
97
Editor/Prefabs/PrefabManager.cpp
Normal file
97
Editor/Prefabs/PrefabManager.cpp
Normal file
@@ -0,0 +1,97 @@
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Crytek Engine Source File.
|
||||
// Copyright (C), Crytek Studios, 2002.
|
||||
// -------------------------------------------------------------------------
|
||||
// File name: particlemanager.cpp
|
||||
// Version: v1.00
|
||||
// Created: 17/6/2003 by Timur.
|
||||
// Compilers: Visual Studio.NET
|
||||
// Description:
|
||||
// -------------------------------------------------------------------------
|
||||
// History:
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include "StdAfx.h"
|
||||
#include "PrefabManager.h"
|
||||
|
||||
#include "PrefabItem.h"
|
||||
#include "PrefabLibrary.h"
|
||||
|
||||
#include "GameEngine.h"
|
||||
#include "GameExporter.h"
|
||||
|
||||
#include "DataBaseDialog.h"
|
||||
#include "PrefabDialog.h"
|
||||
|
||||
#define PREFABS_LIBS_PATH "Editor\\Prefabs\\"
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// CPrefabManager implementation.
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CPrefabManager::CPrefabManager()
|
||||
{
|
||||
m_libsPath = PREFABS_LIBS_PATH;
|
||||
|
||||
m_pLevelLibrary = (CBaseLibrary*)AddLibrary( "Level" );
|
||||
m_pLevelLibrary->SetLevelLibrary( true );
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CPrefabManager::~CPrefabManager()
|
||||
{
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
void CPrefabManager::ClearAll()
|
||||
{
|
||||
CBaseLibraryManager::ClearAll();
|
||||
|
||||
m_pLevelLibrary = (CBaseLibrary*)AddLibrary( "Level" );
|
||||
m_pLevelLibrary->SetLevelLibrary( true );
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CBaseLibraryItem* CPrefabManager::MakeNewItem()
|
||||
{
|
||||
return new CPrefabItem;
|
||||
}
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CBaseLibrary* CPrefabManager::MakeNewLibrary()
|
||||
{
|
||||
return new CPrefabLibrary(this);
|
||||
}
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CString CPrefabManager::GetRootNodeName()
|
||||
{
|
||||
return "PrefabsLibrary";
|
||||
}
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CString CPrefabManager::GetLibsPath()
|
||||
{
|
||||
return m_libsPath;
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
void CPrefabManager::Serialize( XmlNodeRef &node,bool bLoading )
|
||||
{
|
||||
CBaseLibraryManager::Serialize( node,bLoading );
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
void CPrefabManager::Export( XmlNodeRef &node )
|
||||
{
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CPrefabItem* CPrefabManager::MakeFromSelection()
|
||||
{
|
||||
CBaseLibraryDialog *dlg = GetIEditor()->OpenDataBaseLibrary( EDB_PREFAB_LIBRARY );
|
||||
if (dlg && dlg->IsKindOf(RUNTIME_CLASS(CPrefabDialog)))
|
||||
{
|
||||
CPrefabDialog *pPrefabDialog = (CPrefabDialog*)dlg;
|
||||
return pPrefabDialog->GetPrefabFromSelection();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user