+7
@@ -16,6 +16,7 @@
|
||||
#include <AzCore/UserSettings/UserSettingsProvider.h>
|
||||
|
||||
#include <AzFramework/Application/Application.h>
|
||||
#include <AzFramework/Asset/AssetCatalogBus.h>
|
||||
#include <AzFramework/Asset/AssetSystemBus.h>
|
||||
|
||||
#include <AzQtComponents/Application/AzQtApplication.h>
|
||||
@@ -35,6 +36,7 @@ namespace AtomToolsFramework
|
||||
, public AzQtComponents::AzQtApplication
|
||||
, protected AzToolsFramework::AssetDatabase::AssetDatabaseRequestsBus::Handler
|
||||
, protected AzFramework::AssetSystemStatusBus::Handler
|
||||
, protected AzFramework::AssetCatalogEventBus::Handler
|
||||
, protected AzToolsFramework::EditorPythonConsoleNotificationBus::Handler
|
||||
, protected AZ::UserSettingsOwnerRequestBus::Handler
|
||||
, protected AtomToolsMainWindowNotificationBus::Handler
|
||||
@@ -67,6 +69,11 @@ namespace AtomToolsFramework
|
||||
void OnMainWindowClosing() override;
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// AzFramework::AssetCatalogEventBus::Handler overrides ...
|
||||
void OnCatalogLoaded(const char* catalogFile) override;
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// AssetDatabaseRequestsBus::Handler overrides...
|
||||
bool GetAssetDatabaseLocation(AZStd::string& result) override;
|
||||
|
||||
+17
-9
@@ -12,6 +12,7 @@
|
||||
#include <AtomToolsFramework/Window/AtomToolsMainWindowFactoryRequestBus.h>
|
||||
#include <AtomToolsFramework/Window/AtomToolsMainWindowRequestBus.h>
|
||||
|
||||
#include <AzCore/Component/TickBus.h>
|
||||
#include <AzCore/IO/Path/Path.h>
|
||||
#include <AzCore/Settings/SettingsRegistryMergeUtils.h>
|
||||
#include <AzCore/Utils/Utils.h>
|
||||
@@ -91,6 +92,7 @@ namespace AtomToolsFramework
|
||||
AtomToolsMainWindowNotificationBus::Handler::BusDisconnect();
|
||||
AzToolsFramework::AssetDatabase::AssetDatabaseRequestsBus::Handler::BusDisconnect();
|
||||
AzToolsFramework::EditorPythonConsoleNotificationBus::Handler::BusDisconnect();
|
||||
AzFramework::AssetCatalogEventBus::Handler::BusDisconnect();
|
||||
}
|
||||
|
||||
void AtomToolsApplication::CreateReflectionManager()
|
||||
@@ -173,16 +175,11 @@ namespace AtomToolsFramework
|
||||
AzToolsFramework::AssetBrowser::AssetDatabaseLocationNotificationBus::Broadcast(
|
||||
&AzToolsFramework::AssetBrowser::AssetDatabaseLocationNotifications::OnDatabaseInitialized);
|
||||
|
||||
AzFramework::AssetCatalogEventBus::Handler::BusConnect();
|
||||
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequestBus::Events::LoadCatalog, "@assets@/assetcatalog.xml");
|
||||
|
||||
AZ::RPI::RPISystemInterface::Get()->InitializeSystemAssets();
|
||||
|
||||
LoadSettings();
|
||||
|
||||
AtomToolsMainWindowNotificationBus::Handler::BusConnect();
|
||||
|
||||
AtomToolsMainWindowFactoryRequestBus::Broadcast(&AtomToolsMainWindowFactoryRequestBus::Handler::CreateMainWindow);
|
||||
|
||||
auto editorPythonEventsInterface = AZ::Interface<AzToolsFramework::EditorPythonEventsInterface>::Get();
|
||||
if (editorPythonEventsInterface)
|
||||
{
|
||||
@@ -192,9 +189,6 @@ namespace AtomToolsFramework
|
||||
editorPythonEventsInterface->StartPython();
|
||||
}
|
||||
|
||||
// Delay execution of commands and scripts post initialization
|
||||
QTimer::singleShot(0, [this]() { ProcessCommandLine(m_commandLine); });
|
||||
|
||||
m_timer.start();
|
||||
}
|
||||
|
||||
@@ -203,12 +197,26 @@ namespace AtomToolsFramework
|
||||
ExitMainLoop();
|
||||
}
|
||||
|
||||
void AtomToolsApplication::OnCatalogLoaded(const char* catalogFile)
|
||||
{
|
||||
AZ_UNUSED(catalogFile);
|
||||
|
||||
// Delay execution of commands and scripts post initialization
|
||||
AZ::TickBus::QueueFunction([this]() {
|
||||
AtomToolsMainWindowFactoryRequestBus::Broadcast(&AtomToolsMainWindowFactoryRequestBus::Handler::CreateMainWindow);
|
||||
AtomToolsMainWindowNotificationBus::Handler::BusConnect();
|
||||
ProcessCommandLine(m_commandLine);
|
||||
});
|
||||
AzFramework::AssetCatalogEventBus::Handler::BusDisconnect();
|
||||
}
|
||||
|
||||
void AtomToolsApplication::Destroy()
|
||||
{
|
||||
// before modules are unloaded, destroy UI to free up any assets it cached
|
||||
AtomToolsMainWindowFactoryRequestBus::Broadcast(&AtomToolsMainWindowFactoryRequestBus::Handler::DestroyMainWindow);
|
||||
m_styleManager.reset();
|
||||
|
||||
AzFramework::AssetCatalogEventBus::Handler::BusDisconnect();
|
||||
AzToolsFramework::EditorPythonConsoleNotificationBus::Handler::BusDisconnect();
|
||||
AzToolsFramework::AssetDatabase::AssetDatabaseRequestsBus::Handler::BusDisconnect();
|
||||
AtomToolsMainWindowNotificationBus::Handler::BusDisconnect();
|
||||
|
||||
@@ -247,12 +247,10 @@ namespace MaterialEditor
|
||||
MaterialViewportNotificationBus::Handler::BusConnect();
|
||||
AZ::TickBus::Handler::BusConnect();
|
||||
AZ::TransformNotificationBus::MultiHandler::BusConnect(m_cameraEntity->GetId());
|
||||
AzFramework::WindowSystemRequestBus::Handler::BusConnect();
|
||||
}
|
||||
|
||||
MaterialViewportRenderer::~MaterialViewportRenderer()
|
||||
{
|
||||
AzFramework::WindowSystemRequestBus::Handler::BusDisconnect();
|
||||
AZ::TransformNotificationBus::MultiHandler::BusDisconnect();
|
||||
AZ::TickBus::Handler::BusDisconnect();
|
||||
AtomToolsFramework::AtomToolsDocumentNotificationBus::Handler::BusDisconnect();
|
||||
@@ -303,11 +301,6 @@ namespace MaterialEditor
|
||||
return m_viewportController;
|
||||
}
|
||||
|
||||
AzFramework::NativeWindowHandle MaterialViewportRenderer::GetDefaultWindowHandle()
|
||||
{
|
||||
return (m_windowContext) ? m_windowContext->GetWindowHandle() : nullptr;
|
||||
}
|
||||
|
||||
void MaterialViewportRenderer::OnDocumentOpened(const AZ::Uuid& documentId)
|
||||
{
|
||||
AZ::Data::Instance<AZ::RPI::Material> materialInstance;
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
#include <AtomToolsFramework/Document/AtomToolsDocumentNotificationBus.h>
|
||||
#include <AzCore/Component/TickBus.h>
|
||||
#include <AzCore/Component/TransformBus.h>
|
||||
#include <AzFramework/Windowing/WindowBus.h>
|
||||
#include <Viewport/InputController/MaterialEditorViewportInputController.h>
|
||||
|
||||
namespace AZ
|
||||
@@ -46,7 +45,6 @@ namespace MaterialEditor
|
||||
, public AtomToolsFramework::AtomToolsDocumentNotificationBus::Handler
|
||||
, public MaterialViewportNotificationBus::Handler
|
||||
, public AZ::TransformNotificationBus::MultiHandler
|
||||
, public AzFramework::WindowSystemRequestBus::Handler
|
||||
{
|
||||
public:
|
||||
AZ_CLASS_ALLOCATOR(MaterialViewportRenderer, AZ::SystemAllocator, 0);
|
||||
@@ -81,9 +79,6 @@ namespace MaterialEditor
|
||||
// AZ::TransformNotificationBus::MultiHandler overrides...
|
||||
void OnTransformChanged(const AZ::Transform&, const AZ::Transform&) override;
|
||||
|
||||
// AzFramework::WindowSystemRequestBus::Handler overrides ...
|
||||
AzFramework::NativeWindowHandle GetDefaultWindowHandle() override;
|
||||
|
||||
using DirectionalLightHandle = AZ::Render::DirectionalLightFeatureProcessorInterface::LightHandle;
|
||||
|
||||
AZ::Data::Instance<AZ::RPI::SwapChainPass> m_swapChainPass;
|
||||
|
||||
@@ -13,17 +13,18 @@
|
||||
#include <Atom/RPI.Public/ViewportContextBus.h>
|
||||
#include <Atom/RPI.Public/WindowContext.h>
|
||||
|
||||
#include <Source/Viewport/MaterialViewportRenderer.h>
|
||||
#include <Source/Viewport/MaterialViewportWidget.h>
|
||||
#include <Viewport/MaterialViewportRenderer.h>
|
||||
#include <Viewport/MaterialViewportWidget.h>
|
||||
|
||||
AZ_PUSH_DISABLE_WARNING(4251 4800, "-Wunknown-warning-option") // disable warnings spawned by QT
|
||||
AZ_PUSH_DISABLE_WARNING(4251 4800, "-Wunknow n-warning-option") // disable warnings spawned by QT
|
||||
#include <QAbstractEventDispatcher>
|
||||
#include <QWindow>
|
||||
#include "Source/Viewport/ui_MaterialViewportWidget.h"
|
||||
#include "Viewport/ui_MaterialViewportWidget.h"
|
||||
AZ_POP_DISABLE_WARNING
|
||||
|
||||
#include <AzCore/PlatformIncl.h>
|
||||
#include <AzFramework/Viewport/ViewportControllerList.h>
|
||||
#include <AzFramework/Windowing/WindowBus.h>
|
||||
|
||||
namespace Platform
|
||||
{
|
||||
@@ -45,6 +46,9 @@ namespace MaterialEditor
|
||||
dispatcher->installNativeEventFilter(this);
|
||||
}
|
||||
|
||||
AzFramework::WindowSystemNotificationBus::Broadcast(
|
||||
&AzFramework::WindowSystemNotificationBus::Events::OnWindowCreated, GetViewportContext()->GetWindowHandle());
|
||||
|
||||
// The viewport context created by AtomToolsFramework::RenderViewportWidget has no name.
|
||||
// Systems like frame capturing and post FX expect there to be a context with DefaultViewportContextName
|
||||
auto viewportContextManager = AZ::Interface<AZ::RPI::ViewportContextRequestsInterface>::Get();
|
||||
|
||||
@@ -50,7 +50,7 @@ namespace HttpRequestor
|
||||
{
|
||||
m_thread.join();
|
||||
}
|
||||
|
||||
AWSNativeSDKInit::InitializationManager::Shutdown();
|
||||
}
|
||||
|
||||
void Manager::AddRequest(Parameters && httpRequestParameters)
|
||||
|
||||
Reference in New Issue
Block a user