@@ -476,7 +476,7 @@ namespace AtomToolsFramework
|
||||
appType.m_maskValue = AZ::ApplicationTypeQuery::Masks::Game;
|
||||
}
|
||||
|
||||
void AtomToolsApplication::OnTraceMessage([[maybe_unused]] AZStd::string_view message)
|
||||
void AtomToolsApplication::OnTraceMessage([[maybe_unused]] AZStd::string_view message)
|
||||
{
|
||||
#if defined(AZ_ENABLE_TRACING)
|
||||
AZStd::vector<AZStd::string> lines;
|
||||
|
||||
@@ -25,6 +25,8 @@ namespace AtomToolsFramework
|
||||
m_statusBar->setObjectName("StatusBar");
|
||||
statusBar()->addPermanentWidget(m_statusBar, 1);
|
||||
|
||||
m_centralWidget = new QWidget(this);
|
||||
|
||||
AtomToolsMainWindowRequestBus::Handler::BusConnect();
|
||||
}
|
||||
|
||||
@@ -109,11 +111,26 @@ namespace AtomToolsFramework
|
||||
|
||||
void AtomToolsMainWindow::CreateTabBar()
|
||||
{
|
||||
m_centralWidget = new QWidget(this);
|
||||
m_tabWidget = new AzQtComponents::TabWidget(m_centralWidget);
|
||||
m_tabWidget->setObjectName("TabWidget");
|
||||
m_tabWidget->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Preferred);
|
||||
m_tabWidget->setContentsMargins(0, 0, 0, 0);
|
||||
|
||||
// The tab bar should only be visible if it has active documents
|
||||
m_tabWidget->setVisible(false);
|
||||
m_tabWidget->setTabBarAutoHide(false);
|
||||
m_tabWidget->setMovable(true);
|
||||
m_tabWidget->setTabsClosable(true);
|
||||
m_tabWidget->setUsesScrollButtons(true);
|
||||
|
||||
// Add context menu for right-clicking on tabs
|
||||
m_tabWidget->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu);
|
||||
connect(
|
||||
m_tabWidget, &QWidget::customContextMenuRequested, this,
|
||||
[this]()
|
||||
{
|
||||
OpenTabContextMenu();
|
||||
});
|
||||
}
|
||||
|
||||
void AtomToolsMainWindow::AddTabForDocumentId(const AZ::Uuid& documentId)
|
||||
|
||||
@@ -38,8 +38,8 @@
|
||||
#include <AzToolsFramework/UI/PropertyEditor/PropertyManagerComponent.h>
|
||||
#include <AzToolsFramework/SourceControl/SourceControlAPI.h>
|
||||
|
||||
#include <Source/MaterialEditorApplication.h>
|
||||
#include <MaterialEditor_Traits_Platform.h>
|
||||
#include <MaterialEditorApplication.h>
|
||||
|
||||
AZ_PUSH_DISABLE_WARNING(4251 4800, "-Wunknown-warning-option") // disable warnings spawned by QT
|
||||
#include <QMessageBox>
|
||||
|
||||
@@ -488,19 +488,6 @@ namespace MaterialEditor
|
||||
{
|
||||
Base::CreateTabBar();
|
||||
|
||||
// The tab bar should only be visible if it has active documents
|
||||
m_tabWidget->setVisible(false);
|
||||
m_tabWidget->setTabBarAutoHide(false);
|
||||
m_tabWidget->setMovable(true);
|
||||
m_tabWidget->setTabsClosable(true);
|
||||
m_tabWidget->setUsesScrollButtons(true);
|
||||
|
||||
// Add context menu for right-clicking on tabs
|
||||
m_tabWidget->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu);
|
||||
connect(m_tabWidget, &QWidget::customContextMenuRequested, this, [this]() {
|
||||
OpenTabContextMenu();
|
||||
});
|
||||
|
||||
// This signal will be triggered whenever a tab is added, removed, selected, clicked, dragged
|
||||
// When the last tab is removed tabIndex will be -1 and the document ID will be null
|
||||
// This should automatically clear the active document
|
||||
|
||||
@@ -14,18 +14,9 @@
|
||||
#include <AzCore/Memory/SystemAllocator.h>
|
||||
|
||||
AZ_PUSH_DISABLE_WARNING(4251 4800, "-Wunknown-warning-option") // disable warnings spawned by QT
|
||||
#include <AzQtComponents/Components/DockMainWindow.h>
|
||||
#include <AzQtComponents/Components/FancyDocking.h>
|
||||
#include <AzQtComponents/Components/StyledDockWidget.h>
|
||||
#include <AzQtComponents/Components/Widgets/TabWidget.h>
|
||||
|
||||
#include <Viewport/MaterialViewportWidget.h>
|
||||
#include <Window/StatusBar/StatusBarWidget.h>
|
||||
#include <Window/ToolBar/MaterialEditorToolBar.h>
|
||||
|
||||
#include <QMenuBar>
|
||||
#include <QStatusBar>
|
||||
#include <QToolBar>
|
||||
#include <Window/ToolBar/MaterialEditorToolBar.h>r>
|
||||
AZ_POP_DISABLE_WARNING
|
||||
#endif
|
||||
|
||||
|
||||
+15
-19
@@ -6,7 +6,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include <Atom/Window/MaterialEditorWindowSettings.h>
|
||||
#include <AtomToolsFramework/Window/AtomToolsMainWindowFactoryRequestBus.h>
|
||||
#include <AtomToolsFramework/Window/AtomToolsMainWindowRequestBus.h>
|
||||
#include <AzCore/RTTI/BehaviorContext.h>
|
||||
#include <AzCore/Serialization/EditContext.h>
|
||||
#include <AzCore/Serialization/SerializeContext.h>
|
||||
@@ -17,14 +18,9 @@
|
||||
#include <Window/MaterialEditorWindow.h>
|
||||
#include <Window/MaterialEditorWindowComponent.h>
|
||||
#include <Window/ViewportSettingsInspector/ViewportSettingsInspector.h>
|
||||
#include <AtomToolsFramework/Window/AtomToolsMainWindowRequestBus.h>
|
||||
|
||||
|
||||
namespace MaterialEditor
|
||||
{
|
||||
using FactoryRequestBus = AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus;
|
||||
using RequestBus = AtomToolsFramework::AtomToolsMainWindowRequestBus;
|
||||
|
||||
void MaterialEditorWindowComponent::Reflect(AZ::ReflectContext* context)
|
||||
{
|
||||
MaterialEditorWindowSettings::Reflect(context);
|
||||
@@ -37,25 +33,25 @@ namespace MaterialEditor
|
||||
|
||||
if (AZ::BehaviorContext* behaviorContext = azrtti_cast<AZ::BehaviorContext*>(context))
|
||||
{
|
||||
behaviorContext->EBus<FactoryRequestBus>("MaterialEditorWindowFactoryRequestBus")
|
||||
behaviorContext->EBus<AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus>("MaterialEditorWindowAtomToolsFramework::AtomToolsMainWindowFactoryRequestBus")
|
||||
->Attribute(AZ::Script::Attributes::Scope, AZ::Script::Attributes::ScopeFlags::Common)
|
||||
->Attribute(AZ::Script::Attributes::Category, "Editor")
|
||||
->Attribute(AZ::Script::Attributes::Module, "materialeditor")
|
||||
->Event("CreateMaterialEditorWindow", &FactoryRequestBus::Events::CreateMainWindow)
|
||||
->Event("DestroyMaterialEditorWindow", &FactoryRequestBus::Events::DestroyMainWindow)
|
||||
->Event("CreateMaterialEditorWindow", &AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Events::CreateMainWindow)
|
||||
->Event("DestroyMaterialEditorWindow", &AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Events::DestroyMainWindow)
|
||||
;
|
||||
|
||||
behaviorContext->EBus<RequestBus>("MaterialEditorWindowRequestBus")
|
||||
behaviorContext->EBus<AtomToolsFramework::AtomToolsMainWindowRequestBus>("MaterialEditorWindowRequestBus")
|
||||
->Attribute(AZ::Script::Attributes::Scope, AZ::Script::Attributes::ScopeFlags::Common)
|
||||
->Attribute(AZ::Script::Attributes::Category, "Editor")
|
||||
->Attribute(AZ::Script::Attributes::Module, "materialeditor")
|
||||
->Event("ActivateWindow", &RequestBus::Events::ActivateWindow)
|
||||
->Event("SetDockWidgetVisible", &RequestBus::Events::SetDockWidgetVisible)
|
||||
->Event("IsDockWidgetVisible", &RequestBus::Events::IsDockWidgetVisible)
|
||||
->Event("GetDockWidgetNames", &RequestBus::Events::GetDockWidgetNames)
|
||||
->Event("ResizeViewportRenderTarget", &RequestBus::Events::ResizeViewportRenderTarget)
|
||||
->Event("LockViewportRenderTargetSize", &RequestBus::Events::LockViewportRenderTargetSize)
|
||||
->Event("UnlockViewportRenderTargetSize", &RequestBus::Events::UnlockViewportRenderTargetSize)
|
||||
->Event("ActivateWindow", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::ActivateWindow)
|
||||
->Event("SetDockWidgetVisible", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::SetDockWidgetVisible)
|
||||
->Event("IsDockWidgetVisible", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::IsDockWidgetVisible)
|
||||
->Event("GetDockWidgetNames", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::GetDockWidgetNames)
|
||||
->Event("ResizeViewportRenderTarget", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::ResizeViewportRenderTarget)
|
||||
->Event("LockViewportRenderTargetSize", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::LockViewportRenderTargetSize)
|
||||
->Event("UnlockViewportRenderTargetSize", &AtomToolsFramework::AtomToolsMainWindowRequestBus::Events::UnlockViewportRenderTargetSize)
|
||||
;
|
||||
}
|
||||
}
|
||||
@@ -84,13 +80,13 @@ namespace MaterialEditor
|
||||
void MaterialEditorWindowComponent::Activate()
|
||||
{
|
||||
AzToolsFramework::EditorWindowRequestBus::Handler::BusConnect();
|
||||
FactoryRequestBus::Handler::BusConnect();
|
||||
AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Handler::BusConnect();
|
||||
AzToolsFramework::SourceControlConnectionRequestBus::Broadcast(&AzToolsFramework::SourceControlConnectionRequests::EnableSourceControl, true);
|
||||
}
|
||||
|
||||
void MaterialEditorWindowComponent::Deactivate()
|
||||
{
|
||||
FactoryRequestBus::Handler::BusDisconnect();
|
||||
AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Handler::BusDisconnect();
|
||||
AzToolsFramework::EditorWindowRequestBus::Handler::BusDisconnect();
|
||||
|
||||
m_window.reset();
|
||||
|
||||
@@ -39,9 +39,6 @@ set(FILES
|
||||
Source/Window/PerformanceMonitor/PerformanceMonitorWidget.cpp
|
||||
Source/Window/PerformanceMonitor/PerformanceMonitorWidget.h
|
||||
Source/Window/PerformanceMonitor/PerformanceMonitorWidget.ui
|
||||
Source/Window/StatusBar/StatusBarWidget.cpp
|
||||
Source/Window/StatusBar/StatusBarWidget.h
|
||||
Source/Window/StatusBar/StatusBarWidget.ui
|
||||
Source/Window/ToolBar/MaterialEditorToolBar.h
|
||||
Source/Window/ToolBar/MaterialEditorToolBar.cpp
|
||||
Source/Window/ToolBar/ModelPresetComboBox.h
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@
|
||||
#include <AzToolsFramework/UI/UICore/QWidgetSavedState.h>
|
||||
|
||||
#include <ShaderManagementConsole_Traits_Platform.h>
|
||||
#include <Source/ShaderManagementConsoleApplication.h>
|
||||
#include <ShaderManagementConsoleApplication.h>
|
||||
|
||||
AZ_PUSH_DISABLE_WARNING(4251 4800, "-Wunknown-warning-option") // disable warnings spawned by QT
|
||||
#include <QMessageBox>
|
||||
|
||||
-13
@@ -284,19 +284,6 @@ namespace ShaderManagementConsole
|
||||
{
|
||||
Base::CreateTabBar();
|
||||
|
||||
// The tab bar should only be visible if it has active documents
|
||||
m_tabWidget->setVisible(false);
|
||||
m_tabWidget->setTabBarAutoHide(false);
|
||||
m_tabWidget->setMovable(true);
|
||||
m_tabWidget->setTabsClosable(true);
|
||||
m_tabWidget->setUsesScrollButtons(true);
|
||||
|
||||
// Add context menu for right-clicking on tabs
|
||||
m_tabWidget->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu);
|
||||
connect(m_tabWidget, &QWidget::customContextMenuRequested, this, [this]() {
|
||||
OpenTabContextMenu();
|
||||
});
|
||||
|
||||
// This signal will be triggered whenever a tab is added, removed, selected, clicked, dragged
|
||||
// When the last tab is removed tabIndex will be -1 and the document ID will be null
|
||||
// This should automatically clear the active document
|
||||
|
||||
-7
@@ -17,17 +17,10 @@
|
||||
#include <AtomToolsFramework/Window/AtomToolsMainWindow.h>
|
||||
|
||||
AZ_PUSH_DISABLE_WARNING(4251 4800, "-Wunknown-warning-option") // disable warnings spawned by QT
|
||||
#include <AzQtComponents/Components/DockMainWindow.h>
|
||||
#include <AzQtComponents/Components/FancyDocking.h>
|
||||
#include <AzQtComponents/Components/StyledDockWidget.h>
|
||||
#include <AzQtComponents/Components/Widgets/TabWidget.h>
|
||||
|
||||
#include <Window/ShaderManagementConsoleBrowserWidget.h>
|
||||
#include <Window/ToolBar/ShaderManagementConsoleToolBar.h>
|
||||
|
||||
#include <QMenuBar>
|
||||
#include <QStandardItemModel>
|
||||
#include <QToolBar>
|
||||
AZ_POP_DISABLE_WARNING
|
||||
#endif
|
||||
|
||||
|
||||
+5
-7
@@ -34,8 +34,6 @@ AZ_POP_DISABLE_WARNING
|
||||
|
||||
namespace ShaderManagementConsole
|
||||
{
|
||||
using FactoryRequestBus = AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus;
|
||||
|
||||
void ShaderManagementConsoleWindowComponent::Reflect(AZ::ReflectContext* context)
|
||||
{
|
||||
if (AZ::SerializeContext* serialize = azrtti_cast<AZ::SerializeContext*>(context))
|
||||
@@ -46,12 +44,12 @@ namespace ShaderManagementConsole
|
||||
|
||||
if (AZ::BehaviorContext* behaviorContext = azrtti_cast<AZ::BehaviorContext*>(context))
|
||||
{
|
||||
behaviorContext->EBus<FactoryRequestBus>("ShaderManagementConsoleWindowRequestBus")
|
||||
behaviorContext->EBus<AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus>("ShaderManagementConsoleWindowRequestBus")
|
||||
->Attribute(AZ::Script::Attributes::Scope, AZ::Script::Attributes::ScopeFlags::Automation)
|
||||
->Attribute(AZ::Script::Attributes::Category, "Editor")
|
||||
->Attribute(AZ::Script::Attributes::Module, "shadermanagementconsole")
|
||||
->Event("CreateShaderManagementConsoleWindow", &FactoryRequestBus::Events::CreateMainWindow)
|
||||
->Event("DestroyShaderManagementConsoleWindow", &FactoryRequestBus::Events::DestroyMainWindow)
|
||||
->Event("CreateShaderManagementConsoleWindow", &AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Events::CreateMainWindow)
|
||||
->Event("DestroyShaderManagementConsoleWindow", &AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Events::DestroyMainWindow)
|
||||
;
|
||||
|
||||
behaviorContext->EBus<ShaderManagementConsoleRequestBus>("ShaderManagementConsoleRequestBus")
|
||||
@@ -89,7 +87,7 @@ namespace ShaderManagementConsole
|
||||
void ShaderManagementConsoleWindowComponent::Activate()
|
||||
{
|
||||
AzToolsFramework::EditorWindowRequestBus::Handler::BusConnect();
|
||||
FactoryRequestBus::Handler::BusConnect();
|
||||
AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Handler::BusConnect();
|
||||
ShaderManagementConsoleRequestBus::Handler::BusConnect();
|
||||
AzToolsFramework::SourceControlConnectionRequestBus::Broadcast(&AzToolsFramework::SourceControlConnectionRequests::EnableSourceControl, true);
|
||||
}
|
||||
@@ -97,7 +95,7 @@ namespace ShaderManagementConsole
|
||||
void ShaderManagementConsoleWindowComponent::Deactivate()
|
||||
{
|
||||
ShaderManagementConsoleRequestBus::Handler::BusDisconnect();
|
||||
FactoryRequestBus::Handler::BusDisconnect();
|
||||
AtomToolsFramework::AtomToolsMainWindowFactoryRequestBus::Handler::BusDisconnect();
|
||||
AzToolsFramework::EditorWindowRequestBus::Handler::BusDisconnect();
|
||||
|
||||
m_window.reset();
|
||||
|
||||
Reference in New Issue
Block a user