diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp b/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp
index c0b6758147..c6ac85d314 100644
--- a/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp
+++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.cpp
@@ -513,7 +513,6 @@ namespace ScriptCanvasEditor
m_editorToolbar->AddCustomAction(m_createFunctionOutput);
connect(m_createFunctionOutput, &QToolButton::clicked, this, &MainWindow::CreateFunctionOutput);
-
{
m_validateGraphToolButton = new QToolButton();
m_validateGraphToolButton->setToolTip("Will run a validation check on the current graph and report any warnings/errors discovered.");
@@ -523,6 +522,18 @@ namespace ScriptCanvasEditor
m_editorToolbar->AddCustomAction(m_validateGraphToolButton);
+ // Screenshot
+ {
+ m_takeScreenshot = new QToolButton();
+ m_takeScreenshot->setToolTip("Captures a full resolution screenshot of the entire graph or selected nodes into the clipboard");
+ m_takeScreenshot->setIcon(QIcon(":/ScriptCanvasEditorResources/Resources/scriptcanvas_screenshot.png"));
+ m_takeScreenshot->setEnabled(false);
+ }
+
+ m_editorToolbar->AddCustomAction(m_takeScreenshot);
+ connect(m_takeScreenshot, &QToolButton::clicked, this, &MainWindow::OnScreenshot);
+
+
connect(m_validateGraphToolButton, &QToolButton::clicked, this, &MainWindow::OnValidateCurrentGraph);
m_layout->addWidget(m_editorToolbar);
@@ -3211,6 +3222,7 @@ namespace ScriptCanvasEditor
m_createFunctionOutput->setEnabled(enabled);
m_createFunctionInput->setEnabled(enabled);
+ m_takeScreenshot->setEnabled(enabled);
// File Menu
ui->action_Close->setEnabled(enabled);
diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.h b/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.h
index 75c798a0d3..d05792c4ec 100644
--- a/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.h
+++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/MainWindow.h
@@ -648,6 +648,7 @@ namespace ScriptCanvasEditor
QToolButton* m_createFunctionInput = nullptr;
QToolButton* m_createFunctionOutput = nullptr;
+ QToolButton* m_takeScreenshot = nullptr;
QToolButton* m_createScriptCanvas = nullptr;
diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Resources/scriptcanvas_screenshot.png b/Gems/ScriptCanvas/Code/Editor/View/Windows/Resources/scriptcanvas_screenshot.png
new file mode 100644
index 0000000000..7daa11d945
--- /dev/null
+++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Resources/scriptcanvas_screenshot.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ef1d048b1ef82137424b6c346e7f87f156e97402ecc89eca8c0dc0e2b6acc395
+size 400
diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/ScriptCanvasEditorResources.qrc b/Gems/ScriptCanvas/Code/Editor/View/Windows/ScriptCanvasEditorResources.qrc
index be90d229dc..9244f71ca3 100644
--- a/Gems/ScriptCanvas/Code/Editor/View/Windows/ScriptCanvasEditorResources.qrc
+++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/ScriptCanvasEditorResources.qrc
@@ -34,6 +34,7 @@
Resources/scriptcanvas_nodes.png
Resources/scriptcanvas_outliner.png
Resources/scriptcanvas_properties.png
+ Resources/scriptcanvas_screenshot.png
Resources/scriptcanvas_variables.png
Resources/settings_icon.png
Resources/settings_dropdown_icon.png