Files
o3de/Gems/GraphCanvas/Code/Source/Translation/TranslationBuilder.cpp
T
amzn-mgwynn ce955715a8 Merge pull request #1543 from aws-lumberyard-dev/native-ui-changes
More specific component error messaging and modes for native UI to prevent blocking dialog in some applications
2021-06-25 19:18:03 -04:00

60 lines
2.1 KiB
C++

/*
* Copyright (c) Contributors to the Open 3D Engine Project
*
* SPDX-License-Identifier: Apache-2.0 OR MIT
*
*/
#include "TranslationBuilder.h"
#include "TranslationAsset.h"
namespace GraphCanvas
{
constexpr const char* s_graphCanvasTranslationBuilderName = "GraphCanvasTranslationBuilder";
AZ::Uuid TranslationAssetWorker::GetUUID()
{
return AZ::Uuid::CreateString("{459EF910-CAAF-465A-BA19-C91979DA5729}");
}
const char* TranslationAssetWorker::GetFingerprintString() const
{
if (m_fingerprintString.empty())
{
// compute it the first time
const AZStd::string runtimeAssetTypeId = azrtti_typeid<TranslationAsset>().ToString<AZStd::string>();
m_fingerprintString = AZStd::string::format("%i%s", GetVersionNumber(), runtimeAssetTypeId.c_str());
}
return m_fingerprintString.c_str();
}
void TranslationAssetWorker::Activate()
{
// Use AssetCatalog service to register ScriptCanvas asset type and extension
AZ::Data::AssetType assetType(azrtti_typeid<TranslationAsset>());
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequests::AddAssetType, assetType);
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequests::EnableCatalogForAsset, assetType);
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequests::AddExtension, TranslationAsset::GetFileFilter());
m_assetHandler = AZStd::make_unique<TranslationAssetHandler>();
if (!AZ::Data::AssetManager::Instance().GetHandler(assetType))
{
AZ::Data::AssetManager::Instance().RegisterHandler(m_assetHandler.get(), assetType);
}
}
void TranslationAssetWorker::Deactivate()
{
if (AZ::Data::AssetManager::Instance().GetHandler(AZ::Data::AssetType{ azrtti_typeid<TranslationAsset>() }))
{
AZ::Data::AssetManager::Instance().UnregisterHandler(m_assetHandler.get());
}
}
void TranslationAssetWorker::ShutDown()
{
m_isShuttingDown = true;
}
}