|
|
|
|
@ -9,10 +9,47 @@
|
|
|
|
|
#include <Atom/RPI.Edit/Common/AssetUtils.h>
|
|
|
|
|
#include <AtomToolsFramework/Document/AtomToolsDocument.h>
|
|
|
|
|
#include <AtomToolsFramework/Document/AtomToolsDocumentNotificationBus.h>
|
|
|
|
|
#include <AzCore/RTTI/BehaviorContext.h>
|
|
|
|
|
#include <AzCore/Serialization/EditContext.h>
|
|
|
|
|
#include <AzCore/Serialization/SerializeContext.h>
|
|
|
|
|
#include <AzToolsFramework/SourceControl/SourceControlAPI.h>
|
|
|
|
|
|
|
|
|
|
namespace AtomToolsFramework
|
|
|
|
|
{
|
|
|
|
|
void AtomToolsDocument::Reflect(AZ::ReflectContext* context)
|
|
|
|
|
{
|
|
|
|
|
if (auto serialize = azrtti_cast<AZ::SerializeContext*>(context))
|
|
|
|
|
{
|
|
|
|
|
serialize->Class<AtomToolsDocument>()
|
|
|
|
|
->Version(0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (auto behaviorContext = azrtti_cast<AZ::BehaviorContext*>(context))
|
|
|
|
|
{
|
|
|
|
|
behaviorContext->EBus<AtomToolsDocumentRequestBus>("AtomToolsDocumentRequestBus")
|
|
|
|
|
->Attribute(AZ::Script::Attributes::Scope, AZ::Script::Attributes::ScopeFlags::Common)
|
|
|
|
|
->Attribute(AZ::Script::Attributes::Category, "Editor")
|
|
|
|
|
->Attribute(AZ::Script::Attributes::Module, "atomtools")
|
|
|
|
|
->Event("GetAbsolutePath", &AtomToolsDocumentRequestBus::Events::GetAbsolutePath)
|
|
|
|
|
->Event("Open", &AtomToolsDocumentRequestBus::Events::Open)
|
|
|
|
|
->Event("Reopen", &AtomToolsDocumentRequestBus::Events::Reopen)
|
|
|
|
|
->Event("Close", &AtomToolsDocumentRequestBus::Events::Close)
|
|
|
|
|
->Event("Save", &AtomToolsDocumentRequestBus::Events::Save)
|
|
|
|
|
->Event("SaveAsChild", &AtomToolsDocumentRequestBus::Events::SaveAsChild)
|
|
|
|
|
->Event("SaveAsCopy", &AtomToolsDocumentRequestBus::Events::SaveAsCopy)
|
|
|
|
|
->Event("IsOpen", &AtomToolsDocumentRequestBus::Events::IsOpen)
|
|
|
|
|
->Event("IsModified", &AtomToolsDocumentRequestBus::Events::IsModified)
|
|
|
|
|
->Event("IsSavable", &AtomToolsDocumentRequestBus::Events::IsSavable)
|
|
|
|
|
->Event("CanUndo", &AtomToolsDocumentRequestBus::Events::CanUndo)
|
|
|
|
|
->Event("CanRedo", &AtomToolsDocumentRequestBus::Events::CanRedo)
|
|
|
|
|
->Event("Undo", &AtomToolsDocumentRequestBus::Events::Undo)
|
|
|
|
|
->Event("Redo", &AtomToolsDocumentRequestBus::Events::Redo)
|
|
|
|
|
->Event("BeginEdit", &AtomToolsDocumentRequestBus::Events::BeginEdit)
|
|
|
|
|
->Event("EndEdit", &AtomToolsDocumentRequestBus::Events::EndEdit)
|
|
|
|
|
;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
AtomToolsDocument::AtomToolsDocument(const AZ::Crc32& toolId)
|
|
|
|
|
: m_toolId(toolId)
|
|
|
|
|
{
|
|
|
|
|
|