| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- /*
- * Copyright (c) Contributors to the Open 3D Engine Project.
- * For complete copyright and license terms please see the LICENSE at the root of this distribution.
- *
- * SPDX-License-Identifier: Apache-2.0 OR MIT
- *
- */
- #pragma once
- #if !defined(Q_MOC_RUN)
- #include <AtomToolsFramework/Document/AtomToolsDocumentInspector.h>
- #include <AtomToolsFramework/Document/AtomToolsDocumentMainWindow.h>
- #include <AtomToolsFramework/EntityPreviewViewport/EntityPreviewViewportSettingsInspector.h>
- #include <AtomToolsFramework/EntityPreviewViewport/EntityPreviewViewportToolBar.h>
- #include <AtomToolsFramework/EntityPreviewViewport/EntityPreviewViewportWidget.h>
- #include <AzCore/Component/ComponentApplicationBus.h>
- #endif
- namespace MaterialEditor
- {
- //! MaterialEditorMainWindow is the main class. Its responsibility is limited to initializing and connecting
- //! its panels, managing selection of assets, and performing high-level actions like saving. It contains...
- //! 2) MaterialViewport - The user can see the selected Material applied to a model.
- //! 3) MaterialPropertyInspector - The user edits the properties of the selected Material.
- class MaterialEditorMainWindow : public AtomToolsFramework::AtomToolsDocumentMainWindow
- {
- Q_OBJECT
- public:
- AZ_CLASS_ALLOCATOR(MaterialEditorMainWindow, AZ::SystemAllocator);
- using Base = AtomToolsFramework::AtomToolsDocumentMainWindow;
- MaterialEditorMainWindow(const AZ::Crc32& toolId, QWidget* parent = 0);
- protected:
- // AtomToolsFramework::AtomToolsMainWindowRequestBus::Handler overrides...
- void ResizeViewportRenderTarget(uint32_t width, uint32_t height) override;
- void LockViewportRenderTargetSize(uint32_t width, uint32_t height) override;
- void UnlockViewportRenderTargetSize() override;
- // AtomToolsFramework::AtomToolsDocumentNotificationBus::Handler overrides...
- void OnDocumentOpened(const AZ::Uuid& documentId) override;
- // AtomToolsFramework::AtomToolsDocumentMainWindow overrides...
- AZStd::string GetHelpUrl() const override;
- AtomToolsFramework::AtomToolsDocumentInspector* m_documentInspector = {};
- AtomToolsFramework::EntityPreviewViewportSettingsInspector* m_viewportSettingsInspector = {};
- AtomToolsFramework::EntityPreviewViewportToolBar* m_toolBar = {};
- AtomToolsFramework::EntityPreviewViewportWidget* m_materialViewport = {};
- };
- } // namespace MaterialEditor
|